@ruiapp/rapid-core 0.8.13 → 0.8.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/core/server.d.ts +2 -2
- package/dist/index.js +15 -5
- package/dist/server.d.ts +2 -2
- package/package.json +1 -1
- package/src/core/server.ts +2 -2
- package/src/plugins/metaManage/services/MetaService.ts +8 -1
- package/src/server.ts +6 -4
package/dist/core/server.d.ts
CHANGED
|
@@ -13,8 +13,8 @@ export interface IRpdServer {
|
|
|
13
13
|
registerFacilityFactory(factory: FacilityFactory): any;
|
|
14
14
|
getFacility<TFacility = any, TOptions = any>(name: string, options?: TOptions): Promise<TFacility>;
|
|
15
15
|
getDatabaseAccessor(): IDatabaseAccessor;
|
|
16
|
-
queryDatabaseObject: (sql: string, params?: unknown[] | Record<string, unknown>, client?: IDatabaseClient) => Promise<any[]>;
|
|
17
|
-
tryQueryDatabaseObject: (sql: string, params?: unknown[] | Record<string, unknown>, client?: IDatabaseClient) => Promise<any[]>;
|
|
16
|
+
queryDatabaseObject: (sql: string, params?: unknown[] | Record<string, unknown>, client?: IDatabaseClient, dropErrorLog?: boolean) => Promise<any[]>;
|
|
17
|
+
tryQueryDatabaseObject: (sql: string, params?: unknown[] | Record<string, unknown>, client?: IDatabaseClient, dropErrorLog?: boolean) => Promise<any[]>;
|
|
18
18
|
registerMiddleware(middleware: any): void;
|
|
19
19
|
registerActionHandler(plugin: RapidPlugin, options: IPluginActionHandler): void;
|
|
20
20
|
getActionHandlerByCode(code: string): ActionHandler | undefined;
|
package/dist/index.js
CHANGED
|
@@ -4649,21 +4649,23 @@ class RapidServer {
|
|
|
4649
4649
|
}
|
|
4650
4650
|
return await factory.createFacility(this, options);
|
|
4651
4651
|
}
|
|
4652
|
-
async queryDatabaseObject(sql, params, client) {
|
|
4652
|
+
async queryDatabaseObject(sql, params, client, dropErrorLog) {
|
|
4653
4653
|
try {
|
|
4654
4654
|
return await this.#databaseAccessor.queryDatabaseObject(sql, params, client);
|
|
4655
4655
|
}
|
|
4656
4656
|
catch (err) {
|
|
4657
|
-
|
|
4657
|
+
if (!dropErrorLog) {
|
|
4658
|
+
this.#logger.error("Failed to query database object.", { errorMessage: err.message, sql, params });
|
|
4659
|
+
}
|
|
4658
4660
|
throw err;
|
|
4659
4661
|
}
|
|
4660
4662
|
}
|
|
4661
|
-
async tryQueryDatabaseObject(sql, params, client,
|
|
4663
|
+
async tryQueryDatabaseObject(sql, params, client, dropErrorLog) {
|
|
4662
4664
|
try {
|
|
4663
4665
|
return await this.queryDatabaseObject(sql, params, client);
|
|
4664
4666
|
}
|
|
4665
4667
|
catch (err) {
|
|
4666
|
-
if (!
|
|
4668
|
+
if (!dropErrorLog) {
|
|
4667
4669
|
this.#logger.error("Failed to query database object.", { errorMessage: err.message, sql, params });
|
|
4668
4670
|
}
|
|
4669
4671
|
}
|
|
@@ -5463,7 +5465,15 @@ class MetaService {
|
|
|
5463
5465
|
logger.debug(`Creating indexes of table ${queryBuilder.quoteTable(model)}`);
|
|
5464
5466
|
for (const index of model.indexes) {
|
|
5465
5467
|
const sqlCreateIndex = generateTableIndexDDL(queryBuilder, server, model, index);
|
|
5466
|
-
|
|
5468
|
+
try {
|
|
5469
|
+
await server.queryDatabaseObject(sqlCreateIndex, [], null);
|
|
5470
|
+
}
|
|
5471
|
+
catch (err) {
|
|
5472
|
+
const logger = this.#server.getLogger();
|
|
5473
|
+
if (err.message.includes("already exists")) {
|
|
5474
|
+
logger.warn("Failed to create index.", { errorMessage: err.message, sqlCreateIndex });
|
|
5475
|
+
}
|
|
5476
|
+
}
|
|
5467
5477
|
}
|
|
5468
5478
|
}
|
|
5469
5479
|
}
|
package/dist/server.d.ts
CHANGED
|
@@ -52,8 +52,8 @@ export declare class RapidServer implements IRpdServer {
|
|
|
52
52
|
configureApplication(): Promise<void>;
|
|
53
53
|
registerFacilityFactory(factory: FacilityFactory): void;
|
|
54
54
|
getFacility<TFacility = any, TOptions = any>(name: string, options?: TOptions, nullIfUnknownFacility?: boolean): Promise<TFacility>;
|
|
55
|
-
queryDatabaseObject(sql: string, params?: unknown[] | Record<string, unknown>, client?: IDatabaseClient): Promise<any[]>;
|
|
56
|
-
tryQueryDatabaseObject(sql: string, params?: unknown[] | Record<string, unknown>, client?: IDatabaseClient,
|
|
55
|
+
queryDatabaseObject(sql: string, params?: unknown[] | Record<string, unknown>, client?: IDatabaseClient, dropErrorLog?: boolean): Promise<any[]>;
|
|
56
|
+
tryQueryDatabaseObject(sql: string, params?: unknown[] | Record<string, unknown>, client?: IDatabaseClient, dropErrorLog?: boolean): Promise<any[]>;
|
|
57
57
|
get middlewares(): any[];
|
|
58
58
|
handleRequest(request: Request, next: Next): Promise<Response>;
|
|
59
59
|
beforeRunRouteActions(handlerContext: ActionHandlerContext): Promise<void>;
|
package/package.json
CHANGED
package/src/core/server.ts
CHANGED
|
@@ -34,8 +34,8 @@ export interface IRpdServer {
|
|
|
34
34
|
getFacility<TFacility = any, TOptions = any>(name: string, options?: TOptions): Promise<TFacility>;
|
|
35
35
|
|
|
36
36
|
getDatabaseAccessor(): IDatabaseAccessor;
|
|
37
|
-
queryDatabaseObject: (sql: string, params?: unknown[] | Record<string, unknown>, client?: IDatabaseClient) => Promise<any[]>;
|
|
38
|
-
tryQueryDatabaseObject: (sql: string, params?: unknown[] | Record<string, unknown>, client?: IDatabaseClient) => Promise<any[]>;
|
|
37
|
+
queryDatabaseObject: (sql: string, params?: unknown[] | Record<string, unknown>, client?: IDatabaseClient, dropErrorLog?: boolean) => Promise<any[]>;
|
|
38
|
+
tryQueryDatabaseObject: (sql: string, params?: unknown[] | Record<string, unknown>, client?: IDatabaseClient, dropErrorLog?: boolean) => Promise<any[]>;
|
|
39
39
|
registerMiddleware(middleware: any): void;
|
|
40
40
|
registerActionHandler(plugin: RapidPlugin, options: IPluginActionHandler): void;
|
|
41
41
|
getActionHandlerByCode(code: string): ActionHandler | undefined;
|
|
@@ -360,7 +360,14 @@ export default class MetaService {
|
|
|
360
360
|
logger.debug(`Creating indexes of table ${queryBuilder.quoteTable(model)}`);
|
|
361
361
|
for (const index of model.indexes) {
|
|
362
362
|
const sqlCreateIndex = generateTableIndexDDL(queryBuilder, server, model, index);
|
|
363
|
-
|
|
363
|
+
try {
|
|
364
|
+
await server.queryDatabaseObject(sqlCreateIndex, [], null);
|
|
365
|
+
} catch (err: any) {
|
|
366
|
+
const logger = this.#server.getLogger();
|
|
367
|
+
if ((err as Error).message.includes("already exists")) {
|
|
368
|
+
logger.warn("Failed to create index.", { errorMessage: err.message, sqlCreateIndex });
|
|
369
|
+
}
|
|
370
|
+
}
|
|
364
371
|
}
|
|
365
372
|
}
|
|
366
373
|
}
|
package/src/server.ts
CHANGED
|
@@ -410,20 +410,22 @@ export class RapidServer implements IRpdServer {
|
|
|
410
410
|
return await factory.createFacility(this, options);
|
|
411
411
|
}
|
|
412
412
|
|
|
413
|
-
async queryDatabaseObject(sql: string, params?: unknown[] | Record<string, unknown>, client?: IDatabaseClient): Promise<any[]> {
|
|
413
|
+
async queryDatabaseObject(sql: string, params?: unknown[] | Record<string, unknown>, client?: IDatabaseClient, dropErrorLog?: boolean): Promise<any[]> {
|
|
414
414
|
try {
|
|
415
415
|
return await this.#databaseAccessor.queryDatabaseObject(sql, params, client);
|
|
416
416
|
} catch (err) {
|
|
417
|
-
|
|
417
|
+
if (!dropErrorLog) {
|
|
418
|
+
this.#logger.error("Failed to query database object.", { errorMessage: err.message, sql, params });
|
|
419
|
+
}
|
|
418
420
|
throw err;
|
|
419
421
|
}
|
|
420
422
|
}
|
|
421
423
|
|
|
422
|
-
async tryQueryDatabaseObject(sql: string, params?: unknown[] | Record<string, unknown>, client?: IDatabaseClient,
|
|
424
|
+
async tryQueryDatabaseObject(sql: string, params?: unknown[] | Record<string, unknown>, client?: IDatabaseClient, dropErrorLog?: boolean): Promise<any[]> {
|
|
423
425
|
try {
|
|
424
426
|
return await this.queryDatabaseObject(sql, params, client);
|
|
425
427
|
} catch (err) {
|
|
426
|
-
if (!
|
|
428
|
+
if (!dropErrorLog) {
|
|
427
429
|
this.#logger.error("Failed to query database object.", { errorMessage: err.message, sql, params });
|
|
428
430
|
}
|
|
429
431
|
}
|