009_fix_usage_logs_cache_columns.sql 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. -- Ensure usage_logs cache token columns use the underscored names expected by code.
  2. -- Backfill from legacy column names if they exist.
  3. ALTER TABLE usage_logs
  4. ADD COLUMN IF NOT EXISTS cache_creation_5m_tokens INT NOT NULL DEFAULT 0;
  5. ALTER TABLE usage_logs
  6. ADD COLUMN IF NOT EXISTS cache_creation_1h_tokens INT NOT NULL DEFAULT 0;
  7. DO $$
  8. BEGIN
  9. IF EXISTS (
  10. SELECT 1
  11. FROM information_schema.columns
  12. WHERE table_schema = 'public'
  13. AND table_name = 'usage_logs'
  14. AND column_name = 'cache_creation5m_tokens'
  15. ) THEN
  16. UPDATE usage_logs
  17. SET cache_creation_5m_tokens = cache_creation5m_tokens
  18. WHERE cache_creation_5m_tokens = 0
  19. AND cache_creation5m_tokens <> 0;
  20. END IF;
  21. IF EXISTS (
  22. SELECT 1
  23. FROM information_schema.columns
  24. WHERE table_schema = 'public'
  25. AND table_name = 'usage_logs'
  26. AND column_name = 'cache_creation1h_tokens'
  27. ) THEN
  28. UPDATE usage_logs
  29. SET cache_creation_1h_tokens = cache_creation1h_tokens
  30. WHERE cache_creation_1h_tokens = 0
  31. AND cache_creation1h_tokens <> 0;
  32. END IF;
  33. END $$;