Define db type

This commit is contained in:
Owen
2026-03-31 14:25:47 -07:00
parent 958bde2090
commit edfeec900d
3 changed files with 7 additions and 10 deletions

View File

@@ -60,8 +60,7 @@ function createDb() {
}) })
); );
} else { } else {
const maxReplicaConnections = const maxReplicaConnections = poolConfig?.max_replica_connections || 20;
poolConfig?.max_replica_connections || 20;
for (const conn of replicaConnections) { for (const conn of replicaConnections) {
const replicaPool = createPool( const replicaPool = createPool(
conn.connection_string, conn.connection_string,
@@ -92,3 +91,4 @@ export const primaryDb = db.$primary;
export type Transaction = Parameters< export type Transaction = Parameters<
Parameters<(typeof db)["transaction"]>[0] Parameters<(typeof db)["transaction"]>[0]
>[0]; >[0];
export const DB_TYPE: "pg" | "sqlite" = "pg";

View File

@@ -23,7 +23,8 @@ export default db;
export const primaryDb = db; export const primaryDb = db;
export type Transaction = Parameters< export type Transaction = Parameters<
Parameters<(typeof db)["transaction"]>[0] Parameters<(typeof db)["transaction"]>[0]
>[0]; >[0];
export const DB_TYPE: "pg" | "sqlite" = "sqlite";
function checkFileExists(filePath: string): boolean { function checkFileExists(filePath: string): boolean {
try { try {

View File

@@ -1,6 +1,6 @@
import { Request, Response, NextFunction } from "express"; import { Request, Response, NextFunction } from "express";
import { sql } from "drizzle-orm"; import { sql } from "drizzle-orm";
import { db } from "@server/db"; import { db, DB_TYPE } from "@server/db";
import logger from "@server/logger"; import logger from "@server/logger";
import createHttpError from "http-errors"; import createHttpError from "http-errors";
import HttpCode from "@server/types/HttpCode"; import HttpCode from "@server/types/HttpCode";
@@ -96,12 +96,8 @@ async function dbQueryRows<T extends Record<string, unknown>>(
return (await anyDb.all(query)) as T[]; return (await anyDb.all(query)) as T[];
} }
/**
* Returns true when the active database driver is SQLite (better-sqlite3).
* Used to select the appropriate bulk-update strategy.
*/
function isSQLite(): boolean { function isSQLite(): boolean {
return typeof (db as any).execute !== "function"; return DB_TYPE == "sqlite";
} }
/** /**