@effect/cluster 0.53.4 → 0.53.6

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.
@@ -1 +1 @@
1
- {"version":3,"file":"ShardingConfig.js","names":["Config","ConfigProvider","Context","Duration","Effect","Layer","Option","RunnerAddress","ShardingConfig","Tag","defaultRunnerAddress","make","host","port","defaults","runnerAddress","some","runnerListenAddress","none","runnerShardWeight","shardsPerGroup","shardGroups","preemptiveShutdown","shardLockRefreshInterval","seconds","shardLockExpiration","entityMailboxCapacity","entityMaxIdleTime","minutes","entityRegistrationTimeout","entityTerminationTimeout","entityMessagePollInterval","entityReplyPollInterval","millis","sendRetryInterval","refreshAssignmentsInterval","runnerHealthCheckInterval","simulateRemoteSerialization","layer","options","succeed","layerDefaults","config","all","string","pipe","withDefault","withDescription","integer","map","option","array","boolean","duration","configFromEnv","withConfigProvider","fromEnv","constantCase","layerFromEnv","effect"],"sources":["../../src/ShardingConfig.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAGA,OAAO,KAAKA,MAAM,MAAM,eAAe;AAEvC,OAAO,KAAKC,cAAc,MAAM,uBAAuB;AACvD,OAAO,KAAKC,OAAO,MAAM,gBAAgB;AAEzC,OAAO,KAAKC,QAAQ,MAAM,iBAAiB;AAC3C,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,SAASC,aAAa,QAAQ,oBAAoB;AAElD;;;;;;AAMA,OAAM,MAAOC,cAAe,sBAAQN,OAAO,CAACO,GAAG,CAAC,gCAAgC,CAAC,EAmG7E;AAEJ,MAAMC,oBAAoB,gBAAGH,aAAa,CAACI,IAAI,CAAC;EAAEC,IAAI,EAAE,WAAW;EAAEC,IAAI,EAAE;AAAK,CAAE,CAAC;AAEnF;;;;AAIA,OAAO,MAAMC,QAAQ,GAA2B;EAC9CC,aAAa,eAAET,MAAM,CAACU,IAAI,CAACN,oBAAoB,CAAC;EAChDO,mBAAmB,eAAEX,MAAM,CAACY,IAAI,EAAE;EAClCC,iBAAiB,EAAE,CAAC;EACpBC,cAAc,EAAE,GAAG;EACnBC,WAAW,EAAE,CAAC,SAAS,CAAC;EACxBC,kBAAkB,EAAE,IAAI;EACxBC,wBAAwB,eAAEpB,QAAQ,CAACqB,OAAO,CAAC,EAAE,CAAC;EAC9CC,mBAAmB,eAAEtB,QAAQ,CAACqB,OAAO,CAAC,EAAE,CAAC;EACzCE,qBAAqB,EAAE,IAAI;EAC3BC,iBAAiB,eAAExB,QAAQ,CAACyB,OAAO,CAAC,CAAC,CAAC;EACtCC,yBAAyB,eAAE1B,QAAQ,CAACyB,OAAO,CAAC,CAAC,CAAC;EAC9CE,wBAAwB,eAAE3B,QAAQ,CAACqB,OAAO,CAAC,EAAE,CAAC;EAC9CO,yBAAyB,eAAE5B,QAAQ,CAACqB,OAAO,CAAC,EAAE,CAAC;EAC/CQ,uBAAuB,eAAE7B,QAAQ,CAAC8B,MAAM,CAAC,GAAG,CAAC;EAC7CC,iBAAiB,eAAE/B,QAAQ,CAAC8B,MAAM,CAAC,GAAG,CAAC;EACvCE,0BAA0B,eAAEhC,QAAQ,CAACqB,OAAO,CAAC,CAAC,CAAC;EAC/CY,yBAAyB,eAAEjC,QAAQ,CAACyB,OAAO,CAAC,CAAC,CAAC;EAC9CS,2BAA2B,EAAE;CAC9B;AAED;;;;AAIA,OAAO,MAAMC,KAAK,GAAIC,OAAyC,IAC7DlC,KAAK,CAACmC,OAAO,CAAChC,cAAc,EAAE;EAAE,GAAGM,QAAQ;EAAE,GAAGyB;AAAO,CAAE,CAAC;AAE5D;;;;AAIA,OAAO,MAAME,aAAa,gBAAgCH,KAAK,EAAE;AAEjE;;;;AAIA,OAAO,MAAMI,MAAM,gBAA0C1C,MAAM,CAAC2C,GAAG,CAAC;EACtE5B,aAAa,eAAEf,MAAM,CAAC2C,GAAG,CAAC;IACxB/B,IAAI,EAAEZ,MAAM,CAAC4C,MAAM,CAAC,MAAM,CAAC,CAACC,IAAI,CAC9B7C,MAAM,CAAC8C,WAAW,CAACpC,oBAAoB,CAACE,IAAI,CAAC,EAC7CZ,MAAM,CAAC+C,eAAe,CAAC,2CAA2C,CAAC,CACpE;IACDlC,IAAI,EAAEb,MAAM,CAACgD,OAAO,CAAC,MAAM,CAAC,CAACH,IAAI,CAC/B7C,MAAM,CAAC8C,WAAW,CAACpC,oBAAoB,CAACG,IAAI,CAAC,EAC7Cb,MAAM,CAAC+C,eAAe,CAAC,+CAA+C,CAAC;GAE1E,CAAC,CAACF,IAAI,cAAC7C,MAAM,CAACiD,GAAG,CAAEV,OAAO,IAAKhC,aAAa,CAACI,IAAI,CAAC4B,OAAO,CAAC,CAAC,EAAEvC,MAAM,CAACkD,MAAM,CAAC;EAC5EjC,mBAAmB,eAAEjB,MAAM,CAAC2C,GAAG,CAAC;IAC9B/B,IAAI,EAAEZ,MAAM,CAAC4C,MAAM,CAAC,YAAY,CAAC,CAACC,IAAI,CACpC7C,MAAM,CAAC+C,eAAe,CAAC,wBAAwB,CAAC,CACjD;IACDlC,IAAI,EAAEb,MAAM,CAACgD,OAAO,CAAC,YAAY,CAAC,CAACH,IAAI,CACrC7C,MAAM,CAAC8C,WAAW,CAACpC,oBAAoB,CAACG,IAAI,CAAC,EAC7Cb,MAAM,CAAC+C,eAAe,CAAC,wBAAwB,CAAC;GAEnD,CAAC,CAACF,IAAI,cAAC7C,MAAM,CAACiD,GAAG,CAAEV,OAAO,IAAKhC,aAAa,CAACI,IAAI,CAAC4B,OAAO,CAAC,CAAC,EAAEvC,MAAM,CAACkD,MAAM,CAAC;EAC5E/B,iBAAiB,eAAEnB,MAAM,CAACgD,OAAO,CAAC,mBAAmB,CAAC,CAACH,IAAI,cACzD7C,MAAM,CAAC8C,WAAW,CAAChC,QAAQ,CAACK,iBAAiB,CAAC,CAC/C;EACDE,WAAW,eAAErB,MAAM,CAACmD,KAAK,CAACnD,MAAM,CAAC4C,MAAM,CAAC,aAAa,CAAC,CAAC,CAACC,IAAI,cAC1D7C,MAAM,CAAC8C,WAAW,CAAC,CAAC,SAAS,CAAC,CAAC,eAC/B9C,MAAM,CAAC+C,eAAe,CAAC,oDAAoD,CAAC,CAC7E;EACD3B,cAAc,eAAEpB,MAAM,CAACgD,OAAO,CAAC,gBAAgB,CAAC,CAACH,IAAI,cACnD7C,MAAM,CAAC8C,WAAW,CAAChC,QAAQ,CAACM,cAAc,CAAC,eAC3CpB,MAAM,CAAC+C,eAAe,CAAC,mDAAmD,CAAC,CAC5E;EACDzB,kBAAkB,eAAEtB,MAAM,CAACoD,OAAO,CAAC,oBAAoB,CAAC,CAACP,IAAI,cAC3D7C,MAAM,CAAC8C,WAAW,CAAChC,QAAQ,CAACQ,kBAAkB,CAAC,eAC/CtB,MAAM,CAAC+C,eAAe,CAAC,qEAAqE,CAAC,CAC9F;EACDxB,wBAAwB,eAAEvB,MAAM,CAACqD,QAAQ,CAAC,0BAA0B,CAAC,CAACR,IAAI,cACxE7C,MAAM,CAAC8C,WAAW,CAAChC,QAAQ,CAACS,wBAAwB,CAAC,eACrDvB,MAAM,CAAC+C,eAAe,CAAC,8BAA8B,CAAC,CACvD;EACDtB,mBAAmB,eAAEzB,MAAM,CAACqD,QAAQ,CAAC,qBAAqB,CAAC,CAACR,IAAI,cAC9D7C,MAAM,CAAC8C,WAAW,CAAChC,QAAQ,CAACW,mBAAmB,CAAC,eAChDzB,MAAM,CAAC+C,eAAe,CAAC,iCAAiC,CAAC,CAC1D;EACDrB,qBAAqB,eAAE1B,MAAM,CAACgD,OAAO,CAAC,uBAAuB,CAAC,CAACH,IAAI,cACjE7C,MAAM,CAAC8C,WAAW,CAAChC,QAAQ,CAACY,qBAAqB,CAAC,eAClD1B,MAAM,CAAC+C,eAAe,CAAC,mDAAmD,CAAC,CAC5E;EACDpB,iBAAiB,eAAE3B,MAAM,CAACqD,QAAQ,CAAC,mBAAmB,CAAC,CAACR,IAAI,cAC1D7C,MAAM,CAAC8C,WAAW,CAAChC,QAAQ,CAACa,iBAAiB,CAAC,eAC9C3B,MAAM,CAAC+C,eAAe,CACpB,kHAAkH,CACnH,CACF;EACDlB,yBAAyB,eAAE7B,MAAM,CAACqD,QAAQ,CAAC,2BAA2B,CAAC,CAACR,IAAI,cAC1E7C,MAAM,CAAC8C,WAAW,CAAChC,QAAQ,CAACe,yBAAyB,CAAC,eACtD7B,MAAM,CAAC+C,eAAe,CACpB,6HAA6H,CAC9H,CACF;EACDjB,wBAAwB,eAAE9B,MAAM,CAACqD,QAAQ,CAAC,0BAA0B,CAAC,CAACR,IAAI,cACxE7C,MAAM,CAAC8C,WAAW,CAAChC,QAAQ,CAACgB,wBAAwB,CAAC,eACrD9B,MAAM,CAAC+C,eAAe,CAAC,kEAAkE,CAAC,CAC3F;EACDhB,yBAAyB,eAAE/B,MAAM,CAACqD,QAAQ,CAAC,2BAA2B,CAAC,CAACR,IAAI,cAC1E7C,MAAM,CAAC8C,WAAW,CAAChC,QAAQ,CAACiB,yBAAyB,CAAC,eACtD/B,MAAM,CAAC+C,eAAe,CAAC,sEAAsE,CAAC,CAC/F;EACDf,uBAAuB,eAAEhC,MAAM,CAACqD,QAAQ,CAAC,yBAAyB,CAAC,CAACR,IAAI,cACtE7C,MAAM,CAAC8C,WAAW,CAAChC,QAAQ,CAACkB,uBAAuB,CAAC,eACpDhC,MAAM,CAAC+C,eAAe,CAAC,gEAAgE,CAAC,CACzF;EACDb,iBAAiB,eAAElC,MAAM,CAACqD,QAAQ,CAAC,mBAAmB,CAAC,CAACR,IAAI,cAC1D7C,MAAM,CAAC8C,WAAW,CAAChC,QAAQ,CAACoB,iBAAiB,CAAC,eAC9ClC,MAAM,CAAC+C,eAAe,CAAC,wEAAwE,CAAC,CACjG;EACDZ,0BAA0B,eAAEnC,MAAM,CAACqD,QAAQ,CAAC,4BAA4B,CAAC,CAACR,IAAI,cAC5E7C,MAAM,CAAC8C,WAAW,CAAChC,QAAQ,CAACqB,0BAA0B,CAAC,eACvDnC,MAAM,CAAC+C,eAAe,CAAC,qDAAqD,CAAC,CAC9E;EACDX,yBAAyB,eAAEpC,MAAM,CAACqD,QAAQ,CAAC,2BAA2B,CAAC,CAACR,IAAI,cAC1E7C,MAAM,CAAC8C,WAAW,CAAChC,QAAQ,CAACsB,yBAAyB,CAAC,eACtDpC,MAAM,CAAC+C,eAAe,CAAC,uEAAuE,CAAC,CAChG;EACDV,2BAA2B,eAAErC,MAAM,CAACoD,OAAO,CAAC,6BAA6B,CAAC,CAACP,IAAI,cAC7E7C,MAAM,CAAC8C,WAAW,CAAChC,QAAQ,CAACuB,2BAA2B,CAAC,eACxDrC,MAAM,CAAC+C,eAAe,CAAC,kFAAkF,CAAC;CAE7G,CAAC;AAEF;;;;AAIA,OAAO,MAAMO,aAAa,gBAAGZ,MAAM,CAACG,IAAI,cACtCzC,MAAM,CAACmD,kBAAkB,cACvBtD,cAAc,CAACuD,OAAO,EAAE,CAACX,IAAI,CAC3B5C,cAAc,CAACwD,YAAY,CAC5B,CACF,CACF;AAED;;;;AAIA,OAAO,MAAMC,YAAY,GAAInB,OAAqD,IAIhFlC,KAAK,CAACsD,MAAM,CACVnD,cAAc,EACd+B,OAAO,GAAGnC,MAAM,CAAC6C,GAAG,CAACK,aAAa,EAAGZ,MAAM,KAAM;EAAE,GAAGA,MAAM;EAAE,GAAGH;AAAO,CAAE,CAAC,CAAC,GAAGe,aAAa,CAC7F","ignoreList":[]}
1
+ {"version":3,"file":"ShardingConfig.js","names":["Config","ConfigProvider","Context","Duration","Effect","Layer","Option","RunnerAddress","ShardingConfig","Tag","defaultRunnerAddress","make","host","port","defaults","runnerAddress","some","runnerListenAddress","none","runnerShardWeight","shardsPerGroup","shardGroups","preemptiveShutdown","shardLockRefreshInterval","seconds","shardLockExpiration","shardLockDisableAdvisory","entityMailboxCapacity","entityMaxIdleTime","minutes","entityRegistrationTimeout","entityTerminationTimeout","entityMessagePollInterval","entityReplyPollInterval","millis","sendRetryInterval","refreshAssignmentsInterval","runnerHealthCheckInterval","simulateRemoteSerialization","layer","options","succeed","layerDefaults","config","all","string","pipe","withDefault","withDescription","integer","map","option","array","boolean","duration","configFromEnv","withConfigProvider","fromEnv","constantCase","layerFromEnv","effect"],"sources":["../../src/ShardingConfig.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -19,6 +19,7 @@ const withTracerDisabled = /*#__PURE__*/Effect.withTracerEnabled(false);
19
19
  */
20
20
  export const make = /*#__PURE__*/Effect.fnUntraced(function* (options) {
21
21
  const config = yield* ShardingConfig.ShardingConfig;
22
+ const disableAdvisoryLocks = config.shardLockDisableAdvisory;
22
23
  const sql = (yield* SqlClient.SqlClient).withoutTransforms();
23
24
  const prefix = options?.prefix ?? "cluster";
24
25
  const table = name => `${prefix}_${name}`;
@@ -111,8 +112,20 @@ export const make = /*#__PURE__*/Effect.fnUntraced(function* (options) {
111
112
  acquired_at DATETIME NOT NULL
112
113
  )
113
114
  `,
114
- mysql: () => Effect.void,
115
- pg: () => Effect.void,
115
+ mysql: () => sql`
116
+ CREATE TABLE IF NOT EXISTS ${locksTableSql} (
117
+ shard_id VARCHAR(50) PRIMARY KEY,
118
+ address VARCHAR(255) NOT NULL,
119
+ acquired_at DATETIME NOT NULL
120
+ )
121
+ `,
122
+ pg: () => sql`
123
+ CREATE TABLE IF NOT EXISTS ${locksTableSql} (
124
+ shard_id VARCHAR(50) PRIMARY KEY,
125
+ address VARCHAR(255) NOT NULL,
126
+ acquired_at TIMESTAMP NOT NULL
127
+ )
128
+ `,
116
129
  orElse: () =>
117
130
  // sqlite
118
131
  sql`
@@ -190,59 +203,91 @@ export const make = /*#__PURE__*/Effect.fnUntraced(function* (options) {
190
203
  const [query, params] = effect.compile();
191
204
  return lockConn.await.pipe(Effect.flatMap(([conn]) => conn.executeRaw(query, params)), Effect.onError(() => lockConn.unsafeRebuild()));
192
205
  };
206
+ const execWithLockConnUnprepared = effect => {
207
+ if (!lockConn) return effect.values;
208
+ const [query, params] = effect.compile();
209
+ return lockConn.await.pipe(Effect.flatMap(([conn]) => conn.executeUnprepared(query, params, undefined)), Effect.onError(() => lockConn.unsafeRebuild()));
210
+ };
193
211
  const execWithLockConnValues = effect => {
194
212
  if (!lockConn) return effect.values;
195
213
  const [query, params] = effect.compile();
196
214
  return lockConn.await.pipe(Effect.flatMap(([conn]) => conn.executeValues(query, params)), Effect.onError(() => lockConn.unsafeRebuild()));
197
215
  };
198
216
  const acquireLock = sql.onDialectOrElse({
199
- pg: () => Effect.fnUntraced(function* (_address, shardIds) {
200
- const [conn, pid] = yield* lockConn.await;
201
- const acquiredShardIds = [];
202
- const toAcquire = new Map(shardIds.map(shardId => [lockNumbers.get(shardId), shardId]));
203
- const takenLocks = yield* conn.executeValues(`SELECT objid FROM pg_locks WHERE locktype = 'advisory' AND granted = true AND pid = ${pid} ORDER BY objid`, []);
204
- for (let i = 0; i < takenLocks.length; i++) {
205
- const lockNum = takenLocks[i][0];
206
- acquiredShardIds.push(lockNumbersReverse.get(lockNum));
207
- toAcquire.delete(lockNum);
217
+ pg: () => {
218
+ if (disableAdvisoryLocks) {
219
+ return (address, shardIds) => {
220
+ const values = shardIds.map(shardId => sql`(${stringLiteral(shardId)}, ${stringLiteral(address)}, ${sqlNow})`);
221
+ return sql`
222
+ INSERT INTO ${locksTableSql} (shard_id, address, acquired_at) VALUES ${sql.csv(values)}
223
+ ON CONFLICT (shard_id) DO UPDATE
224
+ SET address = ${address}, acquired_at = ${sqlNow}
225
+ WHERE ${locksTableSql}.address = ${address}
226
+ OR ${locksTableSql}.acquired_at < ${lockExpiresAt}
227
+ `.pipe(Effect.andThen(acquiredLocks(address, shardIds)));
228
+ };
208
229
  }
209
- if (toAcquire.size === 0) {
210
- return acquiredShardIds;
211
- }
212
- const rows = yield* conn.executeUnprepared(`SELECT ${pgLocks(toAcquire)}`, [], undefined);
213
- const results = rows[0];
214
- for (const shardId in results) {
215
- if (results[shardId]) {
216
- acquiredShardIds.push(shardId);
230
+ return Effect.fnUntraced(function* (_address, shardIds) {
231
+ const [conn, pid] = yield* lockConn.await;
232
+ const acquiredShardIds = [];
233
+ const toAcquire = new Map(shardIds.map(shardId => [lockNumbers.get(shardId), shardId]));
234
+ const takenLocks = yield* conn.executeValues(`SELECT objid FROM pg_locks WHERE locktype = 'advisory' AND granted = true AND pid = ${pid} ORDER BY objid`, []);
235
+ for (let i = 0; i < takenLocks.length; i++) {
236
+ const lockNum = takenLocks[i][0];
237
+ acquiredShardIds.push(lockNumbersReverse.get(lockNum));
238
+ toAcquire.delete(lockNum);
217
239
  }
218
- }
219
- return acquiredShardIds;
220
- }, Effect.onError(() => lockConn.unsafeRebuild())),
221
- mysql: () => Effect.fnUntraced(function* (_address, shardIds) {
222
- const [conn, pid] = yield* lockConn.await;
223
- const takenLocks = (yield* conn.executeValues(`SELECT ${allMySqlTakenLocks}`, []))[0];
224
- const acquiredShardIds = [];
225
- const toAcquire = [];
226
- for (let i = 0; i < shardIds.length; i++) {
227
- const shardId = shardIds[i];
228
- const lockTakenBy = takenLocks[shardIdsIndex.get(shardId)];
229
- if (lockTakenBy === pid) {
230
- acquiredShardIds.push(shardId);
231
- } else if (shardIds.includes(shardId)) {
232
- toAcquire.push(shardId);
240
+ if (toAcquire.size === 0) {
241
+ return acquiredShardIds;
242
+ }
243
+ const rows = yield* conn.executeUnprepared(`SELECT ${pgLocks(toAcquire)}`, [], undefined);
244
+ const results = rows[0];
245
+ for (const shardId in results) {
246
+ if (results[shardId]) {
247
+ acquiredShardIds.push(shardId);
248
+ }
233
249
  }
234
- }
235
- if (toAcquire.length === 0) {
236
250
  return acquiredShardIds;
251
+ }, Effect.onError(() => lockConn.unsafeRebuild()));
252
+ },
253
+ mysql: () => {
254
+ if (disableAdvisoryLocks) {
255
+ return (address, shardIds) => {
256
+ const values = shardIds.map(shardId => sql`(${stringLiteral(shardId)}, ${stringLiteral(address)}, ${sqlNow})`);
257
+ return sql`
258
+ INSERT INTO ${locksTableSql} (shard_id, address, acquired_at) VALUES ${sql.csv(values)}
259
+ ON DUPLICATE KEY UPDATE
260
+ address = IF(address = VALUES(address) OR acquired_at < ${lockExpiresAt}, VALUES(address), address),
261
+ acquired_at = IF(address = VALUES(address) OR acquired_at < ${lockExpiresAt}, VALUES(acquired_at), acquired_at)
262
+ `.unprepared.pipe(Effect.andThen(acquiredLocks(address, shardIds)));
263
+ };
237
264
  }
238
- const results = (yield* conn.executeValues(`SELECT ${mysqlLocks(toAcquire)}`, []))[0];
239
- for (let i = 0; i < results.length; i++) {
240
- if (results[i] === 1) {
241
- acquiredShardIds.push(toAcquire[i]);
265
+ return Effect.fnUntraced(function* (_address, shardIds) {
266
+ const [conn, pid] = yield* lockConn.await;
267
+ const takenLocks = (yield* conn.executeValues(`SELECT ${allMySqlTakenLocks}`, []))[0];
268
+ const acquiredShardIds = [];
269
+ const toAcquire = [];
270
+ for (let i = 0; i < shardIds.length; i++) {
271
+ const shardId = shardIds[i];
272
+ const lockTakenBy = takenLocks[shardIdsIndex.get(shardId)];
273
+ if (lockTakenBy === pid) {
274
+ acquiredShardIds.push(shardId);
275
+ } else if (shardIds.includes(shardId)) {
276
+ toAcquire.push(shardId);
277
+ }
242
278
  }
243
- }
244
- return acquiredShardIds;
245
- }, Effect.onError(() => lockConn.unsafeRebuild())),
279
+ if (toAcquire.length === 0) {
280
+ return acquiredShardIds;
281
+ }
282
+ const results = (yield* conn.executeValues(`SELECT ${mysqlLocks(toAcquire)}`, []))[0];
283
+ for (let i = 0; i < results.length; i++) {
284
+ if (results[i] === 1) {
285
+ acquiredShardIds.push(toAcquire[i]);
286
+ }
287
+ }
288
+ return acquiredShardIds;
289
+ }, Effect.onError(() => lockConn.unsafeRebuild()));
290
+ },
246
291
  mssql: () => (address, shardIds) => {
247
292
  const values = shardIds.map(shardId => sql`(${stringLiteral(shardId)}, ${stringLiteral(address)}, ${sqlNow})`);
248
293
  return sql`
@@ -318,8 +363,27 @@ export const make = /*#__PURE__*/Effect.fnUntraced(function* (options) {
318
363
  const stringLiteral = s => sql.literal(wrapString(s));
319
364
  const stringLiteralArr = arr => sql.literal(`(${arr.map(wrapString).join(",")})`);
320
365
  const refreshShards = sql.onDialectOrElse({
321
- pg: () => acquireLock,
322
- mysql: () => acquireLock,
366
+ pg: () => {
367
+ if (!disableAdvisoryLocks) return acquireLock;
368
+ return (address, shardIds) => sql`
369
+ UPDATE ${locksTableSql}
370
+ SET acquired_at = ${sqlNow}
371
+ WHERE address = ${address} AND shard_id IN ${stringLiteralArr(shardIds)}
372
+ RETURNING shard_id
373
+ `.pipe(execWithLockConnValues, Effect.map(rows => rows.map(row => row[0])));
374
+ },
375
+ mysql: () => {
376
+ if (!disableAdvisoryLocks) return acquireLock;
377
+ return (address, shardIds) => {
378
+ const shardIdsStr = stringLiteralArr(shardIds);
379
+ return sql`
380
+ UPDATE ${locksTableSql}
381
+ SET acquired_at = ${sqlNow}
382
+ WHERE address = ${address} AND shard_id IN ${shardIdsStr};
383
+ SELECT shard_id FROM ${locksTableSql} WHERE address = ${address} AND shard_id IN ${shardIdsStr}
384
+ `.pipe(execWithLockConnUnprepared, Effect.map(rows => rows[1].map(row => row.shard_id)));
385
+ };
386
+ },
323
387
  mssql: () => (address, shardIds) => sql`
324
388
  UPDATE ${locksTableSql}
325
389
  SET acquired_at = ${sqlNow}
@@ -341,31 +405,51 @@ export const make = /*#__PURE__*/Effect.fnUntraced(function* (options) {
341
405
  acquire: (address, shardIds) => acquireLock(address, shardIds).pipe(PersistenceError.refail, withTracerDisabled),
342
406
  refresh: (address, shardIds) => sql`UPDATE ${runnersTableSql} SET last_heartbeat = ${sqlNow} WHERE address = ${address}`.pipe(execWithLockConn, shardIds.length > 0 ? Effect.andThen(refreshShards(address, shardIds)) : Effect.as([]), PersistenceError.refail),
343
407
  release: sql.onDialectOrElse({
344
- pg: () => Effect.fnUntraced(function* (_address, shardId) {
345
- const lockNum = lockNumbers.get(shardId);
346
- for (let i = 0; i < 5; i++) {
347
- const [conn] = yield* lockConn.await;
348
- yield* conn.executeRaw(`SELECT pg_advisory_unlock(${lockNum})`, []);
349
- const takenLocks = yield* conn.executeValues(`SELECT 1 FROM pg_locks WHERE locktype = 'advisory' AND granted = true AND pid = pg_backend_pid() AND objid = ${lockNum}`, []);
350
- if (takenLocks.length === 0) return;
408
+ pg: () => {
409
+ if (disableAdvisoryLocks) {
410
+ return (address, shardId) => sql`DELETE FROM ${locksTableSql} WHERE address = ${address} AND shard_id = ${shardId}`.pipe(PersistenceError.refail);
351
411
  }
352
- const [conn] = yield* lockConn.await;
353
- yield* conn.executeRaw(`SELECT pg_advisory_unlock_all()`, []);
354
- }, Effect.onError(() => lockConn.unsafeRebuild()), Effect.asVoid, PersistenceError.refail),
355
- mysql: () => Effect.fnUntraced(function* (_address, shardId) {
356
- const lockName = lockNames.get(shardId);
357
- while (true) {
358
- const [conn, pid] = yield* lockConn.await;
359
- yield* conn.executeRaw(`SELECT RELEASE_LOCK('${lockName}')`, []);
360
- const takenLocks = yield* conn.executeValues(`SELECT IS_USED_LOCK('${lockName}')`, []);
361
- if (takenLocks.length === 0 || takenLocks[0][0] !== pid) return;
412
+ return Effect.fnUntraced(function* (_address, shardId) {
413
+ const lockNum = lockNumbers.get(shardId);
414
+ for (let i = 0; i < 5; i++) {
415
+ const [conn] = yield* lockConn.await;
416
+ yield* conn.executeRaw(`SELECT pg_advisory_unlock(${lockNum})`, []);
417
+ const takenLocks = yield* conn.executeValues(`SELECT 1 FROM pg_locks WHERE locktype = 'advisory' AND granted = true AND pid = pg_backend_pid() AND objid = ${lockNum}`, []);
418
+ if (takenLocks.length === 0) return;
419
+ }
420
+ const [conn] = yield* lockConn.await;
421
+ yield* conn.executeRaw(`SELECT pg_advisory_unlock_all()`, []);
422
+ }, Effect.onError(() => lockConn.unsafeRebuild()), Effect.asVoid, PersistenceError.refail);
423
+ },
424
+ mysql: () => {
425
+ if (disableAdvisoryLocks) {
426
+ return (address, shardId) => sql`DELETE FROM ${locksTableSql} WHERE address = ${address} AND shard_id = ${shardId}`.pipe(PersistenceError.refail);
362
427
  }
363
- }, Effect.onError(() => lockConn.unsafeRebuild()), Effect.asVoid, PersistenceError.refail),
428
+ return Effect.fnUntraced(function* (_address, shardId) {
429
+ const lockName = lockNames.get(shardId);
430
+ while (true) {
431
+ const [conn, pid] = yield* lockConn.await;
432
+ yield* conn.executeRaw(`SELECT RELEASE_LOCK('${lockName}')`, []);
433
+ const takenLocks = yield* conn.executeValues(`SELECT IS_USED_LOCK('${lockName}')`, []);
434
+ if (takenLocks.length === 0 || takenLocks[0][0] !== pid) return;
435
+ }
436
+ }, Effect.onError(() => lockConn.unsafeRebuild()), Effect.asVoid, PersistenceError.refail);
437
+ },
364
438
  orElse: () => (address, shardId) => sql`DELETE FROM ${locksTableSql} WHERE address = ${address} AND shard_id = ${shardId}`.pipe(PersistenceError.refail)
365
439
  }),
366
440
  releaseAll: sql.onDialectOrElse({
367
- pg: () => _address => sql`SELECT pg_advisory_unlock_all()`.pipe(execWithLockConn, Effect.asVoid, PersistenceError.refail, withTracerDisabled),
368
- mysql: () => _address => sql`SELECT RELEASE_ALL_LOCKS()`.pipe(execWithLockConn, Effect.asVoid, PersistenceError.refail, withTracerDisabled),
441
+ pg: () => address => {
442
+ if (disableAdvisoryLocks) {
443
+ return sql`DELETE FROM ${locksTableSql} WHERE address = ${address}`.pipe(PersistenceError.refail, withTracerDisabled);
444
+ }
445
+ return sql`SELECT pg_advisory_unlock_all()`.pipe(execWithLockConn, Effect.asVoid, PersistenceError.refail, withTracerDisabled);
446
+ },
447
+ mysql: () => address => {
448
+ if (disableAdvisoryLocks) {
449
+ return sql`DELETE FROM ${locksTableSql} WHERE address = ${address}`.pipe(PersistenceError.refail, withTracerDisabled);
450
+ }
451
+ return sql`SELECT RELEASE_ALL_LOCKS()`.pipe(execWithLockConn, Effect.asVoid, PersistenceError.refail, withTracerDisabled);
452
+ },
369
453
  orElse: () => address => sql`DELETE FROM ${locksTableSql} WHERE address = ${address}`.pipe(PersistenceError.refail, withTracerDisabled)
370
454
  })
371
455
  });
@@ -1 +1 @@
1
- {"version":3,"file":"SqlRunnerStorage.js","names":["SqlClient","Arr","Duration","Effect","Layer","Scope","PersistenceError","ResourceRef","RunnerStorage","ShardId","ShardingConfig","withTracerDisabled","withTracerEnabled","make","fnUntraced","options","config","sql","withoutTransforms","prefix","table","name","acquireLockConn","onDialectOrElse","pg","scope","conn","orDie","reserve","pipe","extend","pid","executeValues","addFinalizerExit","executeRaw","mysql","undefined","address","Math","random","Number","MAX_SAFE_INTEGER","taken","orElse","lockConn","from","runnersTable","runnersTableSql","hasOldTables","isSuccess","ignore","mssql","locksTable","locksTableSql","void","sqlNowString","sqlNow","literal","expiresSeconds","ceil","toSeconds","shardLockExpiration","toString","lockExpiresAt","encodeBoolean","b","sqlite","insertRunner","runner","healthy","values","unprepared","map","results","machine_id","execWithLockConn","effect","query","params","compile","await","flatMap","onError","unsafeRebuild","execWithLockConnValues","acquireLock","_address","shardIds","acquiredShardIds","toAcquire","Map","shardId","lockNumbers","get","takenLocks","i","length","lockNum","push","lockNumbersReverse","delete","size","rows","executeUnprepared","pgLocks","allMySqlTakenLocks","lockTakenBy","shardIdsIndex","includes","mysqlLocks","stringLiteral","csv","andThen","acquiredLocks","withTransaction","shardGroups","group","base","shard","shardsPerGroup","set","lockNames","lockNamesReverse","index","lockName","shardIdsMap","Array","entries","join","stringLiteralArr","row","wrapString","s","arr","refreshShards","makeEncoded","getRunners","refail","String","Boolean","register","unregister","asVoid","setRunnerHealth","acquire","refresh","as","release","releaseAll","layer","scoped","layerWith"],"sources":["../../src/SqlRunnerStorage.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"SqlRunnerStorage.js","names":["SqlClient","Arr","Duration","Effect","Layer","Scope","PersistenceError","ResourceRef","RunnerStorage","ShardId","ShardingConfig","withTracerDisabled","withTracerEnabled","make","fnUntraced","options","config","disableAdvisoryLocks","shardLockDisableAdvisory","sql","withoutTransforms","prefix","table","name","acquireLockConn","onDialectOrElse","pg","scope","conn","orDie","reserve","pipe","extend","pid","executeValues","addFinalizerExit","executeRaw","mysql","undefined","address","Math","random","Number","MAX_SAFE_INTEGER","taken","orElse","lockConn","from","runnersTable","runnersTableSql","hasOldTables","isSuccess","ignore","mssql","locksTable","locksTableSql","sqlNowString","sqlNow","literal","expiresSeconds","ceil","toSeconds","shardLockExpiration","toString","lockExpiresAt","encodeBoolean","b","sqlite","insertRunner","runner","healthy","values","unprepared","map","results","machine_id","execWithLockConn","effect","query","params","compile","await","flatMap","onError","unsafeRebuild","execWithLockConnUnprepared","executeUnprepared","execWithLockConnValues","acquireLock","shardIds","shardId","stringLiteral","csv","andThen","acquiredLocks","_address","acquiredShardIds","toAcquire","Map","lockNumbers","get","takenLocks","i","length","lockNum","push","lockNumbersReverse","delete","size","rows","pgLocks","allMySqlTakenLocks","lockTakenBy","shardIdsIndex","includes","mysqlLocks","withTransaction","shardGroups","group","base","shard","shardsPerGroup","set","lockNames","lockNamesReverse","index","lockName","shardIdsMap","Array","entries","join","stringLiteralArr","row","wrapString","s","arr","refreshShards","shardIdsStr","shard_id","makeEncoded","getRunners","refail","String","Boolean","register","unregister","asVoid","setRunnerHealth","acquire","refresh","as","release","releaseAll","layer","scoped","layerWith"],"sources":["../../src/SqlRunnerStorage.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect/cluster",
3
- "version": "0.53.4",
3
+ "version": "0.53.6",
4
4
  "description": "Unified interfaces for common cluster-specific services",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -14,11 +14,11 @@
14
14
  "kubernetes-types": "^1.30.0"
15
15
  },
16
16
  "peerDependencies": {
17
- "@effect/platform": "^0.93.3",
17
+ "@effect/platform": "^0.93.4",
18
+ "@effect/rpc": "^0.72.2",
18
19
  "@effect/sql": "^0.48.0",
19
20
  "@effect/workflow": "^0.13.0",
20
- "effect": "^3.19.6",
21
- "@effect/rpc": "^0.72.2"
21
+ "effect": "^3.19.6"
22
22
  },
23
23
  "publishConfig": {
24
24
  "provenance": true
@@ -73,6 +73,8 @@ export const make: <A, E, R>(options: {
73
73
  }) {
74
74
  let shuttingDown = false
75
75
 
76
+ yield* Entity.keepAlive(true)
77
+
76
78
  const ref = yield* RcRef.make({
77
79
  acquire: Effect.gen(function*() {
78
80
  const closeable = yield* Scope.make()
@@ -85,8 +87,6 @@ export const make: <A, E, R>(options: {
85
87
  })
86
88
  )
87
89
 
88
- yield* Entity.keepAlive(true)
89
-
90
90
  return yield* options.acquire.pipe(
91
91
  Effect.provideService(CloseScope, closeable)
92
92
  )
@@ -63,6 +63,10 @@ export class ShardingConfig extends Context.Tag("@effect/cluster/ShardingConfig"
63
63
  * Shard lock expiration duration.
64
64
  */
65
65
  readonly shardLockExpiration: DurationInput
66
+ /**
67
+ * Disable the use of advisory locks for shard locking.
68
+ */
69
+ readonly shardLockDisableAdvisory: boolean
66
70
  /**
67
71
  * Start shutting down as soon as an Entity has started shutting down.
68
72
  *
@@ -134,6 +138,7 @@ export const defaults: ShardingConfig["Type"] = {
134
138
  preemptiveShutdown: true,
135
139
  shardLockRefreshInterval: Duration.seconds(10),
136
140
  shardLockExpiration: Duration.seconds(35),
141
+ shardLockDisableAdvisory: false,
137
142
  entityMailboxCapacity: 4096,
138
143
  entityMaxIdleTime: Duration.minutes(1),
139
144
  entityRegistrationTimeout: Duration.minutes(1),
@@ -206,6 +211,10 @@ export const config: Config.Config<ShardingConfig["Type"]> = Config.all({
206
211
  Config.withDefault(defaults.shardLockExpiration),
207
212
  Config.withDescription("Shard lock expiration duration.")
208
213
  ),
214
+ shardLockDisableAdvisory: Config.boolean("shardLockDisableAdvisory").pipe(
215
+ Config.withDefault(defaults.shardLockDisableAdvisory),
216
+ Config.withDescription("Disable the use of advisory locks for shard locking.")
217
+ ),
209
218
  entityMailboxCapacity: Config.integer("entityMailboxCapacity").pipe(
210
219
  Config.withDefault(defaults.entityMailboxCapacity),
211
220
  Config.withDescription("The default capacity of the mailbox for entities.")