@mastra/pg 1.14.0-alpha.0 → 1.14.1-alpha.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/CHANGELOG.md +26 -0
- package/dist/docs/SKILL.md +1 -1
- package/dist/docs/assets/SOURCE_MAP.json +1 -1
- package/dist/index.cjs +40 -16
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +40 -16
- package/dist/index.js.map +1 -1
- package/dist/storage/domains/datasets/index.d.ts.map +1 -1
- package/dist/storage/domains/experiments/index.d.ts.map +1 -1
- package/dist/storage/domains/memory/index.d.ts.map +1 -1
- package/dist/storage/index.d.ts.map +1 -1
- package/package.json +5 -5
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,31 @@
|
|
|
1
1
|
# @mastra/pg
|
|
2
2
|
|
|
3
|
+
## 1.14.1-alpha.0
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Fixed `PostgresStore.init()` failing with "RoutingDbClient already has a pinned client" when a single store is shared across concurrent requests (for example, request-scoped Mastra instances reusing one store/pool). Concurrent `init()` calls are now coalesced into a single shared initialization instead of each pinning the client. ([#18336](https://github.com/mastra-ai/mastra/pull/18336))
|
|
8
|
+
|
|
9
|
+
Also, `init()` is now a no-op when `disableInit: true`, so apps that manage their database schema externally are no longer forced through the connect-and-pin path.
|
|
10
|
+
|
|
11
|
+
- Fixed: `mastra build` output no longer hangs on the first storage-touching request when an app uses `LibSQLStore`, `PostgresStore`, or `MySQLStore` with observational memory. `mastra dev` was unaffected; only the bundled `mastra start` output deadlocked. No code changes or `bundler.externals` workaround required on the app side after upgrading. ([#18302](https://github.com/mastra-ai/mastra/pull/18302))
|
|
12
|
+
|
|
13
|
+
- Added storage for item-level tool mocks. Dataset items persist their `toolMocks` and experiment results persist their `toolMockReport`, so mocks and run diagnostics survive across sessions. ([#18036](https://github.com/mastra-ai/mastra/pull/18036))
|
|
14
|
+
|
|
15
|
+
- Updated dependencies [[`65f255a`](https://github.com/mastra-ai/mastra/commit/65f255a38667beb6ceeadabfa9eb5059bfec8298), [`4a88c6e`](https://github.com/mastra-ai/mastra/commit/4a88c6e2bdce316f8d7551b4ec3449b0b06fc71c), [`87a17ef`](https://github.com/mastra-ai/mastra/commit/87a17efbd725aca6639febdc5e69e2abb3048689), [`e11ff30`](https://github.com/mastra-ai/mastra/commit/e11ff301408bf1731dca2fb7fbfcd8c819500a35), [`9d2c946`](https://github.com/mastra-ai/mastra/commit/9d2c946d0859e90ae4bcec5beeb1da7398d2ad1e), [`f1ec385`](https://github.com/mastra-ai/mastra/commit/f1ec385386f62b1a0847ec5353ae2bb169d1c3d9), [`e14986f`](https://github.com/mastra-ai/mastra/commit/e14986f6e5478d6384d04ff9a7f9a79a46a8b529), [`0be490f`](https://github.com/mastra-ai/mastra/commit/0be490fabb538c5a7de796ea0aff7d04a0bea1f3), [`0be490f`](https://github.com/mastra-ai/mastra/commit/0be490fabb538c5a7de796ea0aff7d04a0bea1f3), [`974f614`](https://github.com/mastra-ai/mastra/commit/974f614e083bd68278536f94453f7b320b86a3c7), [`31be1cf`](https://github.com/mastra-ai/mastra/commit/31be1cf5f2a7b5eef12f6123a40653b4d8115c16)]:
|
|
16
|
+
- @mastra/core@1.46.0-alpha.3
|
|
17
|
+
|
|
18
|
+
## 1.14.0
|
|
19
|
+
|
|
20
|
+
### Minor Changes
|
|
21
|
+
|
|
22
|
+
- Random bump ([#18178](https://github.com/mastra-ai/mastra/pull/18178))
|
|
23
|
+
|
|
24
|
+
### Patch Changes
|
|
25
|
+
|
|
26
|
+
- Updated dependencies [[`7c0d868`](https://github.com/mastra-ai/mastra/commit/7c0d868d97d0fdbc04c14d0166dbf44d4c5a4a62), [`d9d2273`](https://github.com/mastra-ai/mastra/commit/d9d2273c702690c9a26eab2aebea879701d4355a), [`b04369d`](https://github.com/mastra-ai/mastra/commit/b04369d6b167c698ef103981171a8bf92808e756), [`8f3c262`](https://github.com/mastra-ai/mastra/commit/8f3c262587b335588a02d96b17fd6aca34c885b3)]:
|
|
27
|
+
- @mastra/core@1.45.0
|
|
28
|
+
|
|
3
29
|
## 1.14.0-alpha.0
|
|
4
30
|
|
|
5
31
|
### Minor Changes
|
package/dist/docs/SKILL.md
CHANGED
package/dist/index.cjs
CHANGED
|
@@ -5209,6 +5209,7 @@ var DatasetsPG = class _DatasetsPG extends storage.DatasetsStorage {
|
|
|
5209
5209
|
await this.#addColumnIfNotExists(storage.TABLE_DATASET_ITEMS, "requestContext", "JSONB");
|
|
5210
5210
|
await this.#addColumnIfNotExists(storage.TABLE_DATASET_ITEMS, "source", "JSONB");
|
|
5211
5211
|
await this.#addColumnIfNotExists(storage.TABLE_DATASET_ITEMS, "expectedTrajectory", "JSONB");
|
|
5212
|
+
await this.#addColumnIfNotExists(storage.TABLE_DATASET_ITEMS, "toolMocks", "JSONB");
|
|
5212
5213
|
await this.createDefaultIndexes();
|
|
5213
5214
|
await this.createCustomIndexes();
|
|
5214
5215
|
}
|
|
@@ -5292,6 +5293,7 @@ var DatasetsPG = class _DatasetsPG extends storage.DatasetsStorage {
|
|
|
5292
5293
|
input: storage.safelyParseJSON(row.input),
|
|
5293
5294
|
groundTruth: row.groundTruth ? storage.safelyParseJSON(row.groundTruth) : void 0,
|
|
5294
5295
|
expectedTrajectory: row.expectedTrajectory ? storage.safelyParseJSON(row.expectedTrajectory) : void 0,
|
|
5296
|
+
toolMocks: row.toolMocks ? storage.safelyParseJSON(row.toolMocks) : void 0,
|
|
5295
5297
|
requestContext: row.requestContext ? storage.safelyParseJSON(row.requestContext) : void 0,
|
|
5296
5298
|
metadata: row.metadata ? storage.safelyParseJSON(row.metadata) : void 0,
|
|
5297
5299
|
source: row.source ? storage.safelyParseJSON(row.source) : void 0,
|
|
@@ -5309,6 +5311,7 @@ var DatasetsPG = class _DatasetsPG extends storage.DatasetsStorage {
|
|
|
5309
5311
|
input: storage.safelyParseJSON(row.input),
|
|
5310
5312
|
groundTruth: row.groundTruth ? storage.safelyParseJSON(row.groundTruth) : void 0,
|
|
5311
5313
|
expectedTrajectory: row.expectedTrajectory ? storage.safelyParseJSON(row.expectedTrajectory) : void 0,
|
|
5314
|
+
toolMocks: row.toolMocks ? storage.safelyParseJSON(row.toolMocks) : void 0,
|
|
5312
5315
|
requestContext: row.requestContext ? storage.safelyParseJSON(row.requestContext) : void 0,
|
|
5313
5316
|
metadata: row.metadata ? storage.safelyParseJSON(row.metadata) : void 0,
|
|
5314
5317
|
source: row.source ? storage.safelyParseJSON(row.source) : void 0,
|
|
@@ -5578,7 +5581,7 @@ var DatasetsPG = class _DatasetsPG extends storage.DatasetsStorage {
|
|
|
5578
5581
|
);
|
|
5579
5582
|
newVersion = row.version;
|
|
5580
5583
|
await t.none(
|
|
5581
|
-
`INSERT INTO ${itemsTable} ("id","datasetId","datasetVersion","validTo","isDeleted","input","groundTruth","expectedTrajectory","requestContext","metadata","source","createdAt","createdAtZ","updatedAt","updatedAtZ") VALUES ($1,$2,$3,NULL,false,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13)`,
|
|
5584
|
+
`INSERT INTO ${itemsTable} ("id","datasetId","datasetVersion","validTo","isDeleted","input","groundTruth","expectedTrajectory","toolMocks","requestContext","metadata","source","createdAt","createdAtZ","updatedAt","updatedAtZ") VALUES ($1,$2,$3,NULL,false,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14)`,
|
|
5582
5585
|
[
|
|
5583
5586
|
id,
|
|
5584
5587
|
args.datasetId,
|
|
@@ -5586,6 +5589,7 @@ var DatasetsPG = class _DatasetsPG extends storage.DatasetsStorage {
|
|
|
5586
5589
|
JSON.stringify(args.input),
|
|
5587
5590
|
jsonbArg(args.groundTruth),
|
|
5588
5591
|
jsonbArg(args.expectedTrajectory),
|
|
5592
|
+
jsonbArg(args.toolMocks),
|
|
5589
5593
|
jsonbArg(args.requestContext),
|
|
5590
5594
|
jsonbArg(args.metadata),
|
|
5591
5595
|
jsonbArg(args.source),
|
|
@@ -5607,6 +5611,7 @@ var DatasetsPG = class _DatasetsPG extends storage.DatasetsStorage {
|
|
|
5607
5611
|
input: args.input,
|
|
5608
5612
|
groundTruth: args.groundTruth,
|
|
5609
5613
|
expectedTrajectory: args.expectedTrajectory,
|
|
5614
|
+
toolMocks: args.toolMocks,
|
|
5610
5615
|
requestContext: args.requestContext,
|
|
5611
5616
|
metadata: args.metadata,
|
|
5612
5617
|
source: args.source,
|
|
@@ -5656,6 +5661,7 @@ var DatasetsPG = class _DatasetsPG extends storage.DatasetsStorage {
|
|
|
5656
5661
|
const mergedInput = args.input !== void 0 ? args.input : existing.input;
|
|
5657
5662
|
const mergedGroundTruth = args.groundTruth !== void 0 ? args.groundTruth : existing.groundTruth;
|
|
5658
5663
|
const mergedExpectedTrajectory = args.expectedTrajectory !== void 0 ? args.expectedTrajectory : existing.expectedTrajectory;
|
|
5664
|
+
const mergedToolMocks = args.toolMocks !== void 0 ? args.toolMocks : existing.toolMocks;
|
|
5659
5665
|
const mergedRequestContext = args.requestContext !== void 0 ? args.requestContext : existing.requestContext;
|
|
5660
5666
|
const mergedMetadata = args.metadata !== void 0 ? args.metadata : existing.metadata;
|
|
5661
5667
|
const mergedSource = args.source !== void 0 ? args.source : existing.source;
|
|
@@ -5671,7 +5677,7 @@ var DatasetsPG = class _DatasetsPG extends storage.DatasetsStorage {
|
|
|
5671
5677
|
[newVersion, args.id]
|
|
5672
5678
|
);
|
|
5673
5679
|
await t.none(
|
|
5674
|
-
`INSERT INTO ${itemsTable} ("id","datasetId","datasetVersion","validTo","isDeleted","input","groundTruth","expectedTrajectory","requestContext","metadata","source","createdAt","createdAtZ","updatedAt","updatedAtZ") VALUES ($1,$2,$3,NULL,false,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13)`,
|
|
5680
|
+
`INSERT INTO ${itemsTable} ("id","datasetId","datasetVersion","validTo","isDeleted","input","groundTruth","expectedTrajectory","toolMocks","requestContext","metadata","source","createdAt","createdAtZ","updatedAt","updatedAtZ") VALUES ($1,$2,$3,NULL,false,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14)`,
|
|
5675
5681
|
[
|
|
5676
5682
|
args.id,
|
|
5677
5683
|
args.datasetId,
|
|
@@ -5679,6 +5685,7 @@ var DatasetsPG = class _DatasetsPG extends storage.DatasetsStorage {
|
|
|
5679
5685
|
JSON.stringify(mergedInput),
|
|
5680
5686
|
jsonbArg(mergedGroundTruth),
|
|
5681
5687
|
jsonbArg(mergedExpectedTrajectory),
|
|
5688
|
+
jsonbArg(mergedToolMocks),
|
|
5682
5689
|
jsonbArg(mergedRequestContext),
|
|
5683
5690
|
jsonbArg(mergedMetadata),
|
|
5684
5691
|
jsonbArg(mergedSource),
|
|
@@ -5699,6 +5706,7 @@ var DatasetsPG = class _DatasetsPG extends storage.DatasetsStorage {
|
|
|
5699
5706
|
input: mergedInput,
|
|
5700
5707
|
groundTruth: mergedGroundTruth,
|
|
5701
5708
|
expectedTrajectory: mergedExpectedTrajectory,
|
|
5709
|
+
toolMocks: mergedToolMocks,
|
|
5702
5710
|
requestContext: mergedRequestContext,
|
|
5703
5711
|
metadata: mergedMetadata,
|
|
5704
5712
|
source: mergedSource,
|
|
@@ -5747,7 +5755,7 @@ var DatasetsPG = class _DatasetsPG extends storage.DatasetsStorage {
|
|
|
5747
5755
|
[newVersion, id]
|
|
5748
5756
|
);
|
|
5749
5757
|
await t.none(
|
|
5750
|
-
`INSERT INTO ${itemsTable} ("id","datasetId","datasetVersion","validTo","isDeleted","input","groundTruth","expectedTrajectory","requestContext","metadata","source","createdAt","createdAtZ","updatedAt","updatedAtZ") VALUES ($1,$2,$3,NULL,true,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13)`,
|
|
5758
|
+
`INSERT INTO ${itemsTable} ("id","datasetId","datasetVersion","validTo","isDeleted","input","groundTruth","expectedTrajectory","toolMocks","requestContext","metadata","source","createdAt","createdAtZ","updatedAt","updatedAtZ") VALUES ($1,$2,$3,NULL,true,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14)`,
|
|
5751
5759
|
[
|
|
5752
5760
|
id,
|
|
5753
5761
|
datasetId,
|
|
@@ -5755,6 +5763,7 @@ var DatasetsPG = class _DatasetsPG extends storage.DatasetsStorage {
|
|
|
5755
5763
|
JSON.stringify(existing.input),
|
|
5756
5764
|
jsonbArg(existing.groundTruth),
|
|
5757
5765
|
jsonbArg(existing.expectedTrajectory),
|
|
5766
|
+
jsonbArg(existing.toolMocks),
|
|
5758
5767
|
jsonbArg(existing.requestContext),
|
|
5759
5768
|
jsonbArg(existing.metadata),
|
|
5760
5769
|
jsonbArg(existing.source),
|
|
@@ -5811,7 +5820,7 @@ var DatasetsPG = class _DatasetsPG extends storage.DatasetsStorage {
|
|
|
5811
5820
|
newVersion = row.version;
|
|
5812
5821
|
for (const { id, input: itemInput } of itemsWithIds) {
|
|
5813
5822
|
await t.none(
|
|
5814
|
-
`INSERT INTO ${itemsTable} ("id","datasetId","datasetVersion","validTo","isDeleted","input","groundTruth","expectedTrajectory","requestContext","metadata","source","createdAt","createdAtZ","updatedAt","updatedAtZ") VALUES ($1,$2,$3,NULL,false,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13)`,
|
|
5823
|
+
`INSERT INTO ${itemsTable} ("id","datasetId","datasetVersion","validTo","isDeleted","input","groundTruth","expectedTrajectory","toolMocks","requestContext","metadata","source","createdAt","createdAtZ","updatedAt","updatedAtZ") VALUES ($1,$2,$3,NULL,false,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14)`,
|
|
5815
5824
|
[
|
|
5816
5825
|
id,
|
|
5817
5826
|
input.datasetId,
|
|
@@ -5819,6 +5828,7 @@ var DatasetsPG = class _DatasetsPG extends storage.DatasetsStorage {
|
|
|
5819
5828
|
JSON.stringify(itemInput.input),
|
|
5820
5829
|
jsonbArg(itemInput.groundTruth),
|
|
5821
5830
|
jsonbArg(itemInput.expectedTrajectory),
|
|
5831
|
+
jsonbArg(itemInput.toolMocks),
|
|
5822
5832
|
jsonbArg(itemInput.requestContext),
|
|
5823
5833
|
jsonbArg(itemInput.metadata),
|
|
5824
5834
|
jsonbArg(itemInput.source),
|
|
@@ -5841,6 +5851,7 @@ var DatasetsPG = class _DatasetsPG extends storage.DatasetsStorage {
|
|
|
5841
5851
|
input: itemInput.input,
|
|
5842
5852
|
groundTruth: itemInput.groundTruth,
|
|
5843
5853
|
expectedTrajectory: itemInput.expectedTrajectory,
|
|
5854
|
+
toolMocks: itemInput.toolMocks,
|
|
5844
5855
|
requestContext: itemInput.requestContext,
|
|
5845
5856
|
metadata: itemInput.metadata,
|
|
5846
5857
|
source: itemInput.source,
|
|
@@ -5898,7 +5909,7 @@ var DatasetsPG = class _DatasetsPG extends storage.DatasetsStorage {
|
|
|
5898
5909
|
[newVersion, item.id]
|
|
5899
5910
|
);
|
|
5900
5911
|
await t.none(
|
|
5901
|
-
`INSERT INTO ${itemsTable} ("id","datasetId","datasetVersion","validTo","isDeleted","input","groundTruth","expectedTrajectory","requestContext","metadata","source","createdAt","createdAtZ","updatedAt","updatedAtZ") VALUES ($1,$2,$3,NULL,true,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13)`,
|
|
5912
|
+
`INSERT INTO ${itemsTable} ("id","datasetId","datasetVersion","validTo","isDeleted","input","groundTruth","expectedTrajectory","toolMocks","requestContext","metadata","source","createdAt","createdAtZ","updatedAt","updatedAtZ") VALUES ($1,$2,$3,NULL,true,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14)`,
|
|
5902
5913
|
[
|
|
5903
5914
|
item.id,
|
|
5904
5915
|
input.datasetId,
|
|
@@ -5906,6 +5917,7 @@ var DatasetsPG = class _DatasetsPG extends storage.DatasetsStorage {
|
|
|
5906
5917
|
JSON.stringify(item.input),
|
|
5907
5918
|
jsonbArg(item.groundTruth),
|
|
5908
5919
|
jsonbArg(item.expectedTrajectory),
|
|
5920
|
+
jsonbArg(item.toolMocks),
|
|
5909
5921
|
jsonbArg(item.requestContext),
|
|
5910
5922
|
jsonbArg(item.metadata),
|
|
5911
5923
|
jsonbArg(item.source),
|
|
@@ -6166,7 +6178,7 @@ var ExperimentsPG = class _ExperimentsPG extends storage.ExperimentsStorage {
|
|
|
6166
6178
|
await this.#db.alterTable({
|
|
6167
6179
|
tableName: storage.TABLE_EXPERIMENT_RESULTS,
|
|
6168
6180
|
schema: storage.EXPERIMENT_RESULTS_SCHEMA,
|
|
6169
|
-
ifNotExists: ["status", "tags"]
|
|
6181
|
+
ifNotExists: ["status", "tags", "toolMockReport"]
|
|
6170
6182
|
});
|
|
6171
6183
|
await this.createDefaultIndexes();
|
|
6172
6184
|
await this.createCustomIndexes();
|
|
@@ -6242,6 +6254,7 @@ var ExperimentsPG = class _ExperimentsPG extends storage.ExperimentsStorage {
|
|
|
6242
6254
|
traceId: row.traceId ?? null,
|
|
6243
6255
|
status: row.status ?? null,
|
|
6244
6256
|
tags: row.tags ? storage.safelyParseJSON(row.tags) : null,
|
|
6257
|
+
toolMockReport: row.toolMockReport ? storage.safelyParseJSON(row.toolMockReport) : null,
|
|
6245
6258
|
createdAt: storage.ensureDate(row.createdAtZ || row.createdAt)
|
|
6246
6259
|
};
|
|
6247
6260
|
}
|
|
@@ -6502,6 +6515,7 @@ var ExperimentsPG = class _ExperimentsPG extends storage.ExperimentsStorage {
|
|
|
6502
6515
|
traceId: input.traceId ?? null,
|
|
6503
6516
|
status: input.status ?? null,
|
|
6504
6517
|
tags: input.tags ?? null,
|
|
6518
|
+
toolMockReport: input.toolMockReport ?? null,
|
|
6505
6519
|
createdAt: nowIso
|
|
6506
6520
|
}
|
|
6507
6521
|
});
|
|
@@ -6520,6 +6534,7 @@ var ExperimentsPG = class _ExperimentsPG extends storage.ExperimentsStorage {
|
|
|
6520
6534
|
traceId: input.traceId ?? null,
|
|
6521
6535
|
status: input.status ?? null,
|
|
6522
6536
|
tags: input.tags ?? null,
|
|
6537
|
+
toolMockReport: input.toolMockReport ?? null,
|
|
6523
6538
|
createdAt: now
|
|
6524
6539
|
};
|
|
6525
6540
|
} catch (error$1) {
|
|
@@ -8309,12 +8324,7 @@ var MemoryPG = class _MemoryPG extends storage.MemoryStorage {
|
|
|
8309
8324
|
await this.#db.createTable({ tableName: storage.TABLE_THREADS, schema: storage.TABLE_SCHEMAS[storage.TABLE_THREADS] });
|
|
8310
8325
|
await this.#db.createTable({ tableName: storage.TABLE_MESSAGES, schema: storage.TABLE_SCHEMAS[storage.TABLE_MESSAGES] });
|
|
8311
8326
|
await this.#db.createTable({ tableName: storage.TABLE_RESOURCES, schema: storage.TABLE_SCHEMAS[storage.TABLE_RESOURCES] });
|
|
8312
|
-
|
|
8313
|
-
try {
|
|
8314
|
-
const { OBSERVATIONAL_MEMORY_TABLE_SCHEMA } = await import('@mastra/core/storage');
|
|
8315
|
-
omSchema = OBSERVATIONAL_MEMORY_TABLE_SCHEMA?.[OM_TABLE];
|
|
8316
|
-
} catch {
|
|
8317
|
-
}
|
|
8327
|
+
const omSchema = _omTableSchema?.[OM_TABLE];
|
|
8318
8328
|
if (omSchema) {
|
|
8319
8329
|
await this.#db.createTable({
|
|
8320
8330
|
tableName: OM_TABLE,
|
|
@@ -19172,6 +19182,9 @@ var PostgresStore = class extends storage.MastraCompositeStore {
|
|
|
19172
19182
|
#poolClosed = false;
|
|
19173
19183
|
schema;
|
|
19174
19184
|
isInitialized = false;
|
|
19185
|
+
// Caches the in-flight init() so concurrent callers share one initialization
|
|
19186
|
+
// instead of each acquiring + pinning a client. See init() / issue #18282.
|
|
19187
|
+
#initPromise = null;
|
|
19175
19188
|
stores;
|
|
19176
19189
|
constructor(config) {
|
|
19177
19190
|
try {
|
|
@@ -19238,16 +19251,25 @@ var PostgresStore = class extends storage.MastraCompositeStore {
|
|
|
19238
19251
|
throw new Error("PostgresStore: invalid config");
|
|
19239
19252
|
}
|
|
19240
19253
|
async init() {
|
|
19254
|
+
if (this.disableInit || process.env.MASTRA_DISABLE_STORAGE_INIT === "true") {
|
|
19255
|
+
return;
|
|
19256
|
+
}
|
|
19241
19257
|
if (this.isInitialized) {
|
|
19242
19258
|
return;
|
|
19243
19259
|
}
|
|
19244
|
-
|
|
19245
|
-
|
|
19260
|
+
this.#initPromise ??= this.#runPinnedInit();
|
|
19261
|
+
await this.#initPromise;
|
|
19262
|
+
}
|
|
19263
|
+
async #runPinnedInit() {
|
|
19264
|
+
let pinnedClient;
|
|
19246
19265
|
try {
|
|
19266
|
+
pinnedClient = await this.#pool.connect();
|
|
19267
|
+
const pinned = new PinnedClientAdapter(this.#pool, pinnedClient);
|
|
19247
19268
|
this.#db.pin(pinned);
|
|
19248
19269
|
await super.init();
|
|
19249
19270
|
this.isInitialized = true;
|
|
19250
19271
|
} catch (error$1) {
|
|
19272
|
+
this.#initPromise = null;
|
|
19251
19273
|
if (error$1 instanceof error.MastraError) {
|
|
19252
19274
|
throw error$1;
|
|
19253
19275
|
}
|
|
@@ -19260,8 +19282,10 @@ var PostgresStore = class extends storage.MastraCompositeStore {
|
|
|
19260
19282
|
error$1
|
|
19261
19283
|
);
|
|
19262
19284
|
} finally {
|
|
19263
|
-
|
|
19264
|
-
|
|
19285
|
+
if (pinnedClient) {
|
|
19286
|
+
this.#db.unpin();
|
|
19287
|
+
pinnedClient.release();
|
|
19288
|
+
}
|
|
19265
19289
|
}
|
|
19266
19290
|
}
|
|
19267
19291
|
/**
|