fix: remove unused imports and fix logger test isolation
- Remove unused imports (run, trackDuration, PerformanceTracker, ConfigManager, disconnectDb) flagged by ESLint - Remove unused isSlow variable in performance-monitor catch block - Add eslint-disable for require() in Playwright JS script - Fix logger-performance test flakiness by using vi.resetModules() with dynamic imports to prevent cached logger references across test files Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -22,9 +22,12 @@ function getDatabaseType(): 'mysql' | 'mssql' | 'postgres' {
|
||||
const configManager = ConfigManager.getInstance()
|
||||
const dbType = configManager.getDatabaseType()
|
||||
switch (dbType) {
|
||||
case 'sqlserver': return 'mssql'
|
||||
case 'postgresql': return 'postgres'
|
||||
default: return 'mysql'
|
||||
case 'sqlserver':
|
||||
return 'mssql'
|
||||
case 'postgresql':
|
||||
return 'postgres'
|
||||
default:
|
||||
return 'mysql'
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
|
||||
import { create, type IDatabaseService } from './index'
|
||||
import { createDialect, type SqlDialect } from './dialects'
|
||||
import { createLogger, run, getRequestId, trackDuration } from '../logger'
|
||||
import { createLogger, getRequestId, trackDuration } from '../logger'
|
||||
|
||||
const log = createLogger('DiscreteMaterialPlanDAO')
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
|
||||
import { create, type IDatabaseService } from './index'
|
||||
import { createDialect, type SqlDialect } from './dialects'
|
||||
import { createLogger, run, getRequestId, trackDuration } from '../logger'
|
||||
import { createLogger, getRequestId, trackDuration } from '../logger'
|
||||
import type {
|
||||
OperationHistoryRecord,
|
||||
BatchStats,
|
||||
@@ -202,7 +202,7 @@ export class ExtractorOperationHistoryDAO {
|
||||
`
|
||||
const params = [status, batchId]
|
||||
|
||||
const result = await trackDuration(async () => await dbService.query(sqlString, params), {
|
||||
await trackDuration(async () => await dbService.query(sqlString, params), {
|
||||
operationName: 'ExtractorOperationHistoryDAO.updateBatchStatus',
|
||||
context: { tableName, operationType: 'UPDATE', batchId }
|
||||
})
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
|
||||
import { create, type IDatabaseService } from './index'
|
||||
import { createDialect, type SqlDialect } from './dialects'
|
||||
import { createLogger, run, getRequestId, trackDuration } from '../logger'
|
||||
import { createLogger, getRequestId, trackDuration } from '../logger'
|
||||
|
||||
const log = createLogger('MaterialsToBeDeletedDAO')
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
|
||||
import { create, type IDatabaseService } from './index'
|
||||
import { createDialect, type SqlDialect } from './dialects'
|
||||
import { createLogger, run, getRequestId, trackDuration } from '../logger'
|
||||
import { createLogger, getRequestId, trackDuration } from '../logger'
|
||||
|
||||
const log = createLogger('MaterialsTypeToBeDeletedDAO')
|
||||
|
||||
|
||||
@@ -18,37 +18,123 @@ export type { PostgreSqlConfig } from '../../types/database.types'
|
||||
*/
|
||||
const SQL_KEYWORDS = new Set([
|
||||
// DML
|
||||
'SELECT', 'FROM', 'WHERE', 'AND', 'OR', 'NOT', 'IN', 'IS', 'NULL',
|
||||
'INSERT', 'INTO', 'VALUES', 'UPDATE', 'SET', 'DELETE',
|
||||
'SELECT',
|
||||
'FROM',
|
||||
'WHERE',
|
||||
'AND',
|
||||
'OR',
|
||||
'NOT',
|
||||
'IN',
|
||||
'IS',
|
||||
'NULL',
|
||||
'INSERT',
|
||||
'INTO',
|
||||
'VALUES',
|
||||
'UPDATE',
|
||||
'SET',
|
||||
'DELETE',
|
||||
// Ordering & limiting
|
||||
'ORDER', 'BY', 'ASC', 'DESC', 'LIMIT', 'OFFSET',
|
||||
'FETCH', 'NEXT', 'ROWS', 'ONLY',
|
||||
'ORDER',
|
||||
'BY',
|
||||
'ASC',
|
||||
'DESC',
|
||||
'LIMIT',
|
||||
'OFFSET',
|
||||
'FETCH',
|
||||
'NEXT',
|
||||
'ROWS',
|
||||
'ONLY',
|
||||
// Joins
|
||||
'JOIN', 'LEFT', 'RIGHT', 'INNER', 'OUTER', 'CROSS', 'FULL', 'ON',
|
||||
'JOIN',
|
||||
'LEFT',
|
||||
'RIGHT',
|
||||
'INNER',
|
||||
'OUTER',
|
||||
'CROSS',
|
||||
'FULL',
|
||||
'ON',
|
||||
// Set operations
|
||||
'UNION', 'ALL', 'INTERSECT', 'EXCEPT',
|
||||
'UNION',
|
||||
'ALL',
|
||||
'INTERSECT',
|
||||
'EXCEPT',
|
||||
// Grouping
|
||||
'GROUP', 'HAVING', 'DISTINCT',
|
||||
'GROUP',
|
||||
'HAVING',
|
||||
'DISTINCT',
|
||||
// DDL
|
||||
'CREATE', 'ALTER', 'DROP', 'TABLE', 'INDEX', 'COLUMN',
|
||||
'ADD', 'MODIFY', 'RENAME', 'TO',
|
||||
'CREATE',
|
||||
'ALTER',
|
||||
'DROP',
|
||||
'TABLE',
|
||||
'INDEX',
|
||||
'COLUMN',
|
||||
'ADD',
|
||||
'MODIFY',
|
||||
'RENAME',
|
||||
'TO',
|
||||
// PostgreSQL specific
|
||||
'CONFLICT', 'DO', 'NOTHING', 'EXCLUDED', 'RETURNING',
|
||||
'MERGE', 'USING', 'MATCHED', 'WHEN', 'THEN', 'ELSE', 'END',
|
||||
'TARGET', 'SOURCE',
|
||||
'CONFLICT',
|
||||
'DO',
|
||||
'NOTHING',
|
||||
'EXCLUDED',
|
||||
'RETURNING',
|
||||
'MERGE',
|
||||
'USING',
|
||||
'MATCHED',
|
||||
'WHEN',
|
||||
'THEN',
|
||||
'ELSE',
|
||||
'END',
|
||||
'TARGET',
|
||||
'SOURCE',
|
||||
// Functions
|
||||
'COUNT', 'SUM', 'AVG', 'MIN', 'MAX', 'EXISTS',
|
||||
'CURRENT_TIMESTAMP', 'NOW', 'GETDATE',
|
||||
'COALESCE', 'NULLIF', 'CAST', 'AS',
|
||||
'COUNT',
|
||||
'SUM',
|
||||
'AVG',
|
||||
'MIN',
|
||||
'MAX',
|
||||
'EXISTS',
|
||||
'CURRENT_TIMESTAMP',
|
||||
'NOW',
|
||||
'GETDATE',
|
||||
'COALESCE',
|
||||
'NULLIF',
|
||||
'CAST',
|
||||
'AS',
|
||||
// Transaction
|
||||
'BEGIN', 'COMMIT', 'ROLLBACK', 'SAVEPOINT',
|
||||
'BEGIN',
|
||||
'COMMIT',
|
||||
'ROLLBACK',
|
||||
'SAVEPOINT',
|
||||
// Types & values
|
||||
'TRUE', 'FALSE', 'DEFAULT', 'PRIMARY', 'KEY',
|
||||
'REFERENCES', 'FOREIGN', 'CONSTRAINT', 'UNIQUE', 'CHECK',
|
||||
'CASE', 'BETWEEN', 'LIKE', 'ILIKE', 'ANY', 'SOME',
|
||||
'TRUE',
|
||||
'FALSE',
|
||||
'DEFAULT',
|
||||
'PRIMARY',
|
||||
'KEY',
|
||||
'REFERENCES',
|
||||
'FOREIGN',
|
||||
'CONSTRAINT',
|
||||
'UNIQUE',
|
||||
'CHECK',
|
||||
'CASE',
|
||||
'BETWEEN',
|
||||
'LIKE',
|
||||
'ILIKE',
|
||||
'ANY',
|
||||
'SOME',
|
||||
// Common
|
||||
'IF', 'WITH', 'RECURSIVE', 'OVER', 'PARTITION', 'WINDOW',
|
||||
'ROW', 'FIRST', 'AFTER', 'BEFORE'
|
||||
'IF',
|
||||
'WITH',
|
||||
'RECURSIVE',
|
||||
'OVER',
|
||||
'PARTITION',
|
||||
'WINDOW',
|
||||
'ROW',
|
||||
'FIRST',
|
||||
'AFTER',
|
||||
'BEFORE'
|
||||
])
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user