From 5278861ccdc207258b356bfc3fe3a7a4c5d55cd2 Mon Sep 17 00:00:00 2001 From: Jan Prochazka Date: Wed, 23 Apr 2025 15:54:02 +0200 Subject: [PATCH] fixed replicator for oracle --- integration-tests/__tests__/data-replicator.spec.js | 3 ++- packages/datalib/src/DataReplicator.ts | 3 ++- packages/tools/src/commonTypeParser.ts | 2 +- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/integration-tests/__tests__/data-replicator.spec.js b/integration-tests/__tests__/data-replicator.spec.js index fa8405887..ad8151436 100644 --- a/integration-tests/__tests__/data-replicator.spec.js +++ b/integration-tests/__tests__/data-replicator.spec.js @@ -300,6 +300,7 @@ describe('Data replicator', () => { DB1.role_permissions.splice(1, 1); await dataReplicator(createDuplConfig(DB1)); expect(await queryValue(`select count(*) as ~val from ~role_permissions`)).toEqual('2'); - }) + }), + 15 * 1000 ); }); diff --git a/packages/datalib/src/DataReplicator.ts b/packages/datalib/src/DataReplicator.ts index 0ade8aa17..540208855 100644 --- a/packages/datalib/src/DataReplicator.ts +++ b/packages/datalib/src/DataReplicator.ts @@ -130,7 +130,8 @@ class ReplicatorItemHolder { const ref = this.refByColumn[key]; if (ref) { // remap id - res[key] = ref.ref.idMap[res[key]]; + const oldId = res[key]; + res[key] = ref.ref.idMap[oldId]; if (ref.isMandatory && res[key] == null) { // mandatory refertence not matched if (this.replicator.options.skipRowsWithUnresolvedRefs) { diff --git a/packages/tools/src/commonTypeParser.ts b/packages/tools/src/commonTypeParser.ts index 349355ebd..a6d39e77f 100644 --- a/packages/tools/src/commonTypeParser.ts +++ b/packages/tools/src/commonTypeParser.ts @@ -7,7 +7,7 @@ export function isTypeNumeric(dataType) { } export function isTypeFloat(dataType) { - return dataType && /float|single|double/i.test(dataType); + return dataType && /float|single|double|number/i.test(dataType); } export function isTypeNumber(dataType) {