@toiroakr/lines-db 0.9.0 → 0.9.1
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/CHANGELOG.md +8 -0
- package/bin/cli.js +57 -7
- package/dist/index.cjs +57 -7
- package/dist/index.d.cts +5 -0
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +57 -7
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/src/database.test.ts +160 -0
- package/src/database.ts +100 -5
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# @toiroakr/lines-db
|
|
2
2
|
|
|
3
|
+
## 0.9.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 4ca2664: fix: validate circular foreign key constraints via deferred validation
|
|
8
|
+
|
|
9
|
+
Previously, when two tables had bidirectional foreign keys (e.g., `_User` → `User` and `User` → `_User`), one direction's FK validation was always skipped due to circular dependency detection. Now, circular dependency FKs are validated in a second pass after all tables have been loaded, using SQL queries instead of SQLite FK constraints.
|
|
10
|
+
|
|
3
11
|
## 0.9.0
|
|
4
12
|
|
|
5
13
|
### Minor Changes
|
package/bin/cli.js
CHANGED
|
@@ -433,13 +433,20 @@ var LinesDB = class LinesDB {
|
|
|
433
433
|
const loadedTables = /* @__PURE__ */ new Set();
|
|
434
434
|
const loadingTables = /* @__PURE__ */ new Set();
|
|
435
435
|
const attemptedTables = /* @__PURE__ */ new Set();
|
|
436
|
+
const allDeferredForeignKeys = [];
|
|
436
437
|
for (const tableNameToLoad of tablesToLoad) if (!attemptedTables.has(tableNameToLoad)) {
|
|
437
438
|
const tableTransform = tableNameToLoad === tableName ? transform : void 0;
|
|
438
|
-
const { errors, warnings, rowCounts: tableRowCounts } = await this.loadTableWithDependencies(tableNameToLoad, loadedTables, loadingTables, attemptedTables, detailedValidate, tableTransform);
|
|
439
|
+
const { errors, warnings, rowCounts: tableRowCounts, deferredForeignKeys } = await this.loadTableWithDependencies(tableNameToLoad, loadedTables, loadingTables, attemptedTables, detailedValidate, tableTransform);
|
|
439
440
|
allErrors.push(...errors);
|
|
440
441
|
allWarnings.push(...warnings);
|
|
442
|
+
allDeferredForeignKeys.push(...deferredForeignKeys);
|
|
441
443
|
for (const [k, v] of tableRowCounts) allRowCounts.set(k, v);
|
|
442
444
|
}
|
|
445
|
+
if (detailedValidate && allDeferredForeignKeys.length > 0) for (const { tableName: tName, foreignKey: fk, filePath } of allDeferredForeignKeys) {
|
|
446
|
+
if (!loadedTables.has(fk.references.table)) continue;
|
|
447
|
+
const deferredErrors = this.validateDeferredForeignKey(tName, fk, filePath);
|
|
448
|
+
allErrors.push(...deferredErrors);
|
|
449
|
+
}
|
|
443
450
|
const tableResults = tablesToLoad.map((name) => {
|
|
444
451
|
const tableErrors = allErrors.filter((e) => e.tableName === name);
|
|
445
452
|
const tableWarnings = allWarnings.filter((w) => w.includes(`'${name}'`));
|
|
@@ -465,10 +472,12 @@ var LinesDB = class LinesDB {
|
|
|
465
472
|
const errors = [];
|
|
466
473
|
const warnings = [];
|
|
467
474
|
const rowCounts = /* @__PURE__ */ new Map();
|
|
475
|
+
const deferredForeignKeys = [];
|
|
468
476
|
if (attemptedTables.has(tableName)) return {
|
|
469
477
|
errors,
|
|
470
478
|
warnings,
|
|
471
|
-
rowCounts
|
|
479
|
+
rowCounts,
|
|
480
|
+
deferredForeignKeys
|
|
472
481
|
};
|
|
473
482
|
attemptedTables.add(tableName);
|
|
474
483
|
if (loadingTables.has(tableName)) throw new Error(`Circular dependency detected for table '${tableName}'`);
|
|
@@ -492,23 +501,35 @@ var LinesDB = class LinesDB {
|
|
|
492
501
|
const depResult = await this.loadTableWithDependencies(referencedTable, loadedTables, loadingTables, attemptedTables, detailedValidate, void 0);
|
|
493
502
|
errors.push(...depResult.errors);
|
|
494
503
|
warnings.push(...depResult.warnings);
|
|
504
|
+
deferredForeignKeys.push(...depResult.deferredForeignKeys);
|
|
495
505
|
for (const [k, v] of depResult.rowCounts) rowCounts.set(k, v);
|
|
496
506
|
} else throw new Error(`Foreign key reference to non-existent table '${referencedTable}' in table '${tableName}'`);
|
|
497
507
|
}
|
|
498
508
|
const failedDependencies = /* @__PURE__ */ new Set();
|
|
509
|
+
const circularDependencies = /* @__PURE__ */ new Set();
|
|
499
510
|
if (foreignKeys && foreignKeys.length > 0) {
|
|
500
511
|
for (const fk of foreignKeys) {
|
|
501
512
|
const referencedTable = fk.references.table;
|
|
502
513
|
if (referencedTable === tableName) continue;
|
|
503
|
-
if (attemptedTables.has(referencedTable) && !loadedTables.has(referencedTable))
|
|
514
|
+
if (attemptedTables.has(referencedTable) && !loadedTables.has(referencedTable)) if (loadingTables.has(referencedTable)) circularDependencies.add(referencedTable);
|
|
515
|
+
else failedDependencies.add(referencedTable);
|
|
504
516
|
}
|
|
505
517
|
if (failedDependencies.size > 0) for (const dep of failedDependencies) warnings.push(`Skipping foreign key validation for table '${tableName}': referenced table '${dep}' has validation errors`);
|
|
506
518
|
}
|
|
507
|
-
const
|
|
519
|
+
const allSkippedDependencies = new Set([...failedDependencies, ...circularDependencies]);
|
|
520
|
+
const { loaded, rowCount, errors: loadErrors } = await this.loadTable(tableName, tableConfig, detailedValidate, transform, allSkippedDependencies);
|
|
508
521
|
errors.push(...loadErrors);
|
|
509
522
|
rowCounts.set(tableName, rowCount);
|
|
510
|
-
if (loaded)
|
|
511
|
-
|
|
523
|
+
if (loaded) {
|
|
524
|
+
loadedTables.add(tableName);
|
|
525
|
+
if (foreignKeys && circularDependencies.size > 0) {
|
|
526
|
+
for (const fk of foreignKeys) if (circularDependencies.has(fk.references.table)) deferredForeignKeys.push({
|
|
527
|
+
tableName,
|
|
528
|
+
foreignKey: fk,
|
|
529
|
+
filePath: tableConfig.jsonlPath
|
|
530
|
+
});
|
|
531
|
+
}
|
|
532
|
+
} else {
|
|
512
533
|
warnings.push(`Table '${tableName}' was not loaded (no data or skipped)`);
|
|
513
534
|
this.tables.delete(tableName);
|
|
514
535
|
}
|
|
@@ -518,7 +539,8 @@ var LinesDB = class LinesDB {
|
|
|
518
539
|
return {
|
|
519
540
|
errors,
|
|
520
541
|
warnings,
|
|
521
|
-
rowCounts
|
|
542
|
+
rowCounts,
|
|
543
|
+
deferredForeignKeys
|
|
522
544
|
};
|
|
523
545
|
}
|
|
524
546
|
/**
|
|
@@ -764,6 +786,34 @@ var LinesDB = class LinesDB {
|
|
|
764
786
|
};
|
|
765
787
|
}
|
|
766
788
|
/**
|
|
789
|
+
* Validate a deferred foreign key constraint after all tables have been loaded.
|
|
790
|
+
* Used for circular dependency FK validation.
|
|
791
|
+
*/
|
|
792
|
+
validateDeferredForeignKey(tableName, fk, filePath) {
|
|
793
|
+
const errors = [];
|
|
794
|
+
const quotedTable = this.quoteTableName(tableName);
|
|
795
|
+
const quotedColumn = this.quoteIdentifier(fk.column);
|
|
796
|
+
const quotedRefTable = this.quoteTableName(fk.references.table);
|
|
797
|
+
const sql = `SELECT rowid - 1 as idx, ${quotedColumn} as val FROM ${quotedTable} WHERE ${quotedColumn} IS NOT NULL AND ${quotedColumn} NOT IN (SELECT ${this.quoteIdentifier(fk.references.column)} FROM ${quotedRefTable})`;
|
|
798
|
+
try {
|
|
799
|
+
const rows = this.query(sql);
|
|
800
|
+
for (const row of rows) errors.push({
|
|
801
|
+
file: filePath,
|
|
802
|
+
tableName,
|
|
803
|
+
rowIndex: row.idx,
|
|
804
|
+
issues: [],
|
|
805
|
+
type: "foreignKey",
|
|
806
|
+
foreignKeyError: {
|
|
807
|
+
column: fk.column,
|
|
808
|
+
value: row.val,
|
|
809
|
+
referencedTable: fk.references.table,
|
|
810
|
+
referencedColumn: fk.references.column
|
|
811
|
+
}
|
|
812
|
+
});
|
|
813
|
+
} catch (_) {}
|
|
814
|
+
return errors;
|
|
815
|
+
}
|
|
816
|
+
/**
|
|
767
817
|
* Execute a raw SQL query
|
|
768
818
|
*/
|
|
769
819
|
query(sql, params = []) {
|
package/dist/index.cjs
CHANGED
|
@@ -408,13 +408,20 @@ var LinesDB = class LinesDB {
|
|
|
408
408
|
const loadedTables = /* @__PURE__ */ new Set();
|
|
409
409
|
const loadingTables = /* @__PURE__ */ new Set();
|
|
410
410
|
const attemptedTables = /* @__PURE__ */ new Set();
|
|
411
|
+
const allDeferredForeignKeys = [];
|
|
411
412
|
for (const tableNameToLoad of tablesToLoad) if (!attemptedTables.has(tableNameToLoad)) {
|
|
412
413
|
const tableTransform = tableNameToLoad === tableName ? transform : void 0;
|
|
413
|
-
const { errors, warnings, rowCounts: tableRowCounts } = await this.loadTableWithDependencies(tableNameToLoad, loadedTables, loadingTables, attemptedTables, detailedValidate, tableTransform);
|
|
414
|
+
const { errors, warnings, rowCounts: tableRowCounts, deferredForeignKeys } = await this.loadTableWithDependencies(tableNameToLoad, loadedTables, loadingTables, attemptedTables, detailedValidate, tableTransform);
|
|
414
415
|
allErrors.push(...errors);
|
|
415
416
|
allWarnings.push(...warnings);
|
|
417
|
+
allDeferredForeignKeys.push(...deferredForeignKeys);
|
|
416
418
|
for (const [k, v] of tableRowCounts) allRowCounts.set(k, v);
|
|
417
419
|
}
|
|
420
|
+
if (detailedValidate && allDeferredForeignKeys.length > 0) for (const { tableName: tName, foreignKey: fk, filePath } of allDeferredForeignKeys) {
|
|
421
|
+
if (!loadedTables.has(fk.references.table)) continue;
|
|
422
|
+
const deferredErrors = this.validateDeferredForeignKey(tName, fk, filePath);
|
|
423
|
+
allErrors.push(...deferredErrors);
|
|
424
|
+
}
|
|
418
425
|
const tableResults = tablesToLoad.map((name) => {
|
|
419
426
|
const tableErrors = allErrors.filter((e) => e.tableName === name);
|
|
420
427
|
const tableWarnings = allWarnings.filter((w) => w.includes(`'${name}'`));
|
|
@@ -440,10 +447,12 @@ var LinesDB = class LinesDB {
|
|
|
440
447
|
const errors = [];
|
|
441
448
|
const warnings = [];
|
|
442
449
|
const rowCounts = /* @__PURE__ */ new Map();
|
|
450
|
+
const deferredForeignKeys = [];
|
|
443
451
|
if (attemptedTables.has(tableName)) return {
|
|
444
452
|
errors,
|
|
445
453
|
warnings,
|
|
446
|
-
rowCounts
|
|
454
|
+
rowCounts,
|
|
455
|
+
deferredForeignKeys
|
|
447
456
|
};
|
|
448
457
|
attemptedTables.add(tableName);
|
|
449
458
|
if (loadingTables.has(tableName)) throw new Error(`Circular dependency detected for table '${tableName}'`);
|
|
@@ -467,23 +476,35 @@ var LinesDB = class LinesDB {
|
|
|
467
476
|
const depResult = await this.loadTableWithDependencies(referencedTable, loadedTables, loadingTables, attemptedTables, detailedValidate, void 0);
|
|
468
477
|
errors.push(...depResult.errors);
|
|
469
478
|
warnings.push(...depResult.warnings);
|
|
479
|
+
deferredForeignKeys.push(...depResult.deferredForeignKeys);
|
|
470
480
|
for (const [k, v] of depResult.rowCounts) rowCounts.set(k, v);
|
|
471
481
|
} else throw new Error(`Foreign key reference to non-existent table '${referencedTable}' in table '${tableName}'`);
|
|
472
482
|
}
|
|
473
483
|
const failedDependencies = /* @__PURE__ */ new Set();
|
|
484
|
+
const circularDependencies = /* @__PURE__ */ new Set();
|
|
474
485
|
if (foreignKeys && foreignKeys.length > 0) {
|
|
475
486
|
for (const fk of foreignKeys) {
|
|
476
487
|
const referencedTable = fk.references.table;
|
|
477
488
|
if (referencedTable === tableName) continue;
|
|
478
|
-
if (attemptedTables.has(referencedTable) && !loadedTables.has(referencedTable))
|
|
489
|
+
if (attemptedTables.has(referencedTable) && !loadedTables.has(referencedTable)) if (loadingTables.has(referencedTable)) circularDependencies.add(referencedTable);
|
|
490
|
+
else failedDependencies.add(referencedTable);
|
|
479
491
|
}
|
|
480
492
|
if (failedDependencies.size > 0) for (const dep of failedDependencies) warnings.push(`Skipping foreign key validation for table '${tableName}': referenced table '${dep}' has validation errors`);
|
|
481
493
|
}
|
|
482
|
-
const
|
|
494
|
+
const allSkippedDependencies = new Set([...failedDependencies, ...circularDependencies]);
|
|
495
|
+
const { loaded, rowCount, errors: loadErrors } = await this.loadTable(tableName, tableConfig, detailedValidate, transform, allSkippedDependencies);
|
|
483
496
|
errors.push(...loadErrors);
|
|
484
497
|
rowCounts.set(tableName, rowCount);
|
|
485
|
-
if (loaded)
|
|
486
|
-
|
|
498
|
+
if (loaded) {
|
|
499
|
+
loadedTables.add(tableName);
|
|
500
|
+
if (foreignKeys && circularDependencies.size > 0) {
|
|
501
|
+
for (const fk of foreignKeys) if (circularDependencies.has(fk.references.table)) deferredForeignKeys.push({
|
|
502
|
+
tableName,
|
|
503
|
+
foreignKey: fk,
|
|
504
|
+
filePath: tableConfig.jsonlPath
|
|
505
|
+
});
|
|
506
|
+
}
|
|
507
|
+
} else {
|
|
487
508
|
warnings.push(`Table '${tableName}' was not loaded (no data or skipped)`);
|
|
488
509
|
this.tables.delete(tableName);
|
|
489
510
|
}
|
|
@@ -493,7 +514,8 @@ var LinesDB = class LinesDB {
|
|
|
493
514
|
return {
|
|
494
515
|
errors,
|
|
495
516
|
warnings,
|
|
496
|
-
rowCounts
|
|
517
|
+
rowCounts,
|
|
518
|
+
deferredForeignKeys
|
|
497
519
|
};
|
|
498
520
|
}
|
|
499
521
|
/**
|
|
@@ -739,6 +761,34 @@ var LinesDB = class LinesDB {
|
|
|
739
761
|
};
|
|
740
762
|
}
|
|
741
763
|
/**
|
|
764
|
+
* Validate a deferred foreign key constraint after all tables have been loaded.
|
|
765
|
+
* Used for circular dependency FK validation.
|
|
766
|
+
*/
|
|
767
|
+
validateDeferredForeignKey(tableName, fk, filePath) {
|
|
768
|
+
const errors = [];
|
|
769
|
+
const quotedTable = this.quoteTableName(tableName);
|
|
770
|
+
const quotedColumn = this.quoteIdentifier(fk.column);
|
|
771
|
+
const quotedRefTable = this.quoteTableName(fk.references.table);
|
|
772
|
+
const sql = `SELECT rowid - 1 as idx, ${quotedColumn} as val FROM ${quotedTable} WHERE ${quotedColumn} IS NOT NULL AND ${quotedColumn} NOT IN (SELECT ${this.quoteIdentifier(fk.references.column)} FROM ${quotedRefTable})`;
|
|
773
|
+
try {
|
|
774
|
+
const rows = this.query(sql);
|
|
775
|
+
for (const row of rows) errors.push({
|
|
776
|
+
file: filePath,
|
|
777
|
+
tableName,
|
|
778
|
+
rowIndex: row.idx,
|
|
779
|
+
issues: [],
|
|
780
|
+
type: "foreignKey",
|
|
781
|
+
foreignKeyError: {
|
|
782
|
+
column: fk.column,
|
|
783
|
+
value: row.val,
|
|
784
|
+
referencedTable: fk.references.table,
|
|
785
|
+
referencedColumn: fk.references.column
|
|
786
|
+
}
|
|
787
|
+
});
|
|
788
|
+
} catch (_) {}
|
|
789
|
+
return errors;
|
|
790
|
+
}
|
|
791
|
+
/**
|
|
742
792
|
* Execute a raw SQL query
|
|
743
793
|
*/
|
|
744
794
|
query(sql, params = []) {
|
package/dist/index.d.cts
CHANGED
|
@@ -169,6 +169,11 @@ declare class LinesDB<Tables extends TableDefs> {
|
|
|
169
169
|
* Analyze constraint error and extract detailed information
|
|
170
170
|
*/
|
|
171
171
|
private analyzeConstraintError;
|
|
172
|
+
/**
|
|
173
|
+
* Validate a deferred foreign key constraint after all tables have been loaded.
|
|
174
|
+
* Used for circular dependency FK validation.
|
|
175
|
+
*/
|
|
176
|
+
private validateDeferredForeignKey;
|
|
172
177
|
/**
|
|
173
178
|
* Execute a raw SQL query
|
|
174
179
|
*/
|
package/dist/index.d.cts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.cts","names":[],"sources":["../src/sqlite-adapter.ts","../src/types.ts","../src/database.ts","../src/jsonl-reader.ts","../src/jsonl-writer.ts","../src/schema-loader.ts","../src/directory-scanner.ts","../src/schema.ts","../src/type-generator.ts","../src/jsonl-migration.ts","../src/schema-extensions.ts","../src/error-formatter.ts","../src/runtime.ts"],"sourcesContent":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.cts","names":[],"sources":["../src/sqlite-adapter.ts","../src/types.ts","../src/database.ts","../src/jsonl-reader.ts","../src/jsonl-writer.ts","../src/schema-loader.ts","../src/directory-scanner.ts","../src/schema.ts","../src/type-generator.ts","../src/jsonl-migration.ts","../src/schema-extensions.ts","../src/error-formatter.ts","../src/runtime.ts"],"sourcesContent":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -169,6 +169,11 @@ declare class LinesDB<Tables extends TableDefs> {
|
|
|
169
169
|
* Analyze constraint error and extract detailed information
|
|
170
170
|
*/
|
|
171
171
|
private analyzeConstraintError;
|
|
172
|
+
/**
|
|
173
|
+
* Validate a deferred foreign key constraint after all tables have been loaded.
|
|
174
|
+
* Used for circular dependency FK validation.
|
|
175
|
+
*/
|
|
176
|
+
private validateDeferredForeignKey;
|
|
172
177
|
/**
|
|
173
178
|
* Execute a raw SQL query
|
|
174
179
|
*/
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","names":[],"sources":["../src/sqlite-adapter.ts","../src/types.ts","../src/database.ts","../src/jsonl-reader.ts","../src/jsonl-writer.ts","../src/schema-loader.ts","../src/directory-scanner.ts","../src/schema.ts","../src/type-generator.ts","../src/jsonl-migration.ts","../src/schema-extensions.ts","../src/error-formatter.ts","../src/runtime.ts"],"sourcesContent":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../src/sqlite-adapter.ts","../src/types.ts","../src/database.ts","../src/jsonl-reader.ts","../src/jsonl-writer.ts","../src/schema-loader.ts","../src/directory-scanner.ts","../src/schema.ts","../src/type-generator.ts","../src/jsonl-migration.ts","../src/schema-extensions.ts","../src/error-formatter.ts","../src/runtime.ts"],"sourcesContent":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -386,13 +386,20 @@ var LinesDB = class LinesDB {
|
|
|
386
386
|
const loadedTables = /* @__PURE__ */ new Set();
|
|
387
387
|
const loadingTables = /* @__PURE__ */ new Set();
|
|
388
388
|
const attemptedTables = /* @__PURE__ */ new Set();
|
|
389
|
+
const allDeferredForeignKeys = [];
|
|
389
390
|
for (const tableNameToLoad of tablesToLoad) if (!attemptedTables.has(tableNameToLoad)) {
|
|
390
391
|
const tableTransform = tableNameToLoad === tableName ? transform : void 0;
|
|
391
|
-
const { errors, warnings, rowCounts: tableRowCounts } = await this.loadTableWithDependencies(tableNameToLoad, loadedTables, loadingTables, attemptedTables, detailedValidate, tableTransform);
|
|
392
|
+
const { errors, warnings, rowCounts: tableRowCounts, deferredForeignKeys } = await this.loadTableWithDependencies(tableNameToLoad, loadedTables, loadingTables, attemptedTables, detailedValidate, tableTransform);
|
|
392
393
|
allErrors.push(...errors);
|
|
393
394
|
allWarnings.push(...warnings);
|
|
395
|
+
allDeferredForeignKeys.push(...deferredForeignKeys);
|
|
394
396
|
for (const [k, v] of tableRowCounts) allRowCounts.set(k, v);
|
|
395
397
|
}
|
|
398
|
+
if (detailedValidate && allDeferredForeignKeys.length > 0) for (const { tableName: tName, foreignKey: fk, filePath } of allDeferredForeignKeys) {
|
|
399
|
+
if (!loadedTables.has(fk.references.table)) continue;
|
|
400
|
+
const deferredErrors = this.validateDeferredForeignKey(tName, fk, filePath);
|
|
401
|
+
allErrors.push(...deferredErrors);
|
|
402
|
+
}
|
|
396
403
|
const tableResults = tablesToLoad.map((name) => {
|
|
397
404
|
const tableErrors = allErrors.filter((e) => e.tableName === name);
|
|
398
405
|
const tableWarnings = allWarnings.filter((w) => w.includes(`'${name}'`));
|
|
@@ -418,10 +425,12 @@ var LinesDB = class LinesDB {
|
|
|
418
425
|
const errors = [];
|
|
419
426
|
const warnings = [];
|
|
420
427
|
const rowCounts = /* @__PURE__ */ new Map();
|
|
428
|
+
const deferredForeignKeys = [];
|
|
421
429
|
if (attemptedTables.has(tableName)) return {
|
|
422
430
|
errors,
|
|
423
431
|
warnings,
|
|
424
|
-
rowCounts
|
|
432
|
+
rowCounts,
|
|
433
|
+
deferredForeignKeys
|
|
425
434
|
};
|
|
426
435
|
attemptedTables.add(tableName);
|
|
427
436
|
if (loadingTables.has(tableName)) throw new Error(`Circular dependency detected for table '${tableName}'`);
|
|
@@ -445,23 +454,35 @@ var LinesDB = class LinesDB {
|
|
|
445
454
|
const depResult = await this.loadTableWithDependencies(referencedTable, loadedTables, loadingTables, attemptedTables, detailedValidate, void 0);
|
|
446
455
|
errors.push(...depResult.errors);
|
|
447
456
|
warnings.push(...depResult.warnings);
|
|
457
|
+
deferredForeignKeys.push(...depResult.deferredForeignKeys);
|
|
448
458
|
for (const [k, v] of depResult.rowCounts) rowCounts.set(k, v);
|
|
449
459
|
} else throw new Error(`Foreign key reference to non-existent table '${referencedTable}' in table '${tableName}'`);
|
|
450
460
|
}
|
|
451
461
|
const failedDependencies = /* @__PURE__ */ new Set();
|
|
462
|
+
const circularDependencies = /* @__PURE__ */ new Set();
|
|
452
463
|
if (foreignKeys && foreignKeys.length > 0) {
|
|
453
464
|
for (const fk of foreignKeys) {
|
|
454
465
|
const referencedTable = fk.references.table;
|
|
455
466
|
if (referencedTable === tableName) continue;
|
|
456
|
-
if (attemptedTables.has(referencedTable) && !loadedTables.has(referencedTable))
|
|
467
|
+
if (attemptedTables.has(referencedTable) && !loadedTables.has(referencedTable)) if (loadingTables.has(referencedTable)) circularDependencies.add(referencedTable);
|
|
468
|
+
else failedDependencies.add(referencedTable);
|
|
457
469
|
}
|
|
458
470
|
if (failedDependencies.size > 0) for (const dep of failedDependencies) warnings.push(`Skipping foreign key validation for table '${tableName}': referenced table '${dep}' has validation errors`);
|
|
459
471
|
}
|
|
460
|
-
const
|
|
472
|
+
const allSkippedDependencies = new Set([...failedDependencies, ...circularDependencies]);
|
|
473
|
+
const { loaded, rowCount, errors: loadErrors } = await this.loadTable(tableName, tableConfig, detailedValidate, transform, allSkippedDependencies);
|
|
461
474
|
errors.push(...loadErrors);
|
|
462
475
|
rowCounts.set(tableName, rowCount);
|
|
463
|
-
if (loaded)
|
|
464
|
-
|
|
476
|
+
if (loaded) {
|
|
477
|
+
loadedTables.add(tableName);
|
|
478
|
+
if (foreignKeys && circularDependencies.size > 0) {
|
|
479
|
+
for (const fk of foreignKeys) if (circularDependencies.has(fk.references.table)) deferredForeignKeys.push({
|
|
480
|
+
tableName,
|
|
481
|
+
foreignKey: fk,
|
|
482
|
+
filePath: tableConfig.jsonlPath
|
|
483
|
+
});
|
|
484
|
+
}
|
|
485
|
+
} else {
|
|
465
486
|
warnings.push(`Table '${tableName}' was not loaded (no data or skipped)`);
|
|
466
487
|
this.tables.delete(tableName);
|
|
467
488
|
}
|
|
@@ -471,7 +492,8 @@ var LinesDB = class LinesDB {
|
|
|
471
492
|
return {
|
|
472
493
|
errors,
|
|
473
494
|
warnings,
|
|
474
|
-
rowCounts
|
|
495
|
+
rowCounts,
|
|
496
|
+
deferredForeignKeys
|
|
475
497
|
};
|
|
476
498
|
}
|
|
477
499
|
/**
|
|
@@ -717,6 +739,34 @@ var LinesDB = class LinesDB {
|
|
|
717
739
|
};
|
|
718
740
|
}
|
|
719
741
|
/**
|
|
742
|
+
* Validate a deferred foreign key constraint after all tables have been loaded.
|
|
743
|
+
* Used for circular dependency FK validation.
|
|
744
|
+
*/
|
|
745
|
+
validateDeferredForeignKey(tableName, fk, filePath) {
|
|
746
|
+
const errors = [];
|
|
747
|
+
const quotedTable = this.quoteTableName(tableName);
|
|
748
|
+
const quotedColumn = this.quoteIdentifier(fk.column);
|
|
749
|
+
const quotedRefTable = this.quoteTableName(fk.references.table);
|
|
750
|
+
const sql = `SELECT rowid - 1 as idx, ${quotedColumn} as val FROM ${quotedTable} WHERE ${quotedColumn} IS NOT NULL AND ${quotedColumn} NOT IN (SELECT ${this.quoteIdentifier(fk.references.column)} FROM ${quotedRefTable})`;
|
|
751
|
+
try {
|
|
752
|
+
const rows = this.query(sql);
|
|
753
|
+
for (const row of rows) errors.push({
|
|
754
|
+
file: filePath,
|
|
755
|
+
tableName,
|
|
756
|
+
rowIndex: row.idx,
|
|
757
|
+
issues: [],
|
|
758
|
+
type: "foreignKey",
|
|
759
|
+
foreignKeyError: {
|
|
760
|
+
column: fk.column,
|
|
761
|
+
value: row.val,
|
|
762
|
+
referencedTable: fk.references.table,
|
|
763
|
+
referencedColumn: fk.references.column
|
|
764
|
+
}
|
|
765
|
+
});
|
|
766
|
+
} catch (_) {}
|
|
767
|
+
return errors;
|
|
768
|
+
}
|
|
769
|
+
/**
|
|
720
770
|
* Execute a raw SQL query
|
|
721
771
|
*/
|
|
722
772
|
query(sql, params = []) {
|