@effect/sql-pg 0.48.0 → 0.49.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.
@@ -15,6 +15,7 @@ var Context = _interopRequireWildcard(require("effect/Context"));
15
15
  var Duration = _interopRequireWildcard(require("effect/Duration"));
16
16
  var Effect = _interopRequireWildcard(require("effect/Effect"));
17
17
  var Fiber = _interopRequireWildcard(require("effect/Fiber"));
18
+ var Function = _interopRequireWildcard(require("effect/Function"));
18
19
  var Layer = _interopRequireWildcard(require("effect/Layer"));
19
20
  var Option = _interopRequireWildcard(require("effect/Option"));
20
21
  var RcRef = _interopRequireWildcard(require("effect/RcRef"));
@@ -85,16 +86,54 @@ const make = options => Effect.gen(function* () {
85
86
  constructor(pg) {
86
87
  this.pg = pg;
87
88
  }
88
- run(query, params) {
89
+ runWithClient(f) {
90
+ if (this.pg !== undefined) {
91
+ return Effect.async(resume => {
92
+ f(this.pg, resume);
93
+ return makeCancel(pool, this.pg);
94
+ });
95
+ }
89
96
  return Effect.async(resume => {
90
- this.pg.query(query, params, (err, result) => {
97
+ let done = false;
98
+ let cancel = undefined;
99
+ let release = Function.constVoid;
100
+ pool.connect((err, client, release_) => {
101
+ if (err) {
102
+ return resume(Effect.fail(new _SqlError.SqlError({
103
+ cause: err,
104
+ message: "Failed to acquire connection"
105
+ })));
106
+ } else if (done) {
107
+ return release();
108
+ }
109
+ release = release_;
110
+ cancel = makeCancel(pool, client);
111
+ f(client, eff => {
112
+ release();
113
+ resume(eff);
114
+ });
115
+ });
116
+ return Effect.suspend(() => {
117
+ done = true;
118
+ if (!cancel) {
119
+ release();
120
+ return Effect.void;
121
+ }
122
+ return Effect.ensuring(cancel, Effect.sync(release));
123
+ });
124
+ });
125
+ }
126
+ run(query, params) {
127
+ return this.runWithClient((client, resume) => {
128
+ client.query(query, params, (err, result) => {
91
129
  if (err) {
92
130
  resume(Effect.fail(new _SqlError.SqlError({
93
131
  cause: err,
94
132
  message: "Failed to execute statement"
95
133
  })));
96
134
  } else {
97
- resume(Effect.succeed(result.rows));
135
+ // Multi-statement queries return an array of results
136
+ resume(Effect.succeed(Array.isArray(result) ? result.map(r => r.rows ?? []) : result.rows ?? []));
98
137
  }
99
138
  });
100
139
  });
@@ -103,8 +142,8 @@ const make = options => Effect.gen(function* () {
103
142
  return transformRows ? Effect.map(this.run(sql, params), transformRows) : this.run(sql, params);
104
143
  }
105
144
  executeRaw(sql, params) {
106
- return Effect.async(resume => {
107
- this.pg.query(sql, params, (err, result) => {
145
+ return this.runWithClient((client, resume) => {
146
+ client.query(sql, params, (err, result) => {
108
147
  if (err) {
109
148
  resume(Effect.fail(new _SqlError.SqlError({
110
149
  cause: err,
@@ -120,8 +159,8 @@ const make = options => Effect.gen(function* () {
120
159
  return this.run(sql, params);
121
160
  }
122
161
  executeValues(sql, params) {
123
- return Effect.async(resume => {
124
- this.pg.query({
162
+ return this.runWithClient((client, resume) => {
163
+ client.query({
125
164
  text: sql,
126
165
  rowMode: "array",
127
166
  values: params
@@ -144,7 +183,7 @@ const make = options => Effect.gen(function* () {
144
183
  // eslint-disable-next-line @typescript-eslint/no-this-alias
145
184
  const self = this;
146
185
  return Effect.gen(function* () {
147
- const cursor = yield* Effect.acquireRelease(Effect.sync(() => self.pg.query(new _pgCursor.default(sql, params))), cursor => Effect.sync(() => cursor.close()));
186
+ const cursor = yield* Effect.acquireRelease(Effect.sync(() => (self.pg ?? pool).query(new _pgCursor.default(sql, params))), cursor => Effect.sync(() => cursor.close()));
148
187
  const pull = Effect.async(resume => {
149
188
  cursor.read(128, (err, rows) => {
150
189
  if (err) {
@@ -182,7 +221,7 @@ const make = options => Effect.gen(function* () {
182
221
  acquire: reserveRaw
183
222
  });
184
223
  return Object.assign(yield* Client.make({
185
- acquirer: Effect.succeed(new ConnectionImpl(pool)),
224
+ acquirer: Effect.succeed(new ConnectionImpl()),
186
225
  transactionAcquirer: reserve,
187
226
  compiler,
188
227
  spanAttributes: [...(options.spanAttributes ? Object.entries(options.spanAttributes) : []), [ATTR_DB_SYSTEM_NAME, "postgresql"], [ATTR_DB_NAMESPACE, options.database ?? options.username ?? "postgres"], [ATTR_SERVER_ADDRESS, options.host ?? "localhost"], [ATTR_SERVER_PORT, options.port ?? 5432]],
@@ -232,11 +271,25 @@ const make = options => Effect.gen(function* () {
232
271
  })
233
272
  });
234
273
  });
274
+ exports.make = make;
275
+ const cancelEffects = /*#__PURE__*/new WeakMap();
276
+ const makeCancel = (pool, client) => {
277
+ if (cancelEffects.has(client)) {
278
+ return cancelEffects.get(client);
279
+ }
280
+ const processId = client.processID;
281
+ const eff = processId !== undefined ? Effect.async(resume => {
282
+ pool.query(`SELECT pg_cancel_backend(${processId})`, () => {
283
+ resume(Effect.void);
284
+ });
285
+ }) : undefined;
286
+ cancelEffects.set(client, eff);
287
+ return eff;
288
+ };
235
289
  /**
236
290
  * @category layers
237
291
  * @since 1.0.0
238
292
  */
239
- exports.make = make;
240
293
  const layerConfig = config => Layer.scopedContext(Config.unwrap(config).pipe(Effect.flatMap(make), Effect.map(client => Context.make(PgClient, client).pipe(Context.add(Client.SqlClient, client))))).pipe(Layer.provide(Reactivity.layer));
241
294
  /**
242
295
  * @category layers
@@ -1 +1 @@
1
- {"version":3,"file":"PgClient.js","names":["Reactivity","_interopRequireWildcard","require","Client","_SqlError","Statement","Arr","Chunk","Config","Context","Duration","Effect","Fiber","Layer","Option","RcRef","Redacted","Scope","Stream","Pg","_pgCursor","_interopRequireDefault","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ATTR_DB_SYSTEM_NAME","ATTR_DB_NAMESPACE","ATTR_SERVER_ADDRESS","ATTR_SERVER_PORT","TypeId","exports","PgClient","GenericTag","make","options","gen","compiler","makeCompiler","transformQueryNames","transformJson","transformRows","transformResultNames","defaultTransforms","array","undefined","pool","Pool","connectionString","url","value","user","username","host","database","password","ssl","port","connectionTimeoutMillis","connectTimeout","toMillis","idleTimeoutMillis","idleTimeout","max","maxConnections","min","minConnections","maxLifetimeSeconds","connectionTTL","toSeconds","application_name","applicationName","types","on","_err","acquireRelease","tryPromise","try","query","catch","cause","SqlError","message","promise","end","pipe","interruptible","timeoutOption","timeoutFail","duration","seconds","onTimeout","Error","ConnectionImpl","pg","constructor","run","params","async","resume","err","result","fail","succeed","rows","execute","sql","map","executeRaw","executeWithoutTransform","executeValues","text","rowMode","values","executeUnprepared","executeStream","self","cursor","sync","Cursor","close","pull","read","some","isNonEmptyArray","unsafeFromArray","none","repeatEffectChunkOption","unwrapScoped","reserveRaw","fiber","getOrThrow","getCurrentFiber","scope","unsafeGet","currentContext","connect","client","release","as","addFinalizer","reserve","listenClient","acquire","assign","acquirer","transactionAcquirer","spanAttributes","entries","config","json","_","PgJson","listen","channel","asyncPush","fnUntraced","emit","onNotification","msg","payload","single","off","escapeIdentifier","notify","void","layerConfig","scopedContext","unwrap","flatMap","add","SqlClient","provide","layer","transform","transformValue","dialect","placeholder","onIdentifier","withoutTransform","escape","onRecordUpdate","placeholders","valueAlias","valueColumns","returning","flat","concat","onCustom","type","kind","i0","defaultEscape","custom"],"sources":["../../src/PgClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"PgClient.js","names":["Reactivity","_interopRequireWildcard","require","Client","_SqlError","Statement","Arr","Chunk","Config","Context","Duration","Effect","Fiber","Function","Layer","Option","RcRef","Redacted","Scope","Stream","Pg","_pgCursor","_interopRequireDefault","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ATTR_DB_SYSTEM_NAME","ATTR_DB_NAMESPACE","ATTR_SERVER_ADDRESS","ATTR_SERVER_PORT","TypeId","exports","PgClient","GenericTag","make","options","gen","compiler","makeCompiler","transformQueryNames","transformJson","transformRows","transformResultNames","defaultTransforms","array","undefined","pool","Pool","connectionString","url","value","user","username","host","database","password","ssl","port","connectionTimeoutMillis","connectTimeout","toMillis","idleTimeoutMillis","idleTimeout","max","maxConnections","min","minConnections","maxLifetimeSeconds","connectionTTL","toSeconds","application_name","applicationName","types","on","_err","acquireRelease","tryPromise","try","query","catch","cause","SqlError","message","promise","end","pipe","interruptible","timeoutOption","timeoutFail","duration","seconds","onTimeout","Error","ConnectionImpl","pg","constructor","runWithClient","async","resume","makeCancel","done","cancel","release","constVoid","connect","err","client","release_","fail","eff","suspend","void","ensuring","sync","run","params","result","succeed","Array","isArray","map","rows","execute","sql","executeRaw","executeWithoutTransform","executeValues","text","rowMode","values","executeUnprepared","executeStream","self","cursor","Cursor","close","pull","read","some","isNonEmptyArray","unsafeFromArray","none","repeatEffectChunkOption","unwrapScoped","reserveRaw","fiber","getOrThrow","getCurrentFiber","scope","unsafeGet","currentContext","as","addFinalizer","reserve","listenClient","acquire","assign","acquirer","transactionAcquirer","spanAttributes","entries","config","json","_","PgJson","listen","channel","asyncPush","fnUntraced","emit","onNotification","msg","payload","single","off","escapeIdentifier","notify","cancelEffects","processId","processID","layerConfig","scopedContext","unwrap","flatMap","add","SqlClient","provide","layer","transform","transformValue","dialect","placeholder","onIdentifier","withoutTransform","escape","onRecordUpdate","placeholders","valueAlias","valueColumns","returning","flat","concat","onCustom","type","kind","i0","defaultEscape","custom"],"sources":["../../src/PgClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"PgClient.d.ts","sourceRoot":"","sources":["../../src/PgClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PgClient.d.ts","sourceRoot":"","sources":["../../src/PgClient.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ import * as Context from "effect/Context";
12
12
  import * as Duration from "effect/Duration";
13
13
  import * as Effect from "effect/Effect";
14
14
  import * as Fiber from "effect/Fiber";
15
+ import * as Function from "effect/Function";
15
16
  import * as Layer from "effect/Layer";
16
17
  import * as Option from "effect/Option";
17
18
  import * as RcRef from "effect/RcRef";
@@ -76,16 +77,54 @@ export const make = options => Effect.gen(function* () {
76
77
  constructor(pg) {
77
78
  this.pg = pg;
78
79
  }
79
- run(query, params) {
80
+ runWithClient(f) {
81
+ if (this.pg !== undefined) {
82
+ return Effect.async(resume => {
83
+ f(this.pg, resume);
84
+ return makeCancel(pool, this.pg);
85
+ });
86
+ }
80
87
  return Effect.async(resume => {
81
- this.pg.query(query, params, (err, result) => {
88
+ let done = false;
89
+ let cancel = undefined;
90
+ let release = Function.constVoid;
91
+ pool.connect((err, client, release_) => {
92
+ if (err) {
93
+ return resume(Effect.fail(new SqlError({
94
+ cause: err,
95
+ message: "Failed to acquire connection"
96
+ })));
97
+ } else if (done) {
98
+ return release();
99
+ }
100
+ release = release_;
101
+ cancel = makeCancel(pool, client);
102
+ f(client, eff => {
103
+ release();
104
+ resume(eff);
105
+ });
106
+ });
107
+ return Effect.suspend(() => {
108
+ done = true;
109
+ if (!cancel) {
110
+ release();
111
+ return Effect.void;
112
+ }
113
+ return Effect.ensuring(cancel, Effect.sync(release));
114
+ });
115
+ });
116
+ }
117
+ run(query, params) {
118
+ return this.runWithClient((client, resume) => {
119
+ client.query(query, params, (err, result) => {
82
120
  if (err) {
83
121
  resume(Effect.fail(new SqlError({
84
122
  cause: err,
85
123
  message: "Failed to execute statement"
86
124
  })));
87
125
  } else {
88
- resume(Effect.succeed(result.rows));
126
+ // Multi-statement queries return an array of results
127
+ resume(Effect.succeed(Array.isArray(result) ? result.map(r => r.rows ?? []) : result.rows ?? []));
89
128
  }
90
129
  });
91
130
  });
@@ -94,8 +133,8 @@ export const make = options => Effect.gen(function* () {
94
133
  return transformRows ? Effect.map(this.run(sql, params), transformRows) : this.run(sql, params);
95
134
  }
96
135
  executeRaw(sql, params) {
97
- return Effect.async(resume => {
98
- this.pg.query(sql, params, (err, result) => {
136
+ return this.runWithClient((client, resume) => {
137
+ client.query(sql, params, (err, result) => {
99
138
  if (err) {
100
139
  resume(Effect.fail(new SqlError({
101
140
  cause: err,
@@ -111,8 +150,8 @@ export const make = options => Effect.gen(function* () {
111
150
  return this.run(sql, params);
112
151
  }
113
152
  executeValues(sql, params) {
114
- return Effect.async(resume => {
115
- this.pg.query({
153
+ return this.runWithClient((client, resume) => {
154
+ client.query({
116
155
  text: sql,
117
156
  rowMode: "array",
118
157
  values: params
@@ -135,7 +174,7 @@ export const make = options => Effect.gen(function* () {
135
174
  // eslint-disable-next-line @typescript-eslint/no-this-alias
136
175
  const self = this;
137
176
  return Effect.gen(function* () {
138
- const cursor = yield* Effect.acquireRelease(Effect.sync(() => self.pg.query(new Cursor(sql, params))), cursor => Effect.sync(() => cursor.close()));
177
+ const cursor = yield* Effect.acquireRelease(Effect.sync(() => (self.pg ?? pool).query(new Cursor(sql, params))), cursor => Effect.sync(() => cursor.close()));
139
178
  const pull = Effect.async(resume => {
140
179
  cursor.read(128, (err, rows) => {
141
180
  if (err) {
@@ -173,7 +212,7 @@ export const make = options => Effect.gen(function* () {
173
212
  acquire: reserveRaw
174
213
  });
175
214
  return Object.assign(yield* Client.make({
176
- acquirer: Effect.succeed(new ConnectionImpl(pool)),
215
+ acquirer: Effect.succeed(new ConnectionImpl()),
177
216
  transactionAcquirer: reserve,
178
217
  compiler,
179
218
  spanAttributes: [...(options.spanAttributes ? Object.entries(options.spanAttributes) : []), [ATTR_DB_SYSTEM_NAME, "postgresql"], [ATTR_DB_NAMESPACE, options.database ?? options.username ?? "postgres"], [ATTR_SERVER_ADDRESS, options.host ?? "localhost"], [ATTR_SERVER_PORT, options.port ?? 5432]],
@@ -223,6 +262,20 @@ export const make = options => Effect.gen(function* () {
223
262
  })
224
263
  });
225
264
  });
265
+ const cancelEffects = /*#__PURE__*/new WeakMap();
266
+ const makeCancel = (pool, client) => {
267
+ if (cancelEffects.has(client)) {
268
+ return cancelEffects.get(client);
269
+ }
270
+ const processId = client.processID;
271
+ const eff = processId !== undefined ? Effect.async(resume => {
272
+ pool.query(`SELECT pg_cancel_backend(${processId})`, () => {
273
+ resume(Effect.void);
274
+ });
275
+ }) : undefined;
276
+ cancelEffects.set(client, eff);
277
+ return eff;
278
+ };
226
279
  /**
227
280
  * @category layers
228
281
  * @since 1.0.0
@@ -1 +1 @@
1
- {"version":3,"file":"PgClient.js","names":["Reactivity","Client","SqlError","Statement","Arr","Chunk","Config","Context","Duration","Effect","Fiber","Layer","Option","RcRef","Redacted","Scope","Stream","Pg","Cursor","ATTR_DB_SYSTEM_NAME","ATTR_DB_NAMESPACE","ATTR_SERVER_ADDRESS","ATTR_SERVER_PORT","TypeId","PgClient","GenericTag","make","options","gen","compiler","makeCompiler","transformQueryNames","transformJson","transformRows","transformResultNames","defaultTransforms","array","undefined","pool","Pool","connectionString","url","value","user","username","host","database","password","ssl","port","connectionTimeoutMillis","connectTimeout","toMillis","idleTimeoutMillis","idleTimeout","max","maxConnections","min","minConnections","maxLifetimeSeconds","connectionTTL","toSeconds","application_name","applicationName","types","on","_err","acquireRelease","tryPromise","try","query","catch","cause","message","promise","end","pipe","interruptible","timeoutOption","timeoutFail","duration","seconds","onTimeout","Error","ConnectionImpl","pg","constructor","run","params","async","resume","err","result","fail","succeed","rows","execute","sql","map","executeRaw","executeWithoutTransform","executeValues","text","rowMode","values","executeUnprepared","executeStream","self","cursor","sync","close","pull","read","some","isNonEmptyArray","unsafeFromArray","none","repeatEffectChunkOption","unwrapScoped","reserveRaw","fiber","getOrThrow","getCurrentFiber","scope","unsafeGet","currentContext","connect","client","release","as","addFinalizer","reserve","listenClient","acquire","Object","assign","acquirer","transactionAcquirer","spanAttributes","entries","config","json","_","PgJson","listen","channel","asyncPush","fnUntraced","emit","get","onNotification","msg","payload","single","off","escapeIdentifier","notify","void","layerConfig","scopedContext","unwrap","flatMap","add","SqlClient","provide","layer","transform","transformValue","dialect","placeholder","onIdentifier","withoutTransform","escape","onRecordUpdate","placeholders","valueAlias","valueColumns","returning","flat","concat","onCustom","type","kind","i0","defaultEscape","custom"],"sources":["../../src/PgClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"PgClient.js","names":["Reactivity","Client","SqlError","Statement","Arr","Chunk","Config","Context","Duration","Effect","Fiber","Function","Layer","Option","RcRef","Redacted","Scope","Stream","Pg","Cursor","ATTR_DB_SYSTEM_NAME","ATTR_DB_NAMESPACE","ATTR_SERVER_ADDRESS","ATTR_SERVER_PORT","TypeId","PgClient","GenericTag","make","options","gen","compiler","makeCompiler","transformQueryNames","transformJson","transformRows","transformResultNames","defaultTransforms","array","undefined","pool","Pool","connectionString","url","value","user","username","host","database","password","ssl","port","connectionTimeoutMillis","connectTimeout","toMillis","idleTimeoutMillis","idleTimeout","max","maxConnections","min","minConnections","maxLifetimeSeconds","connectionTTL","toSeconds","application_name","applicationName","types","on","_err","acquireRelease","tryPromise","try","query","catch","cause","message","promise","end","pipe","interruptible","timeoutOption","timeoutFail","duration","seconds","onTimeout","Error","ConnectionImpl","pg","constructor","runWithClient","f","async","resume","makeCancel","done","cancel","release","constVoid","connect","err","client","release_","fail","eff","suspend","void","ensuring","sync","run","params","result","succeed","Array","isArray","map","r","rows","execute","sql","executeRaw","executeWithoutTransform","executeValues","text","rowMode","values","executeUnprepared","executeStream","self","cursor","close","pull","read","some","isNonEmptyArray","unsafeFromArray","none","repeatEffectChunkOption","unwrapScoped","reserveRaw","fiber","getOrThrow","getCurrentFiber","scope","unsafeGet","currentContext","as","addFinalizer","reserve","listenClient","acquire","Object","assign","acquirer","transactionAcquirer","spanAttributes","entries","config","json","_","PgJson","listen","channel","asyncPush","fnUntraced","emit","get","onNotification","msg","payload","single","off","escapeIdentifier","notify","cancelEffects","WeakMap","has","processId","processID","set","layerConfig","scopedContext","unwrap","flatMap","add","SqlClient","provide","layer","transform","transformValue","dialect","placeholder","onIdentifier","withoutTransform","escape","onRecordUpdate","placeholders","valueAlias","valueColumns","returning","flat","concat","onCustom","type","kind","i0","defaultEscape","custom"],"sources":["../../src/PgClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect/sql-pg",
3
- "version": "0.48.0",
3
+ "version": "0.49.1",
4
4
  "description": "A PostgreSQL toolkit for Effect",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -12,13 +12,15 @@
12
12
  "homepage": "https://effect.website",
13
13
  "dependencies": {
14
14
  "pg": "^8.16.3",
15
- "pg-cursor": "^2.15.3"
15
+ "pg-cursor": "^2.15.3",
16
+ "pg-pool": "^3.10.1",
17
+ "pg-types": "^4.1.0"
16
18
  },
17
19
  "peerDependencies": {
18
20
  "@effect/experimental": "^0.57.0",
19
21
  "@effect/platform": "^0.93.0",
20
- "@effect/sql": "^0.47.0",
21
- "effect": "^3.19.0"
22
+ "@effect/sql": "^0.48.0",
23
+ "effect": "^3.19.1"
22
24
  },
23
25
  "publishConfig": {
24
26
  "provenance": true
package/src/PgClient.ts CHANGED
@@ -5,7 +5,7 @@ import * as Reactivity from "@effect/experimental/Reactivity"
5
5
  import * as Client from "@effect/sql/SqlClient"
6
6
  import type { Connection } from "@effect/sql/SqlConnection"
7
7
  import { SqlError } from "@effect/sql/SqlError"
8
- import type { Custom, Fragment, Primitive } from "@effect/sql/Statement"
8
+ import type { Custom, Fragment } from "@effect/sql/Statement"
9
9
  import * as Statement from "@effect/sql/Statement"
10
10
  import * as Arr from "effect/Array"
11
11
  import * as Chunk from "effect/Chunk"
@@ -15,6 +15,7 @@ import * as Context from "effect/Context"
15
15
  import * as Duration from "effect/Duration"
16
16
  import * as Effect from "effect/Effect"
17
17
  import * as Fiber from "effect/Fiber"
18
+ import * as Function from "effect/Function"
18
19
  import * as Layer from "effect/Layer"
19
20
  import * as Option from "effect/Option"
20
21
  import * as RcRef from "effect/RcRef"
@@ -158,18 +159,58 @@ export const make = (
158
159
  )
159
160
 
160
161
  class ConnectionImpl implements Connection {
161
- readonly pg: Pg.Pool | Pg.PoolClient
162
- constructor(pg: Pg.Pool | Pg.PoolClient) {
162
+ readonly pg: Pg.PoolClient | undefined
163
+ constructor(pg?: Pg.PoolClient) {
163
164
  this.pg = pg
164
165
  }
165
166
 
166
- private run(query: string, params: ReadonlyArray<Primitive>) {
167
- return Effect.async<ReadonlyArray<any>, SqlError>((resume) => {
168
- this.pg.query(query, params as any, (err, result) => {
167
+ private runWithClient<A>(f: (client: Pg.PoolClient, resume: (_: Effect.Effect<A, SqlError>) => void) => void) {
168
+ if (this.pg !== undefined) {
169
+ return Effect.async<A, SqlError>((resume) => {
170
+ f(this.pg!, resume)
171
+ return makeCancel(pool, this.pg!)
172
+ })
173
+ }
174
+ return Effect.async<A, SqlError>((resume) => {
175
+ let done = false
176
+ let cancel: Effect.Effect<void> | undefined = undefined
177
+ let release = Function.constVoid
178
+ pool.connect((err, client, release_) => {
179
+ if (err) {
180
+ return resume(Effect.fail(new SqlError({ cause: err, message: "Failed to acquire connection" })))
181
+ } else if (done) {
182
+ return release()
183
+ }
184
+ release = release_
185
+ cancel = makeCancel(pool, client!)
186
+ f(client!, (eff) => {
187
+ release()
188
+ resume(eff)
189
+ })
190
+ })
191
+ return Effect.suspend(() => {
192
+ done = true
193
+ if (!cancel) {
194
+ release()
195
+ return Effect.void
196
+ }
197
+ return Effect.ensuring(cancel, Effect.sync(release))
198
+ })
199
+ })
200
+ }
201
+
202
+ private run(query: string, params: ReadonlyArray<unknown>) {
203
+ return this.runWithClient<ReadonlyArray<any>>((client, resume) => {
204
+ client.query(query, params as any, (err, result) => {
169
205
  if (err) {
170
206
  resume(Effect.fail(new SqlError({ cause: err, message: "Failed to execute statement" })))
171
207
  } else {
172
- resume(Effect.succeed(result.rows))
208
+ // Multi-statement queries return an array of results
209
+ resume(Effect.succeed(
210
+ Array.isArray(result)
211
+ ? result.map((r) => r.rows ?? [])
212
+ : result.rows ?? []
213
+ ))
173
214
  }
174
215
  })
175
216
  })
@@ -177,16 +218,16 @@ export const make = (
177
218
 
178
219
  execute(
179
220
  sql: string,
180
- params: ReadonlyArray<Primitive>,
221
+ params: ReadonlyArray<unknown>,
181
222
  transformRows: (<A extends object>(row: ReadonlyArray<A>) => ReadonlyArray<A>) | undefined
182
223
  ) {
183
224
  return transformRows
184
225
  ? Effect.map(this.run(sql, params), transformRows)
185
226
  : this.run(sql, params)
186
227
  }
187
- executeRaw(sql: string, params: ReadonlyArray<Primitive>) {
188
- return Effect.async<Pg.Result, SqlError>((resume) => {
189
- this.pg.query(sql, params as any, (err, result) => {
228
+ executeRaw(sql: string, params: ReadonlyArray<unknown>) {
229
+ return this.runWithClient<Pg.Result>((client, resume) => {
230
+ client.query(sql, params as any, (err, result) => {
190
231
  if (err) {
191
232
  resume(Effect.fail(new SqlError({ cause: err, message: "Failed to execute statement" })))
192
233
  } else {
@@ -195,12 +236,12 @@ export const make = (
195
236
  })
196
237
  })
197
238
  }
198
- executeWithoutTransform(sql: string, params: ReadonlyArray<Primitive>) {
239
+ executeWithoutTransform(sql: string, params: ReadonlyArray<unknown>) {
199
240
  return this.run(sql, params)
200
241
  }
201
- executeValues(sql: string, params: ReadonlyArray<Primitive>) {
202
- return Effect.async<ReadonlyArray<any>, SqlError>((resume) => {
203
- this.pg.query(
242
+ executeValues(sql: string, params: ReadonlyArray<unknown>) {
243
+ return this.runWithClient<ReadonlyArray<any>>((client, resume) => {
244
+ client.query(
204
245
  {
205
246
  text: sql,
206
247
  rowMode: "array",
@@ -218,21 +259,21 @@ export const make = (
218
259
  }
219
260
  executeUnprepared(
220
261
  sql: string,
221
- params: ReadonlyArray<Primitive>,
262
+ params: ReadonlyArray<unknown>,
222
263
  transformRows: (<A extends object>(row: ReadonlyArray<A>) => ReadonlyArray<A>) | undefined
223
264
  ) {
224
265
  return this.execute(sql, params, transformRows)
225
266
  }
226
267
  executeStream(
227
268
  sql: string,
228
- params: ReadonlyArray<Primitive>,
269
+ params: ReadonlyArray<unknown>,
229
270
  transformRows: (<A extends object>(row: ReadonlyArray<A>) => ReadonlyArray<A>) | undefined
230
271
  ) {
231
272
  // eslint-disable-next-line @typescript-eslint/no-this-alias
232
273
  const self = this
233
274
  return Effect.gen(function*() {
234
275
  const cursor = yield* Effect.acquireRelease(
235
- Effect.sync(() => self.pg.query(new Cursor(sql, params as any))),
276
+ Effect.sync(() => (self.pg ?? pool).query(new Cursor(sql, params as any))),
236
277
  (cursor) => Effect.sync(() => cursor.close())
237
278
  )
238
279
  const pull = Effect.async<Chunk.Chunk<any>, Option.Option<SqlError>>((resume) => {
@@ -272,7 +313,7 @@ export const make = (
272
313
 
273
314
  return Object.assign(
274
315
  yield* Client.make({
275
- acquirer: Effect.succeed(new ConnectionImpl(pool)),
316
+ acquirer: Effect.succeed(new ConnectionImpl()),
276
317
  transactionAcquirer: reserve,
277
318
  compiler,
278
319
  spanAttributes: [
@@ -329,6 +370,23 @@ export const make = (
329
370
  )
330
371
  })
331
372
 
373
+ const cancelEffects = new WeakMap<Pg.PoolClient, Effect.Effect<void> | undefined>()
374
+ const makeCancel = (pool: Pg.Pool, client: Pg.PoolClient) => {
375
+ if (cancelEffects.has(client)) {
376
+ return cancelEffects.get(client)!
377
+ }
378
+ const processId = (client as any).processID
379
+ const eff = processId !== undefined ?
380
+ Effect.async<void>((resume) => {
381
+ pool.query(`SELECT pg_cancel_backend(${processId})`, () => {
382
+ resume(Effect.void)
383
+ })
384
+ }) :
385
+ undefined
386
+ cancelEffects.set(client, eff)
387
+ return eff
388
+ }
389
+
332
390
  /**
333
391
  * @category layers
334
392
  * @since 1.0.0