UNPKG

multibridge

Version:

A multi-database connection framework with centralized configuration

30 lines (29 loc) 1.22 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.executeCassandraQuery = executeCassandraQuery; const loggers_1 = __importDefault(require("../utils/loggers")); const errors_1 = require("../utils/errors"); const envConfig_1 = require("../config/envConfig"); async function executeCassandraQuery(connection, query, params) { try { const timeout = envConfig_1.envConfig.CASSANDRA_QUERY_TIMEOUT_MS; const executeOptions = { prepare: true }; if (timeout > 0) { executeOptions.readTimeout = timeout; } return await connection.execute(query, params, executeOptions); } catch (error) { loggers_1.default.error(`Error executing Cassandra query: ${error.message}`, { query: query.substring(0, 100), // Log first 100 chars of query error: error.stack, }); throw new errors_1.QueryError(`Cassandra query execution failed: ${error.message}`, { query: query.substring(0, 100), originalError: error, }); } }