deleted: backend/check_endpoints.js
modified: backend/src/services/SqlExecutor.ts
This commit is contained in:
@@ -47,33 +47,12 @@ export class SqlExecutor {
|
||||
this.validateQuery(sqlQuery);
|
||||
|
||||
// Log SQL query and parameters before execution
|
||||
console.log('\n[SQL DB]', databaseId);
|
||||
// @ts-ignore - accessing pool options for debugging
|
||||
const poolOpts = pool.options;
|
||||
console.log('[SQL Pool Config] host:', poolOpts?.host, 'database:', poolOpts?.database, 'user:', poolOpts?.user);
|
||||
console.log('[SQL Query]', sqlQuery);
|
||||
console.log('\n[SQL Query]', sqlQuery);
|
||||
console.log('[SQL Params]', params);
|
||||
|
||||
// Execute with retry mechanism
|
||||
const result = await this.retryQuery(async () => {
|
||||
// Check if connected to replica
|
||||
const debugResult = await pool.query(`
|
||||
SELECT
|
||||
pg_backend_pid() as pid,
|
||||
pg_is_in_recovery() as is_replica,
|
||||
inet_server_addr() as server_ip
|
||||
`);
|
||||
const d = debugResult.rows[0];
|
||||
console.log('[SQL Debug] pid:', d?.pid, 'is_replica:', d?.is_replica, 'server_ip:', d?.server_ip);
|
||||
|
||||
// Disable prepared statements by using unique name each time
|
||||
const queryResult = await pool.query({
|
||||
text: sqlQuery,
|
||||
values: params,
|
||||
name: undefined // This disables prepared statement caching
|
||||
});
|
||||
console.log('[SQL Result] rowCount:', queryResult.rowCount, 'rows:', JSON.stringify(queryResult.rows).substring(0, 500));
|
||||
return queryResult;
|
||||
return await pool.query(sqlQuery, params);
|
||||
}, 3, 500); // 3 попытки с задержкой 500ms
|
||||
|
||||
const executionTime = Date.now() - startTime;
|
||||
|
||||
Reference in New Issue
Block a user