@effect/cluster 0.52.6 → 0.52.7

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.
@@ -32,6 +32,7 @@ import { make as makeEntityId } from "./EntityId.js";
32
32
  import * as Envelope from "./Envelope.js";
33
33
  import * as EntityManager from "./internal/entityManager.js";
34
34
  import { EntityReaper } from "./internal/entityReaper.js";
35
+ import { joinAllDiscard } from "./internal/fiber.js";
35
36
  import { hashString } from "./internal/hash.js";
36
37
  import { internalInterruptors } from "./internal/interruptors.js";
37
38
  import { ResourceMap } from "./internal/resourceMap.js";
@@ -99,34 +100,27 @@ const make = /*#__PURE__*/Effect.gen(function* () {
99
100
  });
100
101
  const releaseShardsMap = yield* FiberMap.make();
101
102
  const releaseShard = Effect.fnUntraced(function* (shardId) {
102
- yield* Effect.forEach(entityManagers.values(), state => state.status === "closed" ? Effect.void : state.manager.interruptShard(shardId).pipe(Effect.withSpan("EntityManager.interruptShard", {
103
- captureStackTrace: false,
104
- attributes: {
105
- entityType: state.entity.type
106
- }
107
- })), {
108
- concurrency: "unbounded",
109
- discard: true
110
- }).pipe(Effect.timeout(config.entityTerminationTimeout));
103
+ const fibers = Arr.empty();
104
+ for (const state of entityManagers.values()) {
105
+ if (state.status === "closed") continue;
106
+ fibers.push(yield* Effect.fork(state.manager.interruptShard(shardId)));
107
+ }
108
+ yield* joinAllDiscard(fibers);
111
109
  yield* runnerStorage.release(selfAddress, shardId);
112
110
  MutableHashSet.remove(releasingShards, shardId);
113
111
  yield* storage.unregisterShardReplyHandlers(shardId);
114
- }, Effect.sandbox, Effect.tapError(cause => Effect.logDebug(`Could not release shard, retrying`, cause)), Effect.eventually, (effect, shardId) => effect.pipe(Effect.annotateLogs({
112
+ }, Effect.sandbox, (effect, shardId) => effect.pipe(Effect.tapError(cause => Effect.logDebug(`Could not release shard, retrying`, cause).pipe(Effect.annotateLogs({
115
113
  package: "@effect/cluster",
116
114
  module: "Sharding",
117
115
  fiber: "releaseShard",
118
116
  runner: selfAddress,
119
117
  shardId
120
- }), Effect.withSpan("Sharding.releaseShard", {
121
- captureStackTrace: false
122
- }), Effect.annotateSpans({
123
- shardId,
124
- runner: selfAddress
125
- }), FiberMap.run(releaseShardsMap, shardId, {
118
+ }))), Effect.eventually, FiberMap.run(releaseShardsMap, shardId, {
126
119
  onlyIfMissing: true
127
120
  })));
128
121
  const releaseShards = Effect.gen(function* () {
129
122
  for (const shardId of releasingShards) {
123
+ if (FiberMap.unsafeHas(releaseShardsMap, shardId)) continue;
130
124
  yield* releaseShard(shardId);
131
125
  }
132
126
  });
@@ -749,8 +743,8 @@ const make = /*#__PURE__*/Effect.gen(function* () {
749
743
  return Effect.void;
750
744
  }
751
745
  });
752
- yield* Scope.addFinalizer(yield* Effect.scope, Effect.withFiberRuntime(fiber => {
753
- internalInterruptors.add(fiber.id());
746
+ yield* Scope.addFinalizer(yield* Effect.scope, Effect.fiberIdWith(fiberId => {
747
+ internalInterruptors.add(fiberId);
754
748
  return Effect.void;
755
749
  }));
756
750
  return entityId => {
@@ -950,8 +944,7 @@ const make = /*#__PURE__*/Effect.gen(function* () {
950
944
  module: "Sharding"
951
945
  }));
952
946
  }
953
- const fiberId = yield* Effect.fiberId;
954
- internalInterruptors.add(fiberId);
947
+ internalInterruptors.add(yield* Effect.fiberId);
955
948
  if (isShutdown.current) return;
956
949
  MutableRef.set(isShutdown, true);
957
950
  if (selfRunner) {
@@ -1 +1 @@
1
- {"version":3,"file":"Sharding.js","names":["RpcClient","RequestId","Arr","Cause","Context","Duration","Effect","Either","Equal","Fiber","FiberMap","FiberRef","FiberSet","constant","HashMap","HashRing","Layer","MutableHashMap","MutableHashSet","MutableRef","Option","PubSub","Schedule","Scope","Stream","AlreadyProcessingMessage","EntityNotAssignedToRunner","ClusterMetrics","Persisted","Uninterruptible","ClusterSchema","make","makeEntityAddress","makeEntityId","Envelope","EntityManager","EntityReaper","hashString","internalInterruptors","ResourceMap","Message","MessageStorage","Reply","Runner","RunnerHealth","Runners","RunnerStorage","makeShardId","ShardingConfig","EntityRegistered","SingletonRegistered","SingletonAddress","Snowflake","Sharding","Tag","gen","config","runnersService","runnerHealth","snowflakeGen","Generator","shardingScope","scope","isShutdown","fiberSet","runFork","runtime","pipe","mapInputContext","context","omit","storage","storageEnabled","noop","runnerStorage","entityManagers","Map","shardAssignments","empty","selfShards","acquiredShards","activeShardsLatch","makeLatch","events","unbounded","getRegistrationEvents","fromPubSub","isLocalRunner","address","isSome","runnerAddress","equals","value","getShardId","entityId","group","id","Math","abs","shardsPerGroup","isEntityOnLocalShards","has","shardId","addFinalizer","logDebug","annotateLogs","package","module","releasingShards","selfAddress","addFinalizerExit","ignore","releaseAll","releaseShardsMap","releaseShard","fnUntraced","forEach","values","state","status","void","manager","interruptShard","withSpan","captureStackTrace","attributes","entityType","entity","type","concurrency","discard","timeout","entityTerminationTimeout","release","remove","unregisterShardReplyHandlers","sandbox","tapError","cause","eventually","effect","fiber","runner","annotateSpans","run","onlyIfMissing","releaseShards","unsafeOpen","await","unsafeClose","add","size","forkIn","syncSingletons","unacquiredShards","oacquired","acquire","timeoutOption","shardLockRefreshInterval","isNone","acquired","resetShards","length","storageReadLatch","open","shards","unsafeUpdate","BigInt","sleep","catchAllCause","logWarning","repeat","spaced","entityMessagePollInterval","interruptible","suspend","refresh","flatMap","includes","i","retry","times","schedule","logError","andThen","clearSelfShards","fixed","forever","delay","sync","clear","openStorageReadLatch","storageReadLock","unsafeMakeSemaphore","withStorageReadLock","withPermits","index","messages","removableNotifications","Set","resetAddresses","processMessages","whileLoop","while","step","body","send","message","envelope","get","isProcessing","isProcessingFor","_tag","pendingNotifications","requestId","entry","delete","resume","resumptionState","entityResumptionState","unprocessed","interrupts","set","error","failureOrCause","isRight","isInterrupted","saveReply","ReplyWithContext","fromDefect","unsafeNext","defect","squash","left","resumeEntityFromStorage","take","clearProcessed","unprocessedMessages","fail","resetAddress","scoped","ensuring","withUnhandledErrorLogLevel","none","lastReceivedMessage","resumeEntityFromStorageImpl","getOrThrow","done","messageIds","push","unprocessedMessagesById","sendWithRetry","catchTags","interrupt","MailboxFull","sendRetryInterval","e","sendLocal","loop","waitForEntityManager","simulateRemoteSerialization","notifyLocal","options","isLocal","notify","die","excludeReplies","envelopeId","waitUntilRead","async","prevResume","storageOnly","sendOutgoing","retries","catchIf","isPersisted","rpc","annotations","maybeRunner","runnerIsLocal","reset","matchCause","clearReplies","onSuccess","onFailure","selfRunner","groups","shardGroups","weight","runnerShardWeight","undefined","allRunners","healthyRunnerCount","runners","runnersHealthy","hashRings","nextRunners","healthyRunners","withTimeout","seconds","current","machineId","register","setMachineId","getRunners","changed","healthy","wasHealthy","j","ring","_","onRunnerUnavailable","prevRunners","newAssignments","getShards","shard","setRunnerHealth","refreshAssignmentsInterval","clientRequests","clients","client","makeNoSerialization","protocol","spanPrefix","disableTracing","ClientTracingEnabled","supportsAck","generateRequestId","flatten","onFromClient","unsafeGet","ClientAddressTag","getCurrentFiber","requests","tag","respond","services","currentContext","makeClientRespond","write","clientRespondDiscard","OutgoingRequest","makeRequest","payload","headers","traceId","spanId","sampled","lastReceivedReply","OutgoingEnvelope","AckChunk","replyId","lastChunkId","forClient","isTransientInterrupt","interruptors","some","Interrupt","withFiberRuntime","getShardGroup","clientFn","merge","proxyClient","Proxy","p","target","makeClient","_reply","reply","clientId","exit","singletons","singletonFibers","withSingletonLock","registerSingleton","name","shardGroup","map","wrappedRun","locally","currentLogAnnotations","never","provide","orDie","publish","running","unsafeHas","shouldBeRunning","reaper","entityManagerLatches","registerEntity","build","sharding","fiberIdWith","preemptiveShutdown","shutdown","latch","unsafeMakeLatch","checkRunner","isAlive","runnerHealthCheckInterval","fiberId","unregister","activeEntityCount","count","of","hasShardId","getSnowflake","pollStorage","layer","layerGenerator","Default","GenericTag"],"sources":["../../src/Sharding.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Sharding.js","names":["RpcClient","RequestId","Arr","Cause","Context","Duration","Effect","Either","Equal","Fiber","FiberMap","FiberRef","FiberSet","constant","HashMap","HashRing","Layer","MutableHashMap","MutableHashSet","MutableRef","Option","PubSub","Schedule","Scope","Stream","AlreadyProcessingMessage","EntityNotAssignedToRunner","ClusterMetrics","Persisted","Uninterruptible","ClusterSchema","make","makeEntityAddress","makeEntityId","Envelope","EntityManager","EntityReaper","joinAllDiscard","hashString","internalInterruptors","ResourceMap","Message","MessageStorage","Reply","Runner","RunnerHealth","Runners","RunnerStorage","makeShardId","ShardingConfig","EntityRegistered","SingletonRegistered","SingletonAddress","Snowflake","Sharding","Tag","gen","config","runnersService","runnerHealth","snowflakeGen","Generator","shardingScope","scope","isShutdown","fiberSet","runFork","runtime","pipe","mapInputContext","context","omit","storage","storageEnabled","noop","runnerStorage","entityManagers","Map","shardAssignments","empty","selfShards","acquiredShards","activeShardsLatch","makeLatch","events","unbounded","getRegistrationEvents","fromPubSub","isLocalRunner","address","isSome","runnerAddress","equals","value","getShardId","entityId","group","id","Math","abs","shardsPerGroup","isEntityOnLocalShards","has","shardId","addFinalizer","logDebug","annotateLogs","package","module","releasingShards","selfAddress","addFinalizerExit","ignore","releaseAll","releaseShardsMap","releaseShard","fnUntraced","fibers","state","values","status","push","fork","manager","interruptShard","release","remove","unregisterShardReplyHandlers","sandbox","effect","tapError","cause","fiber","runner","eventually","run","onlyIfMissing","releaseShards","unsafeHas","unsafeOpen","await","unsafeClose","add","size","forkIn","syncSingletons","unacquiredShards","oacquired","acquire","timeoutOption","shardLockRefreshInterval","isNone","acquired","resetShards","length","storageReadLatch","open","shards","unsafeUpdate","BigInt","sleep","catchAllCause","logWarning","repeat","spaced","entityMessagePollInterval","interruptible","suspend","refresh","flatMap","includes","i","void","retry","times","schedule","logError","andThen","clearSelfShards","fixed","forever","delay","sync","clear","openStorageReadLatch","storageReadLock","unsafeMakeSemaphore","withStorageReadLock","withPermits","index","messages","removableNotifications","Set","resetAddresses","processMessages","whileLoop","while","step","body","send","message","envelope","get","entityType","isProcessing","isProcessingFor","_tag","pendingNotifications","requestId","entry","delete","resume","resumptionState","entityResumptionState","unprocessed","interrupts","set","error","failureOrCause","isRight","isInterrupted","saveReply","ReplyWithContext","fromDefect","unsafeNext","defect","squash","left","resumeEntityFromStorage","take","forEach","clearProcessed","unprocessedMessages","fail","resetAddress","scoped","ensuring","withUnhandledErrorLogLevel","none","lastReceivedMessage","resumeEntityFromStorageImpl","getOrThrow","done","messageIds","unprocessedMessagesById","sendWithRetry","catchTags","interrupt","MailboxFull","sendRetryInterval","e","entity","sendLocal","loop","waitForEntityManager","simulateRemoteSerialization","notifyLocal","discard","options","isLocal","notify","die","excludeReplies","envelopeId","waitUntilRead","async","prevResume","storageOnly","sendOutgoing","retries","catchIf","isPersisted","rpc","annotations","maybeRunner","runnerIsLocal","reset","matchCause","clearReplies","onSuccess","onFailure","selfRunner","groups","shardGroups","weight","runnerShardWeight","undefined","allRunners","healthyRunnerCount","runners","runnersHealthy","hashRings","nextRunners","healthyRunners","withTimeout","timeout","seconds","current","machineId","register","setMachineId","getRunners","changed","healthy","wasHealthy","j","ring","_","onRunnerUnavailable","prevRunners","newAssignments","getShards","shard","setRunnerHealth","refreshAssignmentsInterval","clientRequests","clients","client","makeNoSerialization","protocol","spanPrefix","type","disableTracing","ClientTracingEnabled","supportsAck","generateRequestId","flatten","onFromClient","unsafeGet","ClientAddressTag","getCurrentFiber","requests","tag","respond","services","currentContext","makeClientRespond","write","clientRespondDiscard","OutgoingRequest","makeRequest","payload","headers","traceId","spanId","sampled","lastReceivedReply","OutgoingEnvelope","AckChunk","replyId","lastChunkId","forClient","isTransientInterrupt","interruptors","some","Interrupt","fiberIdWith","fiberId","getShardGroup","clientFn","merge","proxyClient","Proxy","p","target","makeClient","_reply","reply","clientId","exit","singletons","singletonFibers","withSingletonLock","registerSingleton","name","shardGroup","map","wrappedRun","locally","currentLogAnnotations","never","provide","orDie","publish","running","shouldBeRunning","reaper","entityManagerLatches","registerEntity","build","sharding","preemptiveShutdown","shutdown","latch","unsafeMakeLatch","checkRunner","isAlive","concurrency","runnerHealthCheckInterval","unregister","activeEntityCount","count","of","hasShardId","getSnowflake","pollStorage","layer","layerGenerator","Default","GenericTag"],"sources":["../../src/Sharding.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -7,12 +7,12 @@ import * as Duration from "effect/Duration";
7
7
  import * as Effect from "effect/Effect";
8
8
  import * as Equal from "effect/Equal";
9
9
  import * as Exit from "effect/Exit";
10
- import * as FiberMap from "effect/FiberMap";
11
10
  import * as FiberRef from "effect/FiberRef";
12
11
  import { identity } from "effect/Function";
13
12
  import * as HashMap from "effect/HashMap";
14
13
  import * as Metric from "effect/Metric";
15
14
  import * as Option from "effect/Option";
15
+ import * as Runtime from "effect/Runtime";
16
16
  import * as Schedule from "effect/Schedule";
17
17
  import * as Schema from "effect/Schema";
18
18
  import * as Scope from "effect/Scope";
@@ -27,6 +27,7 @@ import * as Reply from "../Reply.js";
27
27
  import { ShardingConfig } from "../ShardingConfig.js";
28
28
  import * as Snowflake from "../Snowflake.js";
29
29
  import { EntityReaper } from "./entityReaper.js";
30
+ import { joinAllDiscard } from "./fiber.js";
30
31
  import { internalInterruptors } from "./interruptors.js";
31
32
  import { ResourceMap } from "./resourceMap.js";
32
33
  import { ResourceRef } from "./resourceRef.js";
@@ -285,32 +286,24 @@ export const make = /*#__PURE__*/Effect.fnUntraced(function* (entity, buildHandl
285
286
  }
286
287
  }), FiberRef.currentLogAnnotations, HashMap.empty());
287
288
  }
288
- const entityRemovalMap = yield* FiberMap.make();
289
- const interruptShard = shardId => Effect.suspend(function loop() {
290
- const toAwait = Arr.empty();
291
- activeServers.forEach(state => {
292
- if (shardId[Equal.symbol](state.address.shardId)) {
293
- toAwait.push(FiberMap.run(entityRemovalMap, state.address, entities.removeIgnore(state.address), {
294
- onlyIfMissing: true
295
- }));
296
- }
297
- });
298
- serverCloseLatches.forEach((latch, address) => {
299
- if (shardId[Equal.symbol](address.shardId)) {
300
- toAwait.push(latch.await);
301
- }
302
- });
303
- if (toAwait.length === 0) {
304
- return Effect.void;
305
- }
306
- return Effect.flatMap(Effect.all(toAwait, {
307
- concurrency: "unbounded",
308
- discard: true
309
- }), loop);
310
- });
311
289
  const decodeMessage = Schema.decode(makeMessageSchema(entity));
290
+ const runFork = Runtime.runFork(yield* Effect.runtime().pipe(Effect.interruptible));
312
291
  return identity({
313
- interruptShard,
292
+ interruptShard: shardId => Effect.suspend(function loop() {
293
+ const fibers = Arr.empty();
294
+ activeServers.forEach(state => {
295
+ if (shardId[Equal.symbol](state.address.shardId)) {
296
+ fibers.push(runFork(entities.removeIgnore(state.address)));
297
+ }
298
+ });
299
+ serverCloseLatches.forEach((latch, address) => {
300
+ if (shardId[Equal.symbol](address.shardId)) {
301
+ fibers.push(runFork(latch.await));
302
+ }
303
+ });
304
+ if (fibers.length === 0) return Effect.void;
305
+ return Effect.flatMap(joinAllDiscard(fibers), loop);
306
+ }),
314
307
  isProcessingFor(message, options) {
315
308
  if (options?.excludeReplies !== true && processedRequestIds.has(message.envelope.requestId)) {
316
309
  return true;
@@ -1 +1 @@
1
- {"version":3,"file":"entityManager.js","names":["RequestId","RpcServer","Arr","Cause","Context","Duration","Effect","Equal","Exit","FiberMap","FiberRef","identity","HashMap","Metric","Option","Schedule","Schema","Scope","AlreadyProcessingMessage","EntityNotAssignedToRunner","MailboxFull","MalformedMessage","ClusterMetrics","Persisted","Uninterruptible","CurrentAddress","CurrentRunnerAddress","Request","Envelope","Message","MessageStorage","Reply","ShardingConfig","Snowflake","EntityReaper","internalInterruptors","ResourceMap","ResourceRef","make","fnUntraced","entity","buildHandlers","options","config","snowflakeGen","Generator","managerScope","scope","storageEnabled","storage","noop","mailboxCapacity","entityMailboxCapacity","clock","context","retryDriver","driver","defectRetryPolicy","andThen","defaultRetryPolicy","activeServers","Map","serverCloseLatches","processedRequestIds","Set","entities","address","sharding","hasShardId","shardId","endLatch","makeLatch","addFinalizerExit","get","unsafeOpen","delete","void","activeRequests","defectRequestIds","writeRef","from","isShuttingDown","handlers","protocol","toHandlersContext","pipe","provide","add","runnerAddress","locally","currentLogAnnotations","empty","server","makeNoSerialization","spanPrefix","type","entityId","spanAttributes","concurrency","disableFatalDefects","onFromServer","response","_tag","request","requestId","sentReply","rpc","annotations","isFailure","exit","isInterrupted","forServer","write","message","envelope","id","tag","payload","lastSentChunk","forkIn","unregisterReplyHandler","retryRespond","suspend","respond","WithExit","unsafeNext","flatMap","size","state","lastActiveCheck","unsafeCurrentTimeMillis","orDie","sequence","reply","Chunk","values","some","onDefect","die","defect","open","extend","addFinalizer","sync","length","cause","has","effect","unsafeRebuild","Array","keys","logError","ignore","next","annotateLogs","module","runner","catchAllCause","clientId","current","await","value","withFiberRuntime","fiber","set","unsafeMakeLatch","interruptible","timeoutOption","entityTerminationTimeout","reaper","maxIdleTime","toMillis","entityMaxIdleTime","Number","isFinite","register","servers","gauge","tagged","unsafeUpdate","BigInt","sleep","forever","sendLocal","entry","fail","envelopeId","requests","dieMessage","lastSentReply","match","onNone","onSome","isSome","replyId","interruptors","entityRemovalMap","interruptShard","loop","toAwait","forEach","symbol","push","run","removeIgnore","onlyIfMissing","latch","all","discard","decodeMessage","decode","makeMessageSchema","isProcessingFor","excludeReplies","undefined","clearProcessed","clear","send","matchEffect","onFailure","ReplyWithContext","onSuccess","decoded","IncomingEnvelope","IncomingRequestLocal","activeEntityCount","exponential","union","spaced","TaggedStruct","transform","Struct","PartialEncodedRequestFromSelf","fields","Literal","payloadSchema","RequestFromSelf","encoded","makeRequest","encode","OptionFromSelf","Union","typeSchema","AckChunk","Interrupt","times","catchAll","delay"],"sources":["../../../src/internal/entityManager.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"entityManager.js","names":["RequestId","RpcServer","Arr","Cause","Context","Duration","Effect","Equal","Exit","FiberRef","identity","HashMap","Metric","Option","Runtime","Schedule","Schema","Scope","AlreadyProcessingMessage","EntityNotAssignedToRunner","MailboxFull","MalformedMessage","ClusterMetrics","Persisted","Uninterruptible","CurrentAddress","CurrentRunnerAddress","Request","Envelope","Message","MessageStorage","Reply","ShardingConfig","Snowflake","EntityReaper","joinAllDiscard","internalInterruptors","ResourceMap","ResourceRef","make","fnUntraced","entity","buildHandlers","options","config","snowflakeGen","Generator","managerScope","scope","storageEnabled","storage","noop","mailboxCapacity","entityMailboxCapacity","clock","context","retryDriver","driver","defectRetryPolicy","andThen","defaultRetryPolicy","activeServers","Map","serverCloseLatches","processedRequestIds","Set","entities","address","sharding","hasShardId","shardId","endLatch","makeLatch","addFinalizerExit","get","unsafeOpen","delete","void","activeRequests","defectRequestIds","writeRef","from","isShuttingDown","handlers","protocol","toHandlersContext","pipe","provide","add","runnerAddress","locally","currentLogAnnotations","empty","server","makeNoSerialization","spanPrefix","type","entityId","spanAttributes","concurrency","disableFatalDefects","onFromServer","response","_tag","request","requestId","sentReply","rpc","annotations","isFailure","exit","isInterrupted","forServer","write","message","envelope","id","tag","payload","lastSentChunk","forkIn","unregisterReplyHandler","retryRespond","suspend","respond","WithExit","unsafeNext","flatMap","size","state","lastActiveCheck","unsafeCurrentTimeMillis","orDie","sequence","reply","Chunk","values","some","onDefect","die","defect","open","extend","addFinalizer","sync","length","cause","has","effect","unsafeRebuild","Array","keys","logError","ignore","next","annotateLogs","module","runner","catchAllCause","clientId","current","await","value","withFiberRuntime","fiber","set","unsafeMakeLatch","interruptible","timeoutOption","entityTerminationTimeout","reaper","maxIdleTime","toMillis","entityMaxIdleTime","Number","isFinite","register","servers","gauge","tagged","unsafeUpdate","BigInt","sleep","forever","sendLocal","entry","fail","envelopeId","requests","dieMessage","lastSentReply","match","onNone","onSome","isSome","replyId","interruptors","decodeMessage","decode","makeMessageSchema","runFork","runtime","interruptShard","loop","fibers","forEach","symbol","push","removeIgnore","latch","isProcessingFor","excludeReplies","undefined","clearProcessed","clear","send","matchEffect","onFailure","ReplyWithContext","onSuccess","decoded","IncomingEnvelope","IncomingRequestLocal","activeEntityCount","exponential","union","spaced","TaggedStruct","transform","Struct","PartialEncodedRequestFromSelf","fields","Literal","payloadSchema","RequestFromSelf","encoded","makeRequest","encode","OptionFromSelf","Union","typeSchema","AckChunk","Interrupt","times","catchAll","delay"],"sources":["../../../src/internal/entityManager.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,32 @@
1
+ import * as Cause from "effect/Cause";
2
+ import * as Effect from "effect/Effect";
3
+ /** @internal */
4
+ export const joinAllDiscard = fibers => Effect.async(resume => {
5
+ let cause = undefined;
6
+ let i = 0;
7
+ function loop() {
8
+ while (i < fibers.length) {
9
+ const fiber = fibers[i];
10
+ const exit = fiber.unsafePoll();
11
+ if (exit) {
12
+ i++;
13
+ if (exit._tag === "Success") continue;
14
+ cause = cause ? Cause.parallel(cause, exit.cause) : exit.cause;
15
+ continue;
16
+ }
17
+ fiber.addObserver(onExit);
18
+ return;
19
+ }
20
+ resume(cause ? Effect.failCause(cause) : Effect.void);
21
+ }
22
+ function onExit(exit) {
23
+ i++;
24
+ if (exit._tag === "Failure") {
25
+ cause = cause ? Cause.parallel(cause, exit.cause) : exit.cause;
26
+ }
27
+ loop();
28
+ }
29
+ loop();
30
+ return Effect.sync(() => fibers[i].removeObserver(onExit));
31
+ });
32
+ //# sourceMappingURL=fiber.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fiber.js","names":["Cause","Effect","joinAllDiscard","fibers","async","resume","cause","undefined","i","loop","length","fiber","exit","unsafePoll","_tag","parallel","addObserver","onExit","failCause","void","sync","removeObserver"],"sources":["../../../src/internal/fiber.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,MAAM,MAAM,eAAe;AAIvC;AACA,OAAO,MAAMC,cAAc,GAAUC,MAA+C,IAClFF,MAAM,CAACG,KAAK,CAAWC,MAAM,IAAI;EAC/B,IAAIC,KAAK,GAA+BC,SAAS;EACjD,IAAIC,CAAC,GAAG,CAAC;EACT,SAASC,IAAIA,CAAA;IACX,OAAOD,CAAC,GAAGL,MAAM,CAACO,MAAM,EAAE;MACxB,MAAMC,KAAK,GAAGR,MAAM,CAACK,CAAC,CAAC;MACvB,MAAMI,IAAI,GAAGD,KAAK,CAACE,UAAU,EAAE;MAC/B,IAAID,IAAI,EAAE;QACRJ,CAAC,EAAE;QACH,IAAII,IAAI,CAACE,IAAI,KAAK,SAAS,EAAE;QAC7BR,KAAK,GAAGA,KAAK,GAAGN,KAAK,CAACe,QAAQ,CAACT,KAAK,EAAEM,IAAI,CAACN,KAAK,CAAC,GAAGM,IAAI,CAACN,KAAK;QAC9D;MACF;MACAK,KAAK,CAACK,WAAW,CAACC,MAAM,CAAC;MACzB;IACF;IACAZ,MAAM,CAACC,KAAK,GAAGL,MAAM,CAACiB,SAAS,CAACZ,KAAK,CAAC,GAAGL,MAAM,CAACkB,IAAI,CAAC;EACvD;EACA,SAASF,MAAMA,CAACL,IAAqB;IACnCJ,CAAC,EAAE;IACH,IAAII,IAAI,CAACE,IAAI,KAAK,SAAS,EAAE;MAC3BR,KAAK,GAAGA,KAAK,GAAGN,KAAK,CAACe,QAAQ,CAACT,KAAK,EAAEM,IAAI,CAACN,KAAK,CAAC,GAAGM,IAAI,CAACN,KAAK;IAChE;IACAG,IAAI,EAAE;EACR;EACAA,IAAI,EAAE;EACN,OAAOR,MAAM,CAACmB,IAAI,CAAC,MAAMjB,MAAM,CAACK,CAAC,CAAC,CAACa,cAAc,CAACJ,MAAM,CAAC,CAAC;AAC5D,CAAC,CAAC","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect/cluster",
3
- "version": "0.52.6",
3
+ "version": "0.52.7",
4
4
  "description": "Unified interfaces for common cluster-specific services",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -12,10 +12,10 @@
12
12
  "homepage": "https://effect.website",
13
13
  "peerDependencies": {
14
14
  "@effect/platform": "^0.93.0",
15
+ "@effect/rpc": "^0.72.1",
15
16
  "@effect/sql": "^0.48.0",
16
- "effect": "^3.19.2",
17
17
  "@effect/workflow": "^0.12.2",
18
- "@effect/rpc": "^0.72.1"
18
+ "effect": "^3.19.3"
19
19
  },
20
20
  "publishConfig": {
21
21
  "provenance": true