duckdb-tinyorm 3.0.4 → 3.1.0
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/README.md +174 -0
- package/dist/helpers/appender.helper.d.ts +19 -0
- package/dist/helpers/appender.helper.js +100 -0
- package/dist/helpers/appender.helper.js.map +1 -0
- package/dist/index.d.ts +3 -1
- package/dist/index.js +6 -1
- package/dist/index.js.map +1 -1
- package/dist/repositories/base.interface.d.ts +1 -0
- package/dist/repositories/base.repository.d.ts +6 -0
- package/dist/repositories/base.repository.js +22 -0
- package/dist/repositories/base.repository.js.map +1 -1
- package/dist/repositories/duckdb.repository.d.ts +2 -0
- package/dist/repositories/duckdb.repository.js +7 -0
- package/dist/repositories/duckdb.repository.js.map +1 -1
- package/dist/test.js +182 -13
- package/dist/test.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -20,6 +20,11 @@ A lightweight, TypeScript-friendly ORM designed specifically for DuckDB, focusin
|
|
|
20
20
|
- [🔧 Query Builder](#-query-builder)
|
|
21
21
|
- [🔒 Transactions](#-transactions)
|
|
22
22
|
- [📊 Data Export](#-data-export)
|
|
23
|
+
- [⚡ DuckDB Appender (High-Performance Batch Insert)](#-duckdb-appender-high-performance-batch-insert)
|
|
24
|
+
- [High-Level: `appendEntities` (recommended)](#high-level-appendentities-recommended)
|
|
25
|
+
- [Low-Level: Manual Appender Control](#low-level-manual-appender-control)
|
|
26
|
+
- [Helper Functions: `appendValue` \& `appendEntity`](#helper-functions-appendvalue--appendentity)
|
|
27
|
+
- [When to Use Appender vs `saveAll`](#when-to-use-appender-vs-saveall)
|
|
23
28
|
- [🧠 Advanced Usage](#-advanced-usage)
|
|
24
29
|
- [🛠️ Custom Repositories](#️-custom-repositories)
|
|
25
30
|
- [⚙️ DuckDB Database Configuration](#️-duckdb-database-configuration)
|
|
@@ -27,6 +32,7 @@ A lightweight, TypeScript-friendly ORM designed specifically for DuckDB, focusin
|
|
|
27
32
|
- [🏷️ Decorators](#️-decorators)
|
|
28
33
|
- [🔙 Legacy Decorators (backward compatibility)](#-legacy-decorators-backward-compatibility)
|
|
29
34
|
- [🧰 Repository Methods](#-repository-methods)
|
|
35
|
+
- [⚡ Appender Helpers](#-appender-helpers)
|
|
30
36
|
- [📜 License](#-license)
|
|
31
37
|
|
|
32
38
|
## 📥 Installation
|
|
@@ -135,6 +141,7 @@ main();
|
|
|
135
141
|
- 📊 **Data Export**: Export data to CSV, JSON, and Parquet formats
|
|
136
142
|
- 📄 **Pagination**: Built-in support for paginating large datasets
|
|
137
143
|
- 🔄 **Promise-based API**: Uses the new native Promise support in DuckDB Node-API
|
|
144
|
+
- ⚡ **DuckDB Appender**: High-performance batch insertion using DuckDB's native Appender API
|
|
138
145
|
|
|
139
146
|
## 🏗️ Entity Definition
|
|
140
147
|
|
|
@@ -338,6 +345,166 @@ await duckDbRepository.exportTable('subjects', {
|
|
|
338
345
|
});
|
|
339
346
|
```
|
|
340
347
|
|
|
348
|
+
## ⚡ DuckDB Appender (High-Performance Batch Insert)
|
|
349
|
+
|
|
350
|
+
The DuckDB [Appender API](https://duckdb.org/docs/data/appender.html) provides the fastest way to bulk-load data into a table. It bypasses SQL parsing entirely and uses DuckDB's native binary ingestion path, making it significantly faster than `saveAll` for large datasets.
|
|
351
|
+
|
|
352
|
+
> **Note:** The Appender API does **not** support sequence-based auto-increment defaults. All column values — including primary keys — must be provided by the caller. Use `saveAll` when you need auto-generated IDs.
|
|
353
|
+
|
|
354
|
+
### High-Level: `appendEntities` (recommended)
|
|
355
|
+
|
|
356
|
+
The simplest way to use the appender — just pass an array of entities to your repository:
|
|
357
|
+
|
|
358
|
+
```typescript
|
|
359
|
+
import 'reflect-metadata';
|
|
360
|
+
import {
|
|
361
|
+
DuckDbRepository,
|
|
362
|
+
Entity,
|
|
363
|
+
Column,
|
|
364
|
+
Repository,
|
|
365
|
+
BaseRepository,
|
|
366
|
+
DuckDbLocation
|
|
367
|
+
} from 'duckdb-tinyorm';
|
|
368
|
+
|
|
369
|
+
@Entity({ name: 'events' })
|
|
370
|
+
class Event {
|
|
371
|
+
@Column({ type: 'INTEGER', primaryKey: true })
|
|
372
|
+
Id!: number;
|
|
373
|
+
|
|
374
|
+
@Column({ type: 'VARCHAR', notNull: true })
|
|
375
|
+
Type!: string;
|
|
376
|
+
|
|
377
|
+
@Column({ type: 'DOUBLE' })
|
|
378
|
+
Value!: number;
|
|
379
|
+
|
|
380
|
+
constructor(id: number = 0, type: string = '', value: number = 0) {
|
|
381
|
+
this.Id = id;
|
|
382
|
+
this.Type = type;
|
|
383
|
+
this.Value = value;
|
|
384
|
+
}
|
|
385
|
+
}
|
|
386
|
+
|
|
387
|
+
@Repository(Event)
|
|
388
|
+
class EventRepository extends BaseRepository<Event, number> {
|
|
389
|
+
constructor(db: DuckDbRepository) {
|
|
390
|
+
super(db);
|
|
391
|
+
}
|
|
392
|
+
}
|
|
393
|
+
|
|
394
|
+
async function main() {
|
|
395
|
+
const db = await DuckDbRepository.getInstance({
|
|
396
|
+
name: 'default',
|
|
397
|
+
location: DuckDbLocation.Memory
|
|
398
|
+
});
|
|
399
|
+
|
|
400
|
+
const eventRepo = new EventRepository(db);
|
|
401
|
+
await eventRepo.init();
|
|
402
|
+
|
|
403
|
+
// Build a large batch
|
|
404
|
+
const events: Event[] = [];
|
|
405
|
+
for (let i = 1; i <= 100_000; i++) {
|
|
406
|
+
events.push(new Event(i, i % 2 === 0 ? 'click' : 'view', Math.random() * 100));
|
|
407
|
+
}
|
|
408
|
+
|
|
409
|
+
// Bulk insert via the appender — much faster than saveAll for large arrays
|
|
410
|
+
await eventRepo.appendEntities(events);
|
|
411
|
+
|
|
412
|
+
const all = await eventRepo.findAll();
|
|
413
|
+
console.log(`Inserted ${all.length} events`);
|
|
414
|
+
}
|
|
415
|
+
|
|
416
|
+
main();
|
|
417
|
+
```
|
|
418
|
+
|
|
419
|
+
`appendEntities` will:
|
|
420
|
+
1. Create an appender for the entity's table.
|
|
421
|
+
2. Iterate over every entity using `@Column({ type })` metadata to pick the correct typed append method.
|
|
422
|
+
3. Flush the appender on success and always close it (even on error).
|
|
423
|
+
|
|
424
|
+
### Low-Level: Manual Appender Control
|
|
425
|
+
|
|
426
|
+
For scenarios where you need full control (e.g., streaming rows, mixing sources, or custom column ordering), use the appender directly:
|
|
427
|
+
|
|
428
|
+
```typescript
|
|
429
|
+
import { DuckDbRepository, DuckDbLocation, DuckDBAppender } from 'duckdb-tinyorm';
|
|
430
|
+
|
|
431
|
+
async function main() {
|
|
432
|
+
const db = await DuckDbRepository.getInstance({
|
|
433
|
+
name: 'default',
|
|
434
|
+
location: DuckDbLocation.Memory
|
|
435
|
+
});
|
|
436
|
+
|
|
437
|
+
// Create the table first
|
|
438
|
+
await db.executeQuery(`
|
|
439
|
+
CREATE TABLE IF NOT EXISTS events (
|
|
440
|
+
Id INTEGER PRIMARY KEY,
|
|
441
|
+
Type VARCHAR NOT NULL,
|
|
442
|
+
Value DOUBLE
|
|
443
|
+
)
|
|
444
|
+
`);
|
|
445
|
+
|
|
446
|
+
// Get a raw appender
|
|
447
|
+
const appender: DuckDBAppender = await db.createAppender('events');
|
|
448
|
+
|
|
449
|
+
appender.appendInteger(1);
|
|
450
|
+
appender.appendVarchar('click');
|
|
451
|
+
appender.appendDouble(42.5);
|
|
452
|
+
appender.endRow();
|
|
453
|
+
|
|
454
|
+
appender.appendInteger(2);
|
|
455
|
+
appender.appendVarchar('view');
|
|
456
|
+
appender.appendDouble(17.3);
|
|
457
|
+
appender.endRow();
|
|
458
|
+
|
|
459
|
+
// Flush & close (flushSync writes pending rows; closeSync releases the appender)
|
|
460
|
+
appender.flushSync();
|
|
461
|
+
appender.closeSync();
|
|
462
|
+
|
|
463
|
+
const rows = await db.executeQuery('SELECT * FROM events');
|
|
464
|
+
console.table(rows);
|
|
465
|
+
}
|
|
466
|
+
|
|
467
|
+
main();
|
|
468
|
+
```
|
|
469
|
+
|
|
470
|
+
### Helper Functions: `appendValue` & `appendEntity`
|
|
471
|
+
|
|
472
|
+
Two utility functions are exported for building custom appender workflows:
|
|
473
|
+
|
|
474
|
+
```typescript
|
|
475
|
+
import { appendValue, appendEntity, DuckDBAppender } from 'duckdb-tinyorm';
|
|
476
|
+
|
|
477
|
+
// appendValue — maps a single JS value to the right typed append method
|
|
478
|
+
appendValue(appender, 42); // appendInteger
|
|
479
|
+
appendValue(appender, 'hello'); // appendVarchar
|
|
480
|
+
appendValue(appender, 3.14); // appendDouble
|
|
481
|
+
appendValue(appender, true); // appendBoolean
|
|
482
|
+
appendValue(appender, BigInt(999)); // appendBigInt
|
|
483
|
+
appendValue(appender, null); // appendNull
|
|
484
|
+
|
|
485
|
+
// Override the inferred method via an explicit SQL type:
|
|
486
|
+
appendValue(appender, 7, 'SMALLINT'); // appendSmallInt
|
|
487
|
+
appendValue(appender, 7, 'DOUBLE'); // appendDouble
|
|
488
|
+
|
|
489
|
+
// appendEntity — appends all decorated columns of an entity + calls endRow()
|
|
490
|
+
appendEntity(appender, event, Event);
|
|
491
|
+
|
|
492
|
+
// Pre-compute property names outside the loop for maximum throughput:
|
|
493
|
+
const props = Object.getOwnPropertyNames(new Event());
|
|
494
|
+
for (const e of events) {
|
|
495
|
+
appendEntity(appender, e, Event, props);
|
|
496
|
+
}
|
|
497
|
+
```
|
|
498
|
+
|
|
499
|
+
### When to Use Appender vs `saveAll`
|
|
500
|
+
|
|
501
|
+
| Feature | `saveAll` | `appendEntities` / Appender |
|
|
502
|
+
|---|---|---|
|
|
503
|
+
| Auto-increment PKs | ✅ Supported | ❌ Must supply all values |
|
|
504
|
+
| Speed (large batches) | Moderate (SQL parsing) | ⚡ Fast (binary ingestion) |
|
|
505
|
+
| SQL constraints evaluated | Per-statement | At flush time |
|
|
506
|
+
| Best for | Small-to-medium inserts, auto-IDs | Large bulk loads, ETL, analytics |
|
|
507
|
+
|
|
341
508
|
## 🧠 Advanced Usage
|
|
342
509
|
|
|
343
510
|
### 🛠️ Custom Repositories
|
|
@@ -418,6 +585,13 @@ const fileDb = DuckDbRepository.getInstances({
|
|
|
418
585
|
- 🔄 `withTransaction(callback)`: Executes operations within a transaction
|
|
419
586
|
- 📊 `exportData(options)`: Exports table data
|
|
420
587
|
- 📈 `exportQuery(query, options)`: Exports query results
|
|
588
|
+
- ⚡ `appendEntities(entities)`: High-performance bulk insert via the DuckDB Appender API
|
|
589
|
+
|
|
590
|
+
### ⚡ Appender Helpers
|
|
591
|
+
|
|
592
|
+
- `appendValue(appender, value, sqlType?)`: Maps a JS value to the correct typed appender method
|
|
593
|
+
- `appendEntity(appender, entity, classType, propertyNames?)`: Appends all decorated columns and calls `endRow()`
|
|
594
|
+
- `createAppender(tableName, schema?, catalog?)`: Creates a raw `DuckDBAppender` (on `DuckDbRepository`)
|
|
421
595
|
|
|
422
596
|
## 📜 License
|
|
423
597
|
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import 'reflect-metadata';
|
|
2
|
+
import { DuckDBAppender } from '@duckdb/node-api';
|
|
3
|
+
/**
|
|
4
|
+
* Appends a single JavaScript value to an open DuckDBAppender column.
|
|
5
|
+
* Uses the declared SQL FieldType metadata (if provided) to choose the most
|
|
6
|
+
* appropriate typed append method; falls back on the runtime JS type.
|
|
7
|
+
*/
|
|
8
|
+
export declare function appendValue(appender: DuckDBAppender, value: any, sqlType?: string): void;
|
|
9
|
+
/**
|
|
10
|
+
* Appends all fields of an entity to the appender and calls endRow().
|
|
11
|
+
* All column values (including primary keys) are taken directly from the entity.
|
|
12
|
+
* Note: when using the appender, auto-increment primary key values must be
|
|
13
|
+
* provided by the caller, as DuckDB sequence-based defaults are not supported
|
|
14
|
+
* via the Appender API. For auto-generated IDs, use `saveAll` instead.
|
|
15
|
+
*
|
|
16
|
+
* @param propertyNames - Pre-computed list of property names to avoid repeated
|
|
17
|
+
* prototype instantiation in batch operations.
|
|
18
|
+
*/
|
|
19
|
+
export declare function appendEntity<T extends object>(appender: DuckDBAppender, entity: T, classType: new () => T, propertyNames?: string[]): void;
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.appendValue = appendValue;
|
|
4
|
+
exports.appendEntity = appendEntity;
|
|
5
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
6
|
+
require("reflect-metadata");
|
|
7
|
+
/**
|
|
8
|
+
* Appends a single JavaScript value to an open DuckDBAppender column.
|
|
9
|
+
* Uses the declared SQL FieldType metadata (if provided) to choose the most
|
|
10
|
+
* appropriate typed append method; falls back on the runtime JS type.
|
|
11
|
+
*/
|
|
12
|
+
function appendValue(appender, value, sqlType) {
|
|
13
|
+
if (value === undefined || value === null) {
|
|
14
|
+
appender.appendNull();
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
const normalizedType = (sqlType ?? '').toUpperCase().trim();
|
|
18
|
+
if (typeof value === 'boolean') {
|
|
19
|
+
appender.appendBoolean(value);
|
|
20
|
+
return;
|
|
21
|
+
}
|
|
22
|
+
if (typeof value === 'bigint') {
|
|
23
|
+
if (normalizedType.includes('HUGEINT') || normalizedType.includes('UHUGEINT')) {
|
|
24
|
+
appender.appendHugeInt(value);
|
|
25
|
+
}
|
|
26
|
+
else if (normalizedType.includes('UBIGINT')) {
|
|
27
|
+
appender.appendUBigInt(value);
|
|
28
|
+
}
|
|
29
|
+
else {
|
|
30
|
+
appender.appendBigInt(value);
|
|
31
|
+
}
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
if (typeof value === 'number') {
|
|
35
|
+
if (normalizedType.includes('FLOAT') ||
|
|
36
|
+
normalizedType.includes('DOUBLE') ||
|
|
37
|
+
normalizedType.includes('REAL') ||
|
|
38
|
+
normalizedType.includes('DECIMAL') ||
|
|
39
|
+
normalizedType.includes('NUMERIC')) {
|
|
40
|
+
appender.appendDouble(value);
|
|
41
|
+
}
|
|
42
|
+
else if (normalizedType.includes('TINYINT') || normalizedType === 'INT1') {
|
|
43
|
+
appender.appendTinyInt(value);
|
|
44
|
+
}
|
|
45
|
+
else if (normalizedType.includes('SMALLINT') || normalizedType === 'INT2') {
|
|
46
|
+
appender.appendSmallInt(value);
|
|
47
|
+
}
|
|
48
|
+
else if (normalizedType.includes('HUGEINT') ||
|
|
49
|
+
normalizedType.includes('BIGINT') ||
|
|
50
|
+
normalizedType === 'INT8') {
|
|
51
|
+
appender.appendBigInt(BigInt(value));
|
|
52
|
+
}
|
|
53
|
+
else if (normalizedType === 'INTEGER' ||
|
|
54
|
+
normalizedType === 'INT' ||
|
|
55
|
+
normalizedType === 'INT4' ||
|
|
56
|
+
normalizedType === 'SIGNED') {
|
|
57
|
+
appender.appendInteger(value);
|
|
58
|
+
}
|
|
59
|
+
else {
|
|
60
|
+
// Default numeric fallback: use double for fractional, integer for whole
|
|
61
|
+
if (Number.isInteger(value)) {
|
|
62
|
+
appender.appendInteger(value);
|
|
63
|
+
}
|
|
64
|
+
else {
|
|
65
|
+
appender.appendDouble(value);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
return;
|
|
69
|
+
}
|
|
70
|
+
if (typeof value === 'string') {
|
|
71
|
+
appender.appendVarchar(value);
|
|
72
|
+
return;
|
|
73
|
+
}
|
|
74
|
+
if (value instanceof Uint8Array) {
|
|
75
|
+
appender.appendBlob(value);
|
|
76
|
+
return;
|
|
77
|
+
}
|
|
78
|
+
// Fallback: serialize as VARCHAR
|
|
79
|
+
appender.appendVarchar(String(value));
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Appends all fields of an entity to the appender and calls endRow().
|
|
83
|
+
* All column values (including primary keys) are taken directly from the entity.
|
|
84
|
+
* Note: when using the appender, auto-increment primary key values must be
|
|
85
|
+
* provided by the caller, as DuckDB sequence-based defaults are not supported
|
|
86
|
+
* via the Appender API. For auto-generated IDs, use `saveAll` instead.
|
|
87
|
+
*
|
|
88
|
+
* @param propertyNames - Pre-computed list of property names to avoid repeated
|
|
89
|
+
* prototype instantiation in batch operations.
|
|
90
|
+
*/
|
|
91
|
+
function appendEntity(appender, entity, classType, propertyNames) {
|
|
92
|
+
const names = propertyNames ?? Object.getOwnPropertyNames(new classType());
|
|
93
|
+
for (const propertyName of names) {
|
|
94
|
+
const sqlType = Reflect.getMetadata('FieldType', classType.prototype, propertyName);
|
|
95
|
+
const value = entity[propertyName];
|
|
96
|
+
appendValue(appender, value, sqlType);
|
|
97
|
+
}
|
|
98
|
+
appender.endRow();
|
|
99
|
+
}
|
|
100
|
+
//# sourceMappingURL=appender.helper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"appender.helper.js","sourceRoot":"","sources":["../../src/helpers/appender.helper.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -9,4 +9,6 @@ import { Transaction } from './repositories/transaction';
|
|
|
9
9
|
import { Page, Pageable } from './pagination/pagination';
|
|
10
10
|
import { Migration, MigrationRunner, MigrationOptions } from './migration/migration';
|
|
11
11
|
import { OrmBaseError, EntityNotFoundError, PrimaryKeyError, TableCreationError, QueryExecutionError, TransactionError, ValidationError, MigrationError, ConnectionError } from './errors/orm-errors';
|
|
12
|
-
|
|
12
|
+
import { DuckDBAppender } from '@duckdb/node-api';
|
|
13
|
+
import { appendValue, appendEntity } from './helpers/appender.helper';
|
|
14
|
+
export { DataTypeDecorator, Id, Unique, BaseRepository, Entity, Repository, DuckDbRepository, IRepository, DuckDbConfig, DuckDbLocation, getClassName, getTableName, getPrimaryId, generateCreateTableStatement, generateInsertIntoStatement, QueryBuilder, Transaction, Page, Pageable, Migration, MigrationRunner, MigrationOptions, Column, ColumnOptions, NotNull, Default, Check, AutoIncrement, TableOptions, OrmBaseError, ConnectionError, EntityNotFoundError, PrimaryKeyError, TableCreationError, QueryExecutionError, TransactionError, ValidationError, MigrationError, ExportOptions, DuckDBAppender, appendValue, appendEntity };
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.MigrationError = exports.ValidationError = exports.TransactionError = exports.QueryExecutionError = exports.TableCreationError = exports.PrimaryKeyError = exports.EntityNotFoundError = exports.ConnectionError = exports.OrmBaseError = exports.AutoIncrement = exports.Check = exports.Default = exports.NotNull = exports.Column = exports.MigrationRunner = exports.Migration = exports.Transaction = exports.QueryBuilder = exports.generateInsertIntoStatement = exports.generateCreateTableStatement = exports.getPrimaryId = exports.getTableName = exports.getClassName = exports.DuckDbLocation = exports.DuckDbRepository = exports.Repository = exports.Entity = exports.BaseRepository = exports.Unique = exports.Id = exports.DataTypeDecorator = void 0;
|
|
3
|
+
exports.appendEntity = exports.appendValue = exports.DuckDBAppender = exports.MigrationError = exports.ValidationError = exports.TransactionError = exports.QueryExecutionError = exports.TableCreationError = exports.PrimaryKeyError = exports.EntityNotFoundError = exports.ConnectionError = exports.OrmBaseError = exports.AutoIncrement = exports.Check = exports.Default = exports.NotNull = exports.Column = exports.MigrationRunner = exports.Migration = exports.Transaction = exports.QueryBuilder = exports.generateInsertIntoStatement = exports.generateCreateTableStatement = exports.getPrimaryId = exports.getTableName = exports.getClassName = exports.DuckDbLocation = exports.DuckDbRepository = exports.Repository = exports.Entity = exports.BaseRepository = exports.Unique = exports.Id = exports.DataTypeDecorator = void 0;
|
|
4
4
|
require("reflect-metadata");
|
|
5
5
|
const data_type_decorator_1 = require("./constants/data-type.decorator");
|
|
6
6
|
Object.defineProperty(exports, "DataTypeDecorator", { enumerable: true, get: function () { return data_type_decorator_1.DataTypeDecorator; } });
|
|
@@ -41,4 +41,9 @@ Object.defineProperty(exports, "TransactionError", { enumerable: true, get: func
|
|
|
41
41
|
Object.defineProperty(exports, "ValidationError", { enumerable: true, get: function () { return orm_errors_1.ValidationError; } });
|
|
42
42
|
Object.defineProperty(exports, "MigrationError", { enumerable: true, get: function () { return orm_errors_1.MigrationError; } });
|
|
43
43
|
Object.defineProperty(exports, "ConnectionError", { enumerable: true, get: function () { return orm_errors_1.ConnectionError; } });
|
|
44
|
+
const node_api_1 = require("@duckdb/node-api");
|
|
45
|
+
Object.defineProperty(exports, "DuckDBAppender", { enumerable: true, get: function () { return node_api_1.DuckDBAppender; } });
|
|
46
|
+
const appender_helper_1 = require("./helpers/appender.helper");
|
|
47
|
+
Object.defineProperty(exports, "appendValue", { enumerable: true, get: function () { return appender_helper_1.appendValue; } });
|
|
48
|
+
Object.defineProperty(exports, "appendEntity", { enumerable: true, get: function () { return appender_helper_1.appendEntity; } });
|
|
44
49
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,4BAA0B;AAC1B,yEAGyC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,4BAA0B;AAC1B,yEAGyC;AAkBrC,kGApBA,uCAAiB,OAoBA;AAIjB,uFAxBmB,4BAAM,OAwBnB;AAHN,mFArB2B,wBAAE,OAqB3B;AAIF,2FAzB+B,gCAAU,OAyB/B;AAHV,uFAtB2C,4BAAM,OAsB3C;AAsBN,uFA3CA,4BAAM,OA2CA;AAEN,wFA7CuB,6BAAO,OA6CvB;AACP,wFA9CgC,6BAAO,OA8ChC;AACP,sFA/CyC,2BAAK,OA+CzC;AACL,8FAhDgD,mCAAa,OAgDhD;AA9CjB,oEAAgE;AAoB5D,+FApBK,gCAAc,OAoBL;AAnBlB,wEAAiH;AAsB7G,iGAtBK,oCAAgB,OAsBL;AAGhB,+FAzBqC,kCAAc,OAyBrC;AAvBlB,mEAAkJ;AAwB9I,6FAxBK,gCAAY,OAwBL;AACZ,6FAzBmB,gCAAY,OAyBnB;AACZ,6FA1BiC,gCAAY,OA0BjC;AACZ,6GA3B+C,gDAA4B,OA2B/C;AAC5B,4GA5B6E,+CAA2B,OA4B7E;AA3B/B,yDAAqD;AA4BjD,6FA5BK,4BAAY,OA4BL;AA3BhB,4DAAyD;AA4BrD,4FA5BK,yBAAW,OA4BL;AA1Bf,qDAAqF;AA6BjF,0FA7BK,qBAAS,OA6BL;AACT,gGA9BgB,2BAAe,OA8BhB;AA7BnB,oDAG6B;AAuCzB,6FAzCA,yBAAY,OAyCA;AAEZ,oGA3Cc,gCAAmB,OA2Cd;AACnB,gGA5CmC,4BAAe,OA4CnC;AACf,mGA7CoD,+BAAkB,OA6CpD;AAClB,oGA7CA,gCAAmB,OA6CA;AACnB,iGA9CqB,6BAAgB,OA8CrB;AAChB,gGA/CuC,4BAAe,OA+CvC;AACf,+FAhDwD,2BAAc,OAgDxD;AAPd,gGAzCwE,4BAAe,OAyCxE;AAvCnB,+CAAkD;AAoD9C,+FApDK,yBAAc,OAoDL;AAnDlB,+DAAsE;AAoDlE,4FApDK,6BAAW,OAoDL;AACX,6FArDkB,8BAAY,OAqDlB"}
|
|
@@ -21,4 +21,5 @@ export interface IRepository<T extends object, Tid> {
|
|
|
21
21
|
toEntity(data: Record<string, any>): T;
|
|
22
22
|
exportData(options: ExportOptions): Promise<void>;
|
|
23
23
|
exportQuery(query: string, options: ExportOptions): Promise<void>;
|
|
24
|
+
appendEntities(entities: T[]): Promise<void>;
|
|
24
25
|
}
|
|
@@ -30,4 +30,10 @@ export declare class BaseRepository<T extends object, Tid> implements IRepositor
|
|
|
30
30
|
toEntity(data: Record<string, any>): T;
|
|
31
31
|
exportData(options: ExportOptions): Promise<void>;
|
|
32
32
|
exportQuery(query: string, options: ExportOptions): Promise<void>;
|
|
33
|
+
/**
|
|
34
|
+
* Efficiently inserts a large batch of entities using the DuckDB Appender API.
|
|
35
|
+
* This is significantly faster than `saveAll` for large datasets as it bypasses
|
|
36
|
+
* SQL statement parsing and uses DuckDB's native binary ingestion path.
|
|
37
|
+
*/
|
|
38
|
+
appendEntities(entities: T[]): Promise<void>;
|
|
33
39
|
}
|
|
@@ -5,6 +5,7 @@ require("reflect-metadata");
|
|
|
5
5
|
const table_util_helper_1 = require("../helpers/table-util.helper");
|
|
6
6
|
const query_builder_1 = require("../query/query-builder");
|
|
7
7
|
const orm_errors_1 = require("../errors/orm-errors");
|
|
8
|
+
const appender_helper_1 = require("../helpers/appender.helper");
|
|
8
9
|
// Add 'extends object' constraint to T
|
|
9
10
|
class BaseRepository {
|
|
10
11
|
repository;
|
|
@@ -246,6 +247,27 @@ class BaseRepository {
|
|
|
246
247
|
async exportQuery(query, options) {
|
|
247
248
|
return this.repository.exportQuery(query, options);
|
|
248
249
|
}
|
|
250
|
+
/**
|
|
251
|
+
* Efficiently inserts a large batch of entities using the DuckDB Appender API.
|
|
252
|
+
* This is significantly faster than `saveAll` for large datasets as it bypasses
|
|
253
|
+
* SQL statement parsing and uses DuckDB's native binary ingestion path.
|
|
254
|
+
*/
|
|
255
|
+
async appendEntities(entities) {
|
|
256
|
+
if (!entities.length)
|
|
257
|
+
return;
|
|
258
|
+
const appender = await this.repository.createAppender(this.tableName);
|
|
259
|
+
// Compute property names once to avoid repeated prototype instantiation per row.
|
|
260
|
+
const propertyNames = Object.getOwnPropertyNames(new this.classType());
|
|
261
|
+
try {
|
|
262
|
+
for (const entity of entities) {
|
|
263
|
+
(0, appender_helper_1.appendEntity)(appender, entity, this.classType, propertyNames);
|
|
264
|
+
}
|
|
265
|
+
appender.flushSync();
|
|
266
|
+
}
|
|
267
|
+
finally {
|
|
268
|
+
appender.closeSync();
|
|
269
|
+
}
|
|
270
|
+
}
|
|
249
271
|
}
|
|
250
272
|
exports.BaseRepository = BaseRepository;
|
|
251
273
|
//# sourceMappingURL=base.repository.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.repository.js","sourceRoot":"","sources":["../../src/repositories/base.repository.ts"],"names":[],"mappings":";;;AAAA,4BAA0B;AAE1B,oEAA4D;AAE5D,0DAAsD;AAGtD,qDAAmH;
|
|
1
|
+
{"version":3,"file":"base.repository.js","sourceRoot":"","sources":["../../src/repositories/base.repository.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { DuckDBAppender } from '@duckdb/node-api';
|
|
1
2
|
import { Transaction } from './transaction';
|
|
2
3
|
import { Secret } from './models.interface';
|
|
3
4
|
export declare enum DuckDbLocation {
|
|
@@ -36,6 +37,7 @@ export declare class DuckDbRepository {
|
|
|
36
37
|
deleteTableData(tableName: string): Promise<any[]>;
|
|
37
38
|
saveQueryToParquet(name: string, query: string, folder: string): Promise<void>;
|
|
38
39
|
createTransaction(): Transaction;
|
|
40
|
+
createAppender(tableName: string, schema?: string, catalog?: string): Promise<DuckDBAppender>;
|
|
39
41
|
exportTable<T>(tableName: string, options: ExportOptions): Promise<void>;
|
|
40
42
|
exportQuery(query: string, options: ExportOptions): Promise<void>;
|
|
41
43
|
dropSequence(sequenceName: string): Promise<void>;
|
|
@@ -242,6 +242,13 @@ class DuckDbRepository {
|
|
|
242
242
|
}
|
|
243
243
|
return new transaction_1.Transaction(this.connection);
|
|
244
244
|
}
|
|
245
|
+
async createAppender(tableName, schema, catalog) {
|
|
246
|
+
await this.ensureConnected();
|
|
247
|
+
if (!this.connection) {
|
|
248
|
+
throw new orm_errors_1.ConnectionError("Cannot create appender: Connection is not established.");
|
|
249
|
+
}
|
|
250
|
+
return this.connection.createAppender(tableName, schema, catalog);
|
|
251
|
+
}
|
|
245
252
|
async exportTable(tableName, options) {
|
|
246
253
|
await this.ensureConnected();
|
|
247
254
|
if (this.connection == undefined) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"duckdb.repository.js","sourceRoot":"","sources":["../../src/repositories/duckdb.repository.ts"],"names":[],"mappings":";;;AAAA,uDAAuD;AACvD,+CAAoE;AAEpE,8DAAiE;AACjE,oEAAyG;AACzG,oDAA2K;AAC3K,+CAA4C;AAC5C,qDAAuD;AACvD,yDAA8H;AAE9H,IAAY,cAGX;AAHD,WAAY,cAAc;IACtB,2BAAS,CAAA;IACT,qCAAmB,CAAA;AACvB,CAAC,EAHW,cAAc,8BAAd,cAAc,QAGzB;AASD,MAAa,gBAAgB;IACjB,QAAQ,GAAoB,SAAS,CAAC;IACtC,UAAU,GAAsB,SAAS,CAAC;IAE1C,MAAM,GAAyB,IAAI,GAAG,EAAE,CAAC;IACzC,QAAQ,GAAG,IAAI,CAAC;IAChB,iBAAiB,GAAyB,IAAI,CAAC;IAC/C,WAAW,GAAyB,IAAI,CAAC;IAEzC,MAAM,CAAC,QAAQ,GAA4B,IAAI,CAAC;IAEjD,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,YAA2B;QACvD,IAAI,CAAC,YAAY,EAAE,CAAC;YAChB,YAAY,GAAG;gBACX,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,cAAc,CAAC,MAAM;gBAC/B,QAAQ,EAAE,SAAS;aACtB,CAAC;QACN,CAAC;QACD,IAAI,YAAY,EAAE,QAAQ,IAAI,cAAc,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;YAC1E,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACtD,CAAC;QAED,MAAM,UAAU,GAAG,YAAY,CAAC,QAAQ,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QAC3H,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAExB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACjB,IAAI,CAAC,QAAQ,GAAG,IAAI,gBAAgB,CAAC,UAAU,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;YACvE,sCAAsC;YACtC,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;QACpC,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAED,mDAAmD;IAC5C,MAAM,CAAC,YAAY,CAAC,YAA2B;QAClD,IAAI,CAAC,YAAY,EAAE,CAAC;YAChB,YAAY,GAAG;gBACX,IAAI,EAAE,SAAS;gBACf,QAAQ,EAAE,cAAc,CAAC,MAAM;gBAC/B,QAAQ,EAAE,SAAS;aACtB,CAAC;QACN,CAAC;QACD,IAAI,YAAY,EAAE,QAAQ,IAAI,cAAc,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;YAC1E,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACtD,CAAC;QAED,MAAM,UAAU,GAAG,YAAY,CAAC,QAAQ,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QAC3H,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAExB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACjB,IAAI,CAAC,QAAQ,GAAG,IAAI,gBAAgB,CAAC,UAAU,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;QAC3E,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAED,YAAsB,QAAiB,EAAE,OAAgC;QACrE,iEAAiE;QACjE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,IAAI,UAAU,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;YAC5E,OAAO,CAAC,KAAK,CAAC,qCAAqC,EAAE,KAAK,CAAC,CAAC;YAC5D,MAAM,KAAK,CAAC;QAChB,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,KAAK,CAAC,QAAQ,CAAC,QAAgB,EAAE,OAAgC;QACrE,IAAI,CAAC;YACD,mEAAmE;YACnE,IAAI,CAAC,QAAQ,GAAG,MAAM,yBAAc,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACtD,OAAO,CAAC,GAAG,CAAC,8BAA8B,QAAQ,EAAE,CAAC,CAAC;YAEtD,wEAAwE;YACxE,IAAI,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAC3B,wCAAwC;YAC5C,CAAC;YAED,kDAAkD;YAClD,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAChB,IAAI,CAAC,UAAU,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;gBAChD,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;gBACtB,OAAO,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;YAC9D,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,uCAAuC,EAAE,KAAK,CAAC,CAAC;YAC9D,MAAM,KAAK,CAAC;QAChB,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,OAAO;QAChB,2DAA2D;QAC3D,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC,iBAAiB,CAAC;QAClC,CAAC;QAED,iDAAiD;QACjD,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpC,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;QAC7B,CAAC;QAED,iCAAiC;QACjC,IAAI,CAAC,iBAAiB,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC3D,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACjC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE;qBAClB,IAAI,CAAC,UAAU,CAAC,EAAE;oBACf,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;oBAC7B,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;oBACtB,OAAO,EAAE,CAAC;gBACd,CAAC,CAAC;qBACD,KAAK,CAAC,KAAK,CAAC,EAAE;oBACX,OAAO,CAAC,KAAK,CAAC,6BAA6B,EAAE,KAAK,CAAC,CAAC;oBACpD,MAAM,CAAC,KAAK,CAAC,CAAC;gBAClB,CAAC,CAAC;qBACD,OAAO,CAAC,GAAG,EAAE;oBACV,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;gBAClC,CAAC,CAAC,CAAC;YACX,CAAC;iBAAM,CAAC;gBACJ,OAAO,EAAE,CAAC;YACd,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAClC,CAAC;IAEO,KAAK,CAAC,eAAe;QACzB,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACpC,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;QACzB,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,sBAAsB,CAAI,SAAiB,EAAE,SAAqB;QAC3E,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC7B,IAAI,CAAC;YACD,uDAAuD;YACvD,MAAM,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,EAAE,SAAS,CAAC,IAAI,SAAS,CAAC;YAEjF,iCAAiC;YACjC,MAAM,QAAQ,GAAG,IAAI,SAAS,EAAE,CAAC;YACjC,MAAM,aAAa,GAAG,MAAM,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;YAC3D,MAAM,SAAS,GAA2B,EAAE,CAAC;YAE7C,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE,CAAC;gBACvC,MAAM,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,eAAe,EAAE,SAAS,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;gBAC9F,MAAM,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,YAAY,EAAE,SAAS,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;gBAE1F,IAAI,aAAa,IAAI,YAAY,EAAE,CAAC;oBAChC,gEAAgE;oBAChE,MAAM,YAAY,GAAG,OAAO,eAAe,IAAI,YAAY,EAAE,CAAC;oBAC9D,SAAS,CAAC,YAAY,CAAC,GAAG,YAAY,CAAC;oBAEvC,wBAAwB;oBACxB,MAAM,uBAAuB,GAAG,iCAAiC,YAAY,WAAW,CAAC;oBACzF,IAAI,CAAC;wBACD,MAAM,IAAI,CAAC,YAAY,CAAC,uBAAuB,CAAC,CAAC;wBACjD,OAAO,CAAC,GAAG,CAAC,YAAY,YAAY,2BAA2B,CAAC,CAAC;oBACrE,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACX,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,GAAG,CAAC,CAAC;wBAChD,MAAM,GAAG,CAAC;oBACd,CAAC;gBACL,CAAC;YACL,CAAC;YAED,8BAA8B;YAC9B,OAAO,CAAC,cAAc,CAAC,WAAW,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;YAE1D,uBAAuB;YACvB,MAAM,oBAAoB,GAAG,IAAA,gDAA4B,EAAC,eAAe,EAAE,SAAS,CAAC,CAAC;YAEtF,IAAI,CAAC;gBACD,MAAM,IAAI,CAAC,YAAY,CAAC,oBAAoB,CAAC,CAAC;gBAC9C,OAAO,CAAC,GAAG,CAAC,SAAS,eAAe,2BAA2B,CAAC,CAAC;YACrE,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACX,OAAO,CAAC,KAAK,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC;gBACvC,MAAM,GAAG,CAAC;YACd,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACnB,MAAM,GAAG,CAAC;QACd,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,kBAAkB,CAAC,cAAsB;QAClD,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAC,YAAY,CAAC,2FAA2F,cAAc,IAAI,CAAC,CAAC;IAC5I,CAAC;IAEM,KAAK,CAAC,YAAY,CAAC,KAAa;QACnC,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC7B,OAAO,IAAA,wBAAY,EAAC,IAAI,CAAC,UAAW,EAAE,KAAK,CAAC,CAAC;IACjD,CAAC;IAEM,KAAK,CAAC,YAAY,CAAI,SAAiB,EAAE,SAAqB,EAAE,IAAU;QAC7E,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IACxD,CAAC;IAEM,KAAK,CAAC,YAAY,CAAI,SAAiB,EAAE,SAAqB,EAAE,IAAU;QAC7E,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC7B,IAAI,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC;YAAE,OAAO;QAE5B,uDAAuD;QACvD,MAAM,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC,WAAW,EAAE,SAAS,CAAC,IAAI,SAAS,CAAC;QAEjF,MAAM,IAAI,CAAC,sBAAsB,CAAI,eAAe,EAAE,SAAS,CAAC,CAAC;QACjE,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAA,qCAAoB,EAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEjF,kCAAkC;QAClC,MAAM,SAAS,GAAG,IAAA,+CAA2B,EAAC,eAAe,EAAE,SAAS,CAAC,GAAG,KAAK,CAAC;QAClF,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,SAAS,CAAC,CAAC;QAE5C,2CAA2C;QAC3C,MAAM,IAAA,sBAAU,EAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IACjD,CAAC;IAEM,KAAK,CAAC,aAAa,CAAC,IAAY,EAAE,UAAmB;QACxD,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,GAAG,IAAI,UAAU,CAAC;QACnC,MAAM,SAAS,GAAG,QAAQ,IAAI,EAAE,CAAC;QACjC,MAAM,IAAA,yBAAa,EAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;IAC1E,CAAC;IAEM,KAAK,CAAC,mBAAmB,CAAC,eAAuB,EAAE,eAAuB,EAAE,UAAmB;QAClG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,GAAG,eAAe,UAAU,CAAC;QAC9C,MAAM,IAAA,yBAAa,EAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,EAAE,QAAQ,eAAe,EAAE,EAAE,UAAU,CAAC,CAAC;IAC1F,CAAC;IAEM,KAAK,CAAC,oBAAoB;QAC7B,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC7B,MAAM,iBAAiB,GAAmB,EAAE,CAAC;QAC7C,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;YAC/B,IAAI,KAAK;gBACL,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;oBACjD,OAAO,CAAC,GAAG,CAAC,sBAAsB,GAAG,eAAe,CAAC,CAAC;gBAC1D,CAAC,CAAC,CAAC,CAAC;QACZ,CAAC,CAAC,CAAC;QAEH,MAAM,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IACzC,CAAC;IAEM,KAAK,CAAC,SAAS,CAAC,SAAiB;QACpC,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC7B,MAAM,IAAA,qBAAS,EAAC,IAAI,CAAC,UAAU,EAAE,OAAO,GAAG,SAAS,CAAC,CAAC;QACtD,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7B,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAClC,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,eAAe,CAAC,SAAiB;QAC1C,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC7B,OAAO,MAAM,IAAA,2BAAe,EAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IAC7D,CAAC;IAEM,KAAK,CAAC,kBAAkB,CAAC,IAAY,EAAE,KAAa,EAAE,MAAc;QACvE,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,GAAG,IAAI,UAAU,CAAC;QACnC,MAAM,IAAA,8BAAkB,EAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IACvE,CAAC;IAED,gDAAgD;IACzC,iBAAiB;QACpB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACnB,MAAM,IAAI,4BAAe,CAAC,2DAA2D,CAAC,CAAC;QAC3F,CAAC;QACD,OAAO,IAAI,yBAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC5C,CAAC;IAEM,KAAK,CAAC,WAAW,CAAI,SAAiB,EAAE,OAAsB;QACjE,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC7B,IAAI,IAAI,CAAC,UAAU,IAAI,SAAS,EAAE,CAAC;YAC/B,MAAM,IAAI,4BAAe,CAAC,gCAAgC,CAAC,CAAC;QAChE,CAAC;QACD,MAAM,eAAe,GAAG,QAAQ,SAAS,EAAE,CAAC;QAE5C,QAAQ,OAAO,CAAC,MAAM,EAAE,CAAC;YACrB,KAAK,KAAK;gBACN,OAAO,MAAM,IAAA,uBAAW,EACpB,IAAI,CAAC,UAAU,EACf,eAAe,EACf,OAAO,CAAC,QAAQ,EAChB,OAAO,CAAC,UAAU,CACrB,CAAC;YACN,KAAK,MAAM;gBACP,OAAO,MAAM,IAAA,wBAAY,EACrB,IAAI,CAAC,UAAU,EACf,eAAe,EACf,OAAO,CAAC,QAAQ,EAChB,OAAO,CAAC,WAAW,CACtB,CAAC;YACN,KAAK,SAAS;gBACV,OAAO,MAAM,IAAA,2BAAe,EACxB,IAAI,CAAC,UAAU,EACf,eAAe,EACf,OAAO,CAAC,QAAQ,EAChB,OAAO,CAAC,cAAc,CACzB,CAAC;YACN;gBACI,MAAM,IAAI,KAAK,CAAC,uBAAuB,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QACjE,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,KAAa,EAAE,OAAsB;QAC1D,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC7B,IAAI,IAAI,CAAC,UAAU,IAAI,SAAS,EAAE,CAAC;YAC/B,MAAM,IAAI,4BAAe,CAAC,gCAAgC,CAAC,CAAC;QAChE,CAAC;QACD,QAAQ,OAAO,CAAC,MAAM,EAAE,CAAC;YACrB,KAAK,KAAK;gBACN,OAAO,MAAM,IAAA,uBAAW,EACpB,IAAI,CAAC,UAAU,EACf,KAAK,EACL,OAAO,CAAC,QAAQ,EAChB,OAAO,CAAC,UAAU,CACrB,CAAC;YACN,KAAK,MAAM;gBACP,OAAO,MAAM,IAAA,wBAAY,EACrB,IAAI,CAAC,UAAU,EACf,KAAK,EACL,OAAO,CAAC,QAAQ,EAChB,OAAO,CAAC,WAAW,CACtB,CAAC;YACN,KAAK,SAAS;gBACV,OAAO,MAAM,IAAA,2BAAe,EACxB,IAAI,CAAC,UAAU,EACf,KAAK,EACL,OAAO,CAAC,QAAQ,EAChB,OAAO,CAAC,cAAc,CACzB,CAAC;YACN;gBACI,MAAM,IAAI,KAAK,CAAC,uBAAuB,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QACjE,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,YAAY,CAAC,YAAoB;QAC1C,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC7B,IAAI,CAAC;YACD,MAAM,KAAK,GAAG,2BAA2B,YAAY,EAAE,CAAC;YACxD,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,YAAY,YAAY,uBAAuB,CAAC,CAAC;QACjE,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,GAAG,CAAC,CAAC;YAChD,MAAM,GAAG,CAAC;QACd,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,cAAc,CAAC,YAAoB;QAC5C,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC7B,IAAI,CAAC;YACD,MAAM,KAAK,GAAG,iFAAiF,YAAY,GAAG,CAAC;YAC/G,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;YAC9C,OAAO,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QACvC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,GAAG,CAAC,CAAC;YAChD,OAAO,KAAK,CAAC;QACjB,CAAC;IACL,CAAC;IAED,sCAAsC;IAC/B,KAAK,CAAC,YAAY,CAAC,MAAc;QACpC,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC7B,IAAI,KAAK,GAAG,EAAE,CAAC;QAEf,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;YAClB,KAAK,6BAAU,CAAC,EAAE;gBACd,KAAK,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;gBACxC,MAAM;YACV,KAAK,6BAAU,CAAC,KAAK;gBACjB,KAAK,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;gBAC3C,MAAM;YACV;gBACI,MAAM,IAAI,KAAK,CAAC,gBAAgB,MAAM,iBAAiB,CAAC,CAAC;QACjE,CAAC;QAED,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,WAAW,MAAM,CAAC,IAAI,wBAAwB,CAAC,CAAC;QAChE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,0BAA0B,MAAM,CAAC,IAAI,IAAI,EAAE,KAAK,CAAC,CAAC;YAChE,MAAM,KAAK,CAAC;QAChB,CAAC;IACL,CAAC;IAED,0BAA0B;IACnB,KAAK,CAAC,UAAU,CAAC,UAAkB;QACtC,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAG,yBAAyB,UAAU,EAAE,CAAC;QAEpD,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,WAAW,UAAU,wBAAwB,CAAC,CAAC;QAC/D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,0BAA0B,UAAU,IAAI,EAAE,KAAK,CAAC,CAAC;YAC/D,MAAM,KAAK,CAAC;QAChB,CAAC;IACL,CAAC;IAED,sCAAsC;IAC/B,KAAK,CAAC,aAAa,CAAC,MAAc;QACrC,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC7B,8CAA8C;QAC9C,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAEnC,wBAAwB;QACxB,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IACpC,CAAC;IAED,6BAA6B;IACtB,KAAK,CAAC,WAAW;QACpB,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAG,gCAAgC,CAAC;QAC/C,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAED,yCAAyC;IACjC,kBAAkB,CAAC,MAAgB;QACvC,IAAI,KAAK,GAAG,iBAAiB,MAAM,CAAC,IAAI,gBAAgB,MAAM,CAAC,IAAI,kBAAkB,MAAM,CAAC,KAAK,mBAAmB,MAAM,CAAC,MAAM,GAAG,CAAC;QAErI,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAChB,KAAK,IAAI,kBAAkB,MAAM,CAAC,MAAM,GAAG,CAAC;QAChD,CAAC;QAED,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACf,KAAK,IAAI,iBAAiB,MAAM,CAAC,KAAK,GAAG,CAAC;QAC9C,CAAC;QAED,KAAK,IAAI,KAAK,CAAC;QAEf,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,4CAA4C;IACpC,qBAAqB,CAAC,MAAmB;QAC7C,IAAI,KAAK,GAAG,iBAAiB,MAAM,CAAC,IAAI,gBAAgB,MAAM,CAAC,IAAI,EAAE,CAAC;QAEtE,wCAAwC;QACxC,IAAI,kBAAkB,IAAI,MAAM,EAAE,CAAC;YAC/B,KAAK,IAAI,6BAA6B,MAAM,CAAC,gBAAgB,GAAG,CAAC;QACrE,CAAC;aAAM,IAAI,UAAU,IAAI,MAAM,EAAE,CAAC;YAC9B,KAAK,IAAI,mBAAmB,MAAM,CAAC,QAAQ,EAAE,CAAC;YAE9C,IAAI,MAAM,CAAC,QAAQ,KAAK,oCAAiB,CAAC,gBAAgB,EAAE,CAAC;gBACzD,KAAK,IAAI,iBAAkB,MAAqC,CAAC,KAAK,GAAG,CAAC;YAC9E,CAAC;YAED,KAAK,IAAI,wBAAwB,MAAM,CAAC,WAAW,GAAG,CAAC;QAC3D,CAAC;QAED,KAAK,IAAI,KAAK,CAAC;QAEf,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,qCAAqC;IAC9B,KAAK,CAAC,YAAY,CAAC,UAAkB;QACxC,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAG,mDAAmD,UAAU,GAAG,CAAC;QAC/E,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QAC9C,OAAO,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;IACvC,CAAC;IAED,8BAA8B;IACvB,KAAK,CAAC,KAAK;QACd,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACpC,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC;YACjC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;YACrB,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAChC,CAAC;IACL,CAAC;;AAhdL,4CAidC"}
|
|
1
|
+
{"version":3,"file":"duckdb.repository.js","sourceRoot":"","sources":["../../src/repositories/duckdb.repository.ts"],"names":[],"mappings":"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"}
|
package/dist/test.js
CHANGED
|
@@ -10,9 +10,9 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.Subject = void 0;
|
|
13
|
-
|
|
13
|
+
const index_1 = require("./index");
|
|
14
14
|
require("reflect-metadata");
|
|
15
|
-
|
|
15
|
+
// import { BaseRepository, Column, DuckDbLocation, DuckDbRepository, Entity, Repository, Transaction } from 'duckdb-tinyorm'
|
|
16
16
|
// Use the async getInstance method instead of getInstances
|
|
17
17
|
let duckDbRepository;
|
|
18
18
|
let Subject = class Subject {
|
|
@@ -30,7 +30,7 @@ let Subject = class Subject {
|
|
|
30
30
|
};
|
|
31
31
|
exports.Subject = Subject;
|
|
32
32
|
__decorate([
|
|
33
|
-
(0,
|
|
33
|
+
(0, index_1.Column)({
|
|
34
34
|
type: 'INTEGER',
|
|
35
35
|
primaryKey: true,
|
|
36
36
|
autoIncrement: true
|
|
@@ -38,7 +38,7 @@ __decorate([
|
|
|
38
38
|
__metadata("design:type", Number)
|
|
39
39
|
], Subject.prototype, "Id", void 0);
|
|
40
40
|
__decorate([
|
|
41
|
-
(0,
|
|
41
|
+
(0, index_1.Column)({
|
|
42
42
|
type: 'VARCHAR',
|
|
43
43
|
notNull: true,
|
|
44
44
|
unique: true
|
|
@@ -46,20 +46,20 @@ __decorate([
|
|
|
46
46
|
__metadata("design:type", String)
|
|
47
47
|
], Subject.prototype, "Code", void 0);
|
|
48
48
|
__decorate([
|
|
49
|
-
(0,
|
|
49
|
+
(0, index_1.Column)({
|
|
50
50
|
type: 'VARCHAR',
|
|
51
51
|
notNull: true
|
|
52
52
|
}),
|
|
53
53
|
__metadata("design:type", String)
|
|
54
54
|
], Subject.prototype, "Name", void 0);
|
|
55
55
|
__decorate([
|
|
56
|
-
(0,
|
|
56
|
+
(0, index_1.Column)({
|
|
57
57
|
type: 'TEXT'
|
|
58
58
|
}),
|
|
59
59
|
__metadata("design:type", String)
|
|
60
60
|
], Subject.prototype, "Description", void 0);
|
|
61
61
|
__decorate([
|
|
62
|
-
(0,
|
|
62
|
+
(0, index_1.Column)({
|
|
63
63
|
type: 'INT',
|
|
64
64
|
defaultValue: new Date().getFullYear(),
|
|
65
65
|
check: 'Year >= 2000'
|
|
@@ -67,10 +67,10 @@ __decorate([
|
|
|
67
67
|
__metadata("design:type", Number)
|
|
68
68
|
], Subject.prototype, "Year", void 0);
|
|
69
69
|
exports.Subject = Subject = __decorate([
|
|
70
|
-
(0,
|
|
70
|
+
(0, index_1.Entity)({ name: 'subjects' }),
|
|
71
71
|
__metadata("design:paramtypes", [String, String, String, Number])
|
|
72
72
|
], Subject);
|
|
73
|
-
let SubjectRepository = class SubjectRepository extends
|
|
73
|
+
let SubjectRepository = class SubjectRepository extends index_1.BaseRepository {
|
|
74
74
|
constructor(repo) {
|
|
75
75
|
super(repo);
|
|
76
76
|
}
|
|
@@ -93,16 +93,124 @@ let SubjectRepository = class SubjectRepository extends duckdb_tinyorm_1.BaseRep
|
|
|
93
93
|
}
|
|
94
94
|
};
|
|
95
95
|
SubjectRepository = __decorate([
|
|
96
|
-
(0,
|
|
97
|
-
__metadata("design:paramtypes", [
|
|
96
|
+
(0, index_1.Repository)(Subject),
|
|
97
|
+
__metadata("design:paramtypes", [index_1.DuckDbRepository])
|
|
98
98
|
], SubjectRepository);
|
|
99
|
+
// ── Entity & repository for appender tests (no auto-increment PK) ──
|
|
100
|
+
let Event = class Event {
|
|
101
|
+
Id;
|
|
102
|
+
Type;
|
|
103
|
+
Value;
|
|
104
|
+
constructor(id = 0, type = '', value = 0) {
|
|
105
|
+
this.Id = id;
|
|
106
|
+
this.Type = type;
|
|
107
|
+
this.Value = value;
|
|
108
|
+
}
|
|
109
|
+
};
|
|
110
|
+
__decorate([
|
|
111
|
+
(0, index_1.Column)({ type: 'INTEGER', primaryKey: true }),
|
|
112
|
+
__metadata("design:type", Number)
|
|
113
|
+
], Event.prototype, "Id", void 0);
|
|
114
|
+
__decorate([
|
|
115
|
+
(0, index_1.Column)({ type: 'VARCHAR', notNull: true }),
|
|
116
|
+
__metadata("design:type", String)
|
|
117
|
+
], Event.prototype, "Type", void 0);
|
|
118
|
+
__decorate([
|
|
119
|
+
(0, index_1.Column)({ type: 'DOUBLE' }),
|
|
120
|
+
__metadata("design:type", Number)
|
|
121
|
+
], Event.prototype, "Value", void 0);
|
|
122
|
+
Event = __decorate([
|
|
123
|
+
(0, index_1.Entity)({ name: 'events' }),
|
|
124
|
+
__metadata("design:paramtypes", [Number, String, Number])
|
|
125
|
+
], Event);
|
|
126
|
+
let EventRepository = class EventRepository extends index_1.BaseRepository {
|
|
127
|
+
constructor(repo) {
|
|
128
|
+
super(repo);
|
|
129
|
+
}
|
|
130
|
+
};
|
|
131
|
+
EventRepository = __decorate([
|
|
132
|
+
(0, index_1.Repository)(Event),
|
|
133
|
+
__metadata("design:paramtypes", [index_1.DuckDbRepository])
|
|
134
|
+
], EventRepository);
|
|
135
|
+
// Two separate entities for the saveAll vs appendEntities perf comparison
|
|
136
|
+
// (each needs its own table so counts don't clash)
|
|
137
|
+
let EventPerf = class EventPerf {
|
|
138
|
+
Id;
|
|
139
|
+
Type;
|
|
140
|
+
Value;
|
|
141
|
+
constructor(id = 0, type = '', value = 0) {
|
|
142
|
+
this.Id = id;
|
|
143
|
+
this.Type = type;
|
|
144
|
+
this.Value = value;
|
|
145
|
+
}
|
|
146
|
+
};
|
|
147
|
+
__decorate([
|
|
148
|
+
(0, index_1.Column)({ type: 'INTEGER', primaryKey: true }),
|
|
149
|
+
__metadata("design:type", Number)
|
|
150
|
+
], EventPerf.prototype, "Id", void 0);
|
|
151
|
+
__decorate([
|
|
152
|
+
(0, index_1.Column)({ type: 'VARCHAR', notNull: true }),
|
|
153
|
+
__metadata("design:type", String)
|
|
154
|
+
], EventPerf.prototype, "Type", void 0);
|
|
155
|
+
__decorate([
|
|
156
|
+
(0, index_1.Column)({ type: 'DOUBLE' }),
|
|
157
|
+
__metadata("design:type", Number)
|
|
158
|
+
], EventPerf.prototype, "Value", void 0);
|
|
159
|
+
EventPerf = __decorate([
|
|
160
|
+
(0, index_1.Entity)({ name: 'events_perf_save' }),
|
|
161
|
+
__metadata("design:paramtypes", [Number, String, Number])
|
|
162
|
+
], EventPerf);
|
|
163
|
+
let EventPerfRepository = class EventPerfRepository extends index_1.BaseRepository {
|
|
164
|
+
constructor(repo) {
|
|
165
|
+
super(repo);
|
|
166
|
+
}
|
|
167
|
+
};
|
|
168
|
+
EventPerfRepository = __decorate([
|
|
169
|
+
(0, index_1.Repository)(EventPerf),
|
|
170
|
+
__metadata("design:paramtypes", [index_1.DuckDbRepository])
|
|
171
|
+
], EventPerfRepository);
|
|
172
|
+
let EventPerfAppend = class EventPerfAppend {
|
|
173
|
+
Id;
|
|
174
|
+
Type;
|
|
175
|
+
Value;
|
|
176
|
+
constructor(id = 0, type = '', value = 0) {
|
|
177
|
+
this.Id = id;
|
|
178
|
+
this.Type = type;
|
|
179
|
+
this.Value = value;
|
|
180
|
+
}
|
|
181
|
+
};
|
|
182
|
+
__decorate([
|
|
183
|
+
(0, index_1.Column)({ type: 'INTEGER', primaryKey: true }),
|
|
184
|
+
__metadata("design:type", Number)
|
|
185
|
+
], EventPerfAppend.prototype, "Id", void 0);
|
|
186
|
+
__decorate([
|
|
187
|
+
(0, index_1.Column)({ type: 'VARCHAR', notNull: true }),
|
|
188
|
+
__metadata("design:type", String)
|
|
189
|
+
], EventPerfAppend.prototype, "Type", void 0);
|
|
190
|
+
__decorate([
|
|
191
|
+
(0, index_1.Column)({ type: 'DOUBLE' }),
|
|
192
|
+
__metadata("design:type", Number)
|
|
193
|
+
], EventPerfAppend.prototype, "Value", void 0);
|
|
194
|
+
EventPerfAppend = __decorate([
|
|
195
|
+
(0, index_1.Entity)({ name: 'events_perf_append' }),
|
|
196
|
+
__metadata("design:paramtypes", [Number, String, Number])
|
|
197
|
+
], EventPerfAppend);
|
|
198
|
+
let EventPerfAppendRepository = class EventPerfAppendRepository extends index_1.BaseRepository {
|
|
199
|
+
constructor(repo) {
|
|
200
|
+
super(repo);
|
|
201
|
+
}
|
|
202
|
+
};
|
|
203
|
+
EventPerfAppendRepository = __decorate([
|
|
204
|
+
(0, index_1.Repository)(EventPerfAppend),
|
|
205
|
+
__metadata("design:paramtypes", [index_1.DuckDbRepository])
|
|
206
|
+
], EventPerfAppendRepository);
|
|
99
207
|
// Modify the test function to initialize the connection properly
|
|
100
208
|
async function test() {
|
|
101
209
|
try {
|
|
102
210
|
// Initialize the repository asynchronously
|
|
103
|
-
duckDbRepository = await
|
|
211
|
+
duckDbRepository = await index_1.DuckDbRepository.getInstance({
|
|
104
212
|
name: 'default',
|
|
105
|
-
location:
|
|
213
|
+
location: index_1.DuckDbLocation.Memory,
|
|
106
214
|
filename: undefined
|
|
107
215
|
});
|
|
108
216
|
console.log("DuckDb repository initialized successfully");
|
|
@@ -196,6 +304,67 @@ async function test() {
|
|
|
196
304
|
compression: 'ZSTD'
|
|
197
305
|
}
|
|
198
306
|
});
|
|
307
|
+
// ──────────────────────────────────────────────────────
|
|
308
|
+
// Appender API tests
|
|
309
|
+
// ──────────────────────────────────────────────────────
|
|
310
|
+
// --- 1. High-level: appendEntities on EventRepository ---
|
|
311
|
+
console.log("\n=== Appender API Tests ===\n");
|
|
312
|
+
const eventRepo = new EventRepository(duckDbRepository);
|
|
313
|
+
await eventRepo.init();
|
|
314
|
+
const events = [];
|
|
315
|
+
for (let i = 1; i <= 1000; i++) {
|
|
316
|
+
events.push(new Event(i, i % 2 === 0 ? 'click' : 'view', Math.random() * 100));
|
|
317
|
+
}
|
|
318
|
+
console.log("appendEntities: Inserting 1 000 events via appender...");
|
|
319
|
+
const appendStart = performance.now();
|
|
320
|
+
await eventRepo.appendEntities(events);
|
|
321
|
+
const appendMs = (performance.now() - appendStart).toFixed(2);
|
|
322
|
+
const allEvents = await eventRepo.findAll();
|
|
323
|
+
console.log(`appendEntities: Inserted ${allEvents.length} events in ${appendMs} ms`);
|
|
324
|
+
console.table(allEvents.slice(0, 5));
|
|
325
|
+
// --- 2. Low-level: manual appender control ---
|
|
326
|
+
console.log("\nLow-level appender: Creating table and inserting rows manually...");
|
|
327
|
+
await duckDbRepository.executeQuery(`
|
|
328
|
+
CREATE TABLE IF NOT EXISTS manual_events (
|
|
329
|
+
Id INTEGER PRIMARY KEY,
|
|
330
|
+
Type VARCHAR NOT NULL,
|
|
331
|
+
Value DOUBLE
|
|
332
|
+
)
|
|
333
|
+
`);
|
|
334
|
+
const appender = await duckDbRepository.createAppender('manual_events');
|
|
335
|
+
appender.appendInteger(1);
|
|
336
|
+
appender.appendVarchar('click');
|
|
337
|
+
appender.appendDouble(42.5);
|
|
338
|
+
appender.endRow();
|
|
339
|
+
appender.appendInteger(2);
|
|
340
|
+
appender.appendVarchar('view');
|
|
341
|
+
appender.appendDouble(17.3);
|
|
342
|
+
appender.endRow();
|
|
343
|
+
appender.appendInteger(3);
|
|
344
|
+
appender.appendVarchar('scroll');
|
|
345
|
+
appender.appendDouble(99.9);
|
|
346
|
+
appender.endRow();
|
|
347
|
+
appender.flushSync();
|
|
348
|
+
appender.closeSync();
|
|
349
|
+
const manualRows = await duckDbRepository.executeQuery('SELECT * FROM manual_events');
|
|
350
|
+
console.log(`Low-level appender: Inserted ${manualRows.length} rows`);
|
|
351
|
+
console.table(manualRows);
|
|
352
|
+
// --- 3. Compare saveAll vs appendEntities performance ---
|
|
353
|
+
console.log("\nPerformance comparison: saveAll vs appendEntities (500 rows)...");
|
|
354
|
+
const saveAllRepo = new EventPerfRepository(duckDbRepository);
|
|
355
|
+
await saveAllRepo.init();
|
|
356
|
+
const appendRepo = new EventPerfAppendRepository(duckDbRepository);
|
|
357
|
+
await appendRepo.init();
|
|
358
|
+
const perfEvents500Save = Array.from({ length: 500 }, (_, i) => new EventPerf(i + 1, 'perf-save', i * 1.1));
|
|
359
|
+
const perfEvents500Append = Array.from({ length: 500 }, (_, i) => new EventPerfAppend(i + 1, 'perf-append', i * 1.1));
|
|
360
|
+
const saveAllStart = performance.now();
|
|
361
|
+
await saveAllRepo.saveAll(perfEvents500Save);
|
|
362
|
+
const saveAllMs = (performance.now() - saveAllStart).toFixed(2);
|
|
363
|
+
const appendAllStart = performance.now();
|
|
364
|
+
await appendRepo.appendEntities(perfEvents500Append);
|
|
365
|
+
const appendAllMs = (performance.now() - appendAllStart).toFixed(2);
|
|
366
|
+
console.log(`saveAll: ${saveAllMs} ms (500 rows)`);
|
|
367
|
+
console.log(`appendEntities: ${appendAllMs} ms (500 rows)`);
|
|
199
368
|
}
|
|
200
369
|
catch (error) {
|
|
201
370
|
console.error("Error during test execution:", error);
|
package/dist/test.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test.js","sourceRoot":"","sources":["../src/test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"test.js","sourceRoot":"","sources":["../src/test.ts"],"names":[],"mappings":"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"}
|