@effect/cluster 0.38.6 → 0.38.8
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/dist/cjs/ClusterWorkflowEngine.js +16 -7
- package/dist/cjs/ClusterWorkflowEngine.js.map +1 -1
- package/dist/cjs/Sharding.js +2 -2
- package/dist/cjs/Sharding.js.map +1 -1
- package/dist/dts/ClusterWorkflowEngine.d.ts.map +1 -1
- package/dist/esm/ClusterWorkflowEngine.js +16 -7
- package/dist/esm/ClusterWorkflowEngine.js.map +1 -1
- package/dist/esm/Sharding.js +2 -2
- package/dist/esm/Sharding.js.map +1 -1
- package/package.json +2 -2
- package/src/ClusterWorkflowEngine.ts +16 -7
- package/src/Sharding.ts +2 -2
@@ -44,6 +44,15 @@ const make = exports.make = /*#__PURE__*/Effect.gen(function* () {
|
|
44
44
|
const storage = yield* _MessageStorage.MessageStorage;
|
45
45
|
const workflows = new Map();
|
46
46
|
const entities = new Map();
|
47
|
+
const ensureEntity = workflow => {
|
48
|
+
let entity = entities.get(workflow.name);
|
49
|
+
if (!entity) {
|
50
|
+
entity = makeWorkflowEntity(workflow);
|
51
|
+
workflows.set(workflow.name, workflow);
|
52
|
+
entities.set(workflow.name, entity);
|
53
|
+
}
|
54
|
+
return entity;
|
55
|
+
};
|
47
56
|
const activities = new Map();
|
48
57
|
const activityLatches = new Map();
|
49
58
|
const clients = yield* RcMap.make({
|
@@ -128,10 +137,7 @@ const make = exports.make = /*#__PURE__*/Effect.gen(function* () {
|
|
128
137
|
if (entities.has(workflow.name)) {
|
129
138
|
return Effect.dieMessage(`Workflow ${workflow.name} already registered`);
|
130
139
|
}
|
131
|
-
|
132
|
-
workflows.set(workflow.name, workflow);
|
133
|
-
entities.set(workflow.name, entity);
|
134
|
-
return sharding.registerEntity(entity, Effect.gen(function* () {
|
140
|
+
return sharding.registerEntity(ensureEntity(workflow), Effect.gen(function* () {
|
135
141
|
const address = yield* Entity.CurrentAddress;
|
136
142
|
const executionId = address.entityId;
|
137
143
|
return {
|
@@ -182,9 +188,12 @@ const make = exports.make = /*#__PURE__*/Effect.gen(function* () {
|
|
182
188
|
executionId,
|
183
189
|
payload,
|
184
190
|
workflow
|
185
|
-
}) =>
|
186
|
-
|
187
|
-
|
191
|
+
}) => {
|
192
|
+
ensureEntity(workflow);
|
193
|
+
return RcMap.get(clients, workflow.name).pipe(Effect.flatMap(make => make(executionId).run(payload, {
|
194
|
+
discard
|
195
|
+
})), Effect.orDie, Effect.scoped);
|
196
|
+
},
|
188
197
|
interrupt: Effect.fnUntraced(function* (workflow, executionId) {
|
189
198
|
const reply = yield* requestReply({
|
190
199
|
workflow,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ClusterWorkflowEngine.js","names":["Rpc","_interopRequireWildcard","require","_workflow","Activity","DurableClock","Workflow","_WorkflowEngine","Arr","Context","DateTime","Duration","Effect","Layer","Option","PrimaryKey","RcMap","Schedule","Schema","ClusterSchema","DeliverAt","Entity","_EntityAddress","_EntityId","_EntityType","_MessageStorage","Sharding","Snowflake","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","make","exports","gen","sharding","storage","MessageStorage","workflows","Map","entities","activities","activityLatches","clients","lookup","fnUntraced","workflowName","entity","dieMessage","client","idleTimeToLive","clockClient","ClockEntity","requestIdFor","options","shardGroup","workflow","annotations","ShardGroup","executionId","entityId","EntityId","address","EntityAddress","entityType","EntityType","shardId","getShardId","requestIdForPrimaryKey","tag","id","replyForRequestId","requestId","replies","repliesForUnfiltered","last","pipe","filter","reply","_tag","map","requestReply","isNone","none","value","resetActivityAttempt","name","activityPrimaryKey","activity","attempt","reset","retry","times","schedule","exponential","orDie","clearClock","clockAddress","type","clearAddress","resume","maybeReply","maybeSuspended","exit","pollStorage","WorkflowEngine","of","register","execute","engine","suspend","makeWorkflowEntity","registerEntity","CurrentAddress","run","request","instance","WorkflowInstance","initial","payload","ensuring","suspended","void","deferredResult","InterruptSignal","flatMap","maybeResult","zipRight","ignore","interrupt","intoResult","provideService","activityId","entry","latch","unsafeMakeLatch","await","contextMap","context","unsafeMap","CurrentAttempt","key","executeEncoded","provide","unsafeMake","sync","delete","fork","deferred","ensureSuccess","discard","scoped","nonSuspendedReply","isSome","deferredDone","while","activityExecute","release","result","scheduleClock","now","clock","wakeUp","addDuration","duration","retryPolicy","union","spaced","effect","sandbox","ActivityRpc","String","Number","primaryKey","success","Result","Unknown","error","annotate","Persisted","payloadSchema","fields","successSchema","errorSchema","Uninterruptible","ExitUnknown","annotateContext","encodedSchema","Exit","failure","defect","Defect","ClockPayload","Class","DateTimeUtcFromNumber","symbol","ClockEntityLayer","toLayer","zero","DurableDeferred","layer","provideMerge"],"sources":["../../src/ClusterWorkflowEngine.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"file":"ClusterWorkflowEngine.js","names":["Rpc","_interopRequireWildcard","require","_workflow","Activity","DurableClock","Workflow","_WorkflowEngine","Arr","Context","DateTime","Duration","Effect","Layer","Option","PrimaryKey","RcMap","Schedule","Schema","ClusterSchema","DeliverAt","Entity","_EntityAddress","_EntityId","_EntityType","_MessageStorage","Sharding","Snowflake","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","make","exports","gen","sharding","storage","MessageStorage","workflows","Map","entities","ensureEntity","workflow","entity","name","makeWorkflowEntity","activities","activityLatches","clients","lookup","fnUntraced","workflowName","dieMessage","client","idleTimeToLive","clockClient","ClockEntity","requestIdFor","options","shardGroup","annotations","ShardGroup","executionId","entityId","EntityId","address","EntityAddress","entityType","EntityType","shardId","getShardId","requestIdForPrimaryKey","tag","id","replyForRequestId","requestId","replies","repliesForUnfiltered","last","pipe","filter","reply","_tag","map","requestReply","isNone","none","value","resetActivityAttempt","activityPrimaryKey","activity","attempt","reset","retry","times","schedule","exponential","orDie","clearClock","clockAddress","type","clearAddress","resume","maybeReply","maybeSuspended","exit","pollStorage","WorkflowEngine","of","register","execute","engine","suspend","registerEntity","CurrentAddress","run","request","instance","WorkflowInstance","initial","payload","ensuring","suspended","void","deferredResult","InterruptSignal","flatMap","maybeResult","zipRight","ignore","interrupt","intoResult","provideService","activityId","entry","latch","unsafeMakeLatch","await","contextMap","context","unsafeMap","CurrentAttempt","key","executeEncoded","provide","unsafeMake","sync","delete","fork","deferred","ensureSuccess","discard","scoped","nonSuspendedReply","isSome","deferredDone","while","activityExecute","release","result","scheduleClock","now","clock","wakeUp","addDuration","duration","retryPolicy","union","spaced","effect","sandbox","ActivityRpc","String","Number","primaryKey","success","Result","Unknown","error","annotate","Persisted","payloadSchema","fields","successSchema","errorSchema","Uninterruptible","ExitUnknown","annotateContext","encodedSchema","Exit","failure","defect","Defect","ClockPayload","Class","DateTimeUtcFromNumber","symbol","ClockEntityLayer","toLayer","zero","DurableDeferred","layer","provideMerge"],"sources":["../../src/ClusterWorkflowEngine.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/cjs/Sharding.js
CHANGED
@@ -746,12 +746,12 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
746
746
|
const context = yield* Effect.context();
|
747
747
|
const reaper = yield* _entityReaper.EntityReaper;
|
748
748
|
const registerEntity = Effect.fnUntraced(function* (entity, build, options) {
|
749
|
-
if (entityManagers.has(entity.type)) return;
|
749
|
+
if (Option.isNone(config.runnerAddress) || entityManagers.has(entity.type)) return;
|
750
750
|
const scope = yield* Scope.make();
|
751
751
|
const manager = yield* EntityManager.make(entity, build, {
|
752
752
|
...options,
|
753
753
|
storage,
|
754
|
-
runnerAddress:
|
754
|
+
runnerAddress: config.runnerAddress.value,
|
755
755
|
sharding
|
756
756
|
}).pipe(Effect.provide(context.pipe(Context.add(_entityReaper.EntityReaper, reaper), Context.add(Scope.Scope, scope), Context.add(Snowflake.Generator, snowflakeGen))));
|
757
757
|
entityManagers.set(entity.type, {
|
package/dist/cjs/Sharding.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Sharding.js","names":["RpcClient","_interopRequireWildcard","require","_RpcMessage","Arr","Cause","Context","Deferred","Effect","Equal","Exit","Fiber","FiberHandle","FiberMap","FiberRef","_Function","HashMap","Iterable","Layer","MutableHashMap","MutableHashSet","MutableRef","Option","Predicate","PubSub","Schedule","Scope","Stream","_ClusterError","_ClusterSchema","_EntityAddress","_EntityId","Envelope","EntityManager","_entityReaper","_hash","_interruptors","_resourceMap","Message","MessageStorage","Reply","_Runners","_ShardId","_ShardingConfig","_ShardingRegistrationEvent","_ShardManager","_ShardStorage","_SingletonAddress","Snowflake","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Sharding","Tag","exports","make","gen","config","ShardingConfig","runners","Runners","shardManager","ShardManagerClient","snowflakeGen","Generator","shardingScope","scope","isShutdown","storage","storageEnabled","noop","shardStorage","ShardStorage","entityManagers","Map","shardAssignments","empty","selfShards","acquiredShards","activeShardsLatch","makeLatch","events","unbounded","getRegistrationEvents","fromPubSub","isLocalRunner","address","isSome","runnerAddress","equals","value","getShardId","entityId","group","id","Math","abs","hashString","shardsPerGroup","ShardId","disableValidation","isEntityOnLocalShards","shardId","selfAddress","addFinalizerExit","ignore","releaseAll","releasingShards","await","remove","add","unacquiredShards","size","forkIn","syncSingletons","releaseShards","close","acquired","acquire","resetShards","length","storageReadLatch","open","sleep","pipe","catchAllCause","cause","logWarning","repeat","spaced","entityMessagePollInterval","annotateLogs","package","module","fiber","runner","interruptible","suspend","refresh","flatMap","some","_","symbol","andThen","void","retry","times","schedule","logError","clearSelfShards","delay","forever","releaseShardsLock","unsafeMakeSemaphore","withPermits","forEach","values","state","manager","interruptShard","concurrency","discard","release","clear","singletons","singletonFibers","withSingletonLock","registerSingleton","fnUntraced","name","run","options","shardGroup","SingletonAddress","EntityId","map","dieMessage","context","wrappedRun","locally","currentLogAnnotations","never","scoped","provide","orDie","publish","SingletonRegistered","logDebug","running","unsafeHas","shouldBeRunning","internalInterruptors","fiberId","openStorageReadLatch","constant","storageReadLock","withStorageReadLock","storageAlreadyProcessed","_message","sentRequestIds","Set","sentRequestIdSets","addFinalizer","message","envelope","requestId","entityType","isProcessingFor","excludeReplies","unsafeClose","take","messages","unprocessedMessages","currentSentRequestIds","send","index","_tag","respond","ReplyWithContext","fromDefect","unsafeNext","defect","EntityNotManagedByRunner","isProcessing","resumptionState","entityResumptionState","unprocessed","interrupts","error","failureOption","isNone","saveReply","squash","resumeEntityFromStorage","whileLoop","while","step","body","oldest","unsafeHead","delete","ensuring","lastReceivedMessage","resumeEntityFromStorageImpl","getOrThrow","done","messageIds","push","unprocessedMessagesById","sendWithRetry","catchTags","fail","EntityNotAssignedToRunner","interrupt","MailboxFull","sendRetryInterval","AlreadyProcessingMessage","sync","effect","entity","sendLocal","simulateRemoteSerialization","notifyLocal","notify","envelopeId","isTransientError","or","RunnerUnavailable","is","sendOutgoing","retries","catchIf","maybeRunner","isPersisted","rpc","annotations","Persisted","runnerIsLocal","die","reset","clearReplies","matchCause","onSuccess","onFailure","shardManagerTimeoutFiber","extend","startShardManagerTimeout","shardManagerUnavailableTimeout","onlyIfMissing","stopShardManagerTimeout","machineId","register","shardGroups","setMachineId","mailbox","shardingEvents","startedLatch","eventsFiber","takeAll","event","shard","shards","intoDeferred","forkScoped","syncFiber","syncAssignments","refreshAssignmentsInterval","joinAll","zipRight","exponential","union","assignments","getAssignments","clientRequests","clients","ResourceMap","client","makeNoSerialization","protocol","spanPrefix","type","supportsAck","generateRequestId","RequestId","onFromClient","unsafeGet","ClientAddressTag","getCurrentFiber","requests","tag","entry","currentContext","makeClientRespond","write","clientRespondDiscard","OutgoingRequest","makeRequest","payload","headers","traceId","spanId","sampled","lastReceivedReply","none","OutgoingEnvelope","AckChunk","replyId","lastChunkId","Uninterruptible","isTransientInterrupt","interruptors","Interrupt","wrappedClient","method","keys","merge","currentClientAddress","withFiberRuntime","EntityAddress","getShardGroup","makeClient","_reply","reply","clientId","exit","reaper","EntityReaper","registerEntity","build","sharding","EntityRegistered","unregister","activeEntityCount","count","of","pollStorage","layer","layerGenerator","Default","GenericTag","Symbol","for","key"],"sources":["../../src/Sharding.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"file":"Sharding.js","names":["RpcClient","_interopRequireWildcard","require","_RpcMessage","Arr","Cause","Context","Deferred","Effect","Equal","Exit","Fiber","FiberHandle","FiberMap","FiberRef","_Function","HashMap","Iterable","Layer","MutableHashMap","MutableHashSet","MutableRef","Option","Predicate","PubSub","Schedule","Scope","Stream","_ClusterError","_ClusterSchema","_EntityAddress","_EntityId","Envelope","EntityManager","_entityReaper","_hash","_interruptors","_resourceMap","Message","MessageStorage","Reply","_Runners","_ShardId","_ShardingConfig","_ShardingRegistrationEvent","_ShardManager","_ShardStorage","_SingletonAddress","Snowflake","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Sharding","Tag","exports","make","gen","config","ShardingConfig","runners","Runners","shardManager","ShardManagerClient","snowflakeGen","Generator","shardingScope","scope","isShutdown","storage","storageEnabled","noop","shardStorage","ShardStorage","entityManagers","Map","shardAssignments","empty","selfShards","acquiredShards","activeShardsLatch","makeLatch","events","unbounded","getRegistrationEvents","fromPubSub","isLocalRunner","address","isSome","runnerAddress","equals","value","getShardId","entityId","group","id","Math","abs","hashString","shardsPerGroup","ShardId","disableValidation","isEntityOnLocalShards","shardId","selfAddress","addFinalizerExit","ignore","releaseAll","releasingShards","await","remove","add","unacquiredShards","size","forkIn","syncSingletons","releaseShards","close","acquired","acquire","resetShards","length","storageReadLatch","open","sleep","pipe","catchAllCause","cause","logWarning","repeat","spaced","entityMessagePollInterval","annotateLogs","package","module","fiber","runner","interruptible","suspend","refresh","flatMap","some","_","symbol","andThen","void","retry","times","schedule","logError","clearSelfShards","delay","forever","releaseShardsLock","unsafeMakeSemaphore","withPermits","forEach","values","state","manager","interruptShard","concurrency","discard","release","clear","singletons","singletonFibers","withSingletonLock","registerSingleton","fnUntraced","name","run","options","shardGroup","SingletonAddress","EntityId","map","dieMessage","context","wrappedRun","locally","currentLogAnnotations","never","scoped","provide","orDie","publish","SingletonRegistered","logDebug","running","unsafeHas","shouldBeRunning","internalInterruptors","fiberId","openStorageReadLatch","constant","storageReadLock","withStorageReadLock","storageAlreadyProcessed","_message","sentRequestIds","Set","sentRequestIdSets","addFinalizer","message","envelope","requestId","entityType","isProcessingFor","excludeReplies","unsafeClose","take","messages","unprocessedMessages","currentSentRequestIds","send","index","_tag","respond","ReplyWithContext","fromDefect","unsafeNext","defect","EntityNotManagedByRunner","isProcessing","resumptionState","entityResumptionState","unprocessed","interrupts","error","failureOption","isNone","saveReply","squash","resumeEntityFromStorage","whileLoop","while","step","body","oldest","unsafeHead","delete","ensuring","lastReceivedMessage","resumeEntityFromStorageImpl","getOrThrow","done","messageIds","push","unprocessedMessagesById","sendWithRetry","catchTags","fail","EntityNotAssignedToRunner","interrupt","MailboxFull","sendRetryInterval","AlreadyProcessingMessage","sync","effect","entity","sendLocal","simulateRemoteSerialization","notifyLocal","notify","envelopeId","isTransientError","or","RunnerUnavailable","is","sendOutgoing","retries","catchIf","maybeRunner","isPersisted","rpc","annotations","Persisted","runnerIsLocal","die","reset","clearReplies","matchCause","onSuccess","onFailure","shardManagerTimeoutFiber","extend","startShardManagerTimeout","shardManagerUnavailableTimeout","onlyIfMissing","stopShardManagerTimeout","machineId","register","shardGroups","setMachineId","mailbox","shardingEvents","startedLatch","eventsFiber","takeAll","event","shard","shards","intoDeferred","forkScoped","syncFiber","syncAssignments","refreshAssignmentsInterval","joinAll","zipRight","exponential","union","assignments","getAssignments","clientRequests","clients","ResourceMap","client","makeNoSerialization","protocol","spanPrefix","type","supportsAck","generateRequestId","RequestId","onFromClient","unsafeGet","ClientAddressTag","getCurrentFiber","requests","tag","entry","currentContext","makeClientRespond","write","clientRespondDiscard","OutgoingRequest","makeRequest","payload","headers","traceId","spanId","sampled","lastReceivedReply","none","OutgoingEnvelope","AckChunk","replyId","lastChunkId","Uninterruptible","isTransientInterrupt","interruptors","Interrupt","wrappedClient","method","keys","merge","currentClientAddress","withFiberRuntime","EntityAddress","getShardGroup","makeClient","_reply","reply","clientId","exit","reaper","EntityReaper","registerEntity","build","sharding","EntityRegistered","unregister","activeEntityCount","count","of","pollStorage","layer","layerGenerator","Default","GenericTag","Symbol","for","key"],"sources":["../../src/Sharding.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ClusterWorkflowEngine.d.ts","sourceRoot":"","sources":["../../src/ClusterWorkflowEngine.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,KAAK,QAAQ,MAAM,2BAA2B,CAAA;AACrD,OAAO,KAAK,YAAY,MAAM,+BAA+B,CAAA;AAC7D,OAAO,KAAK,QAAQ,MAAM,2BAA2B,CAAA;AACrD,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AAKlF,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAIvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAOvC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEpD,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AAGzC;;;GAGG;AACH,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;
|
1
|
+
{"version":3,"file":"ClusterWorkflowEngine.d.ts","sourceRoot":"","sources":["../../src/ClusterWorkflowEngine.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,KAAK,QAAQ,MAAM,2BAA2B,CAAA;AACrD,OAAO,KAAK,YAAY,MAAM,+BAA+B,CAAA;AAC7D,OAAO,KAAK,QAAQ,MAAM,2BAA2B,CAAA;AACrD,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AAKlF,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAIvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAOvC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEpD,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AAGzC;;;GAGG;AACH,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;4EA4Uf,CAAA;AAkGF;;;GAGG;AACH,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,KAAK,CAC7B,cAAc,EACd,KAAK,EACL,QAAQ,CAAC,QAAQ,GAAG,cAAc,CAGnC,CAAA"}
|
@@ -36,6 +36,15 @@ export const make = /*#__PURE__*/Effect.gen(function* () {
|
|
36
36
|
const storage = yield* MessageStorage;
|
37
37
|
const workflows = new Map();
|
38
38
|
const entities = new Map();
|
39
|
+
const ensureEntity = workflow => {
|
40
|
+
let entity = entities.get(workflow.name);
|
41
|
+
if (!entity) {
|
42
|
+
entity = makeWorkflowEntity(workflow);
|
43
|
+
workflows.set(workflow.name, workflow);
|
44
|
+
entities.set(workflow.name, entity);
|
45
|
+
}
|
46
|
+
return entity;
|
47
|
+
};
|
39
48
|
const activities = new Map();
|
40
49
|
const activityLatches = new Map();
|
41
50
|
const clients = yield* RcMap.make({
|
@@ -120,10 +129,7 @@ export const make = /*#__PURE__*/Effect.gen(function* () {
|
|
120
129
|
if (entities.has(workflow.name)) {
|
121
130
|
return Effect.dieMessage(`Workflow ${workflow.name} already registered`);
|
122
131
|
}
|
123
|
-
|
124
|
-
workflows.set(workflow.name, workflow);
|
125
|
-
entities.set(workflow.name, entity);
|
126
|
-
return sharding.registerEntity(entity, Effect.gen(function* () {
|
132
|
+
return sharding.registerEntity(ensureEntity(workflow), Effect.gen(function* () {
|
127
133
|
const address = yield* Entity.CurrentAddress;
|
128
134
|
const executionId = address.entityId;
|
129
135
|
return {
|
@@ -174,9 +180,12 @@ export const make = /*#__PURE__*/Effect.gen(function* () {
|
|
174
180
|
executionId,
|
175
181
|
payload,
|
176
182
|
workflow
|
177
|
-
}) =>
|
178
|
-
|
179
|
-
|
183
|
+
}) => {
|
184
|
+
ensureEntity(workflow);
|
185
|
+
return RcMap.get(clients, workflow.name).pipe(Effect.flatMap(make => make(executionId).run(payload, {
|
186
|
+
discard
|
187
|
+
})), Effect.orDie, Effect.scoped);
|
188
|
+
},
|
180
189
|
interrupt: Effect.fnUntraced(function* (workflow, executionId) {
|
181
190
|
const reply = yield* requestReply({
|
182
191
|
workflow,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ClusterWorkflowEngine.js","names":["Rpc","DurableDeferred","Activity","DurableClock","Workflow","WorkflowEngine","WorkflowInstance","Arr","Context","DateTime","Duration","Effect","Layer","Option","PrimaryKey","RcMap","Schedule","Schema","ClusterSchema","DeliverAt","Entity","EntityAddress","EntityId","EntityType","MessageStorage","Sharding","Snowflake","make","gen","sharding","storage","workflows","Map","entities","activities","activityLatches","clients","lookup","fnUntraced","workflowName","entity","get","dieMessage","client","idleTimeToLive","clockClient","ClockEntity","requestIdFor","options","shardGroup","workflow","annotations","ShardGroup","executionId","entityId","address","entityType","shardId","getShardId","requestIdForPrimaryKey","tag","id","replyForRequestId","requestId","replies","repliesForUnfiltered","last","pipe","filter","reply","_tag","map","requestReply","isNone","none","value","resetActivityAttempt","name","activityPrimaryKey","activity","attempt","reset","retry","times","schedule","exponential","orDie","clearClock","clockAddress","type","clearAddress","resume","maybeReply","maybeSuspended","exit","pollStorage","of","register","execute","engine","suspend","has","makeWorkflowEntity","set","registerEntity","CurrentAddress","run","request","instance","initial","payload","ensuring","suspended","void","deferredResult","InterruptSignal","flatMap","maybeResult","zipRight","ignore","interrupt","intoResult","provideService","activityId","entry","latch","unsafeMakeLatch","await","contextMap","context","unsafeMap","CurrentAttempt","key","executeEncoded","provide","unsafeMake","sync","delete","fork","deferred","ensureSuccess","discard","scoped","nonSuspendedReply","isSome","deferredDone","while","e","activityExecute","release","result","scheduleClock","now","clock","wakeUp","addDuration","duration","retryPolicy","union","spaced","effect","sandbox","ActivityRpc","String","Number","primaryKey","success","Result","Unknown","error","annotate","Persisted","payloadSchema","fields","successSchema","errorSchema","Uninterruptible","ExitUnknown","annotateContext","encodedSchema","Exit","failure","defect","Defect","ClockPayload","Class","DateTimeUtcFromNumber","symbol","ClockEntityLayer","toLayer","zero","layer","provideMerge"],"sources":["../../src/ClusterWorkflowEngine.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"file":"ClusterWorkflowEngine.js","names":["Rpc","DurableDeferred","Activity","DurableClock","Workflow","WorkflowEngine","WorkflowInstance","Arr","Context","DateTime","Duration","Effect","Layer","Option","PrimaryKey","RcMap","Schedule","Schema","ClusterSchema","DeliverAt","Entity","EntityAddress","EntityId","EntityType","MessageStorage","Sharding","Snowflake","make","gen","sharding","storage","workflows","Map","entities","ensureEntity","workflow","entity","get","name","makeWorkflowEntity","set","activities","activityLatches","clients","lookup","fnUntraced","workflowName","dieMessage","client","idleTimeToLive","clockClient","ClockEntity","requestIdFor","options","shardGroup","annotations","ShardGroup","executionId","entityId","address","entityType","shardId","getShardId","requestIdForPrimaryKey","tag","id","replyForRequestId","requestId","replies","repliesForUnfiltered","last","pipe","filter","reply","_tag","map","requestReply","isNone","none","value","resetActivityAttempt","activityPrimaryKey","activity","attempt","reset","retry","times","schedule","exponential","orDie","clearClock","clockAddress","type","clearAddress","resume","maybeReply","maybeSuspended","exit","pollStorage","of","register","execute","engine","suspend","has","registerEntity","CurrentAddress","run","request","instance","initial","payload","ensuring","suspended","void","deferredResult","InterruptSignal","flatMap","maybeResult","zipRight","ignore","interrupt","intoResult","provideService","activityId","entry","latch","unsafeMakeLatch","await","contextMap","context","unsafeMap","CurrentAttempt","key","executeEncoded","provide","unsafeMake","sync","delete","fork","deferred","ensureSuccess","discard","scoped","nonSuspendedReply","isSome","deferredDone","while","e","activityExecute","release","result","scheduleClock","now","clock","wakeUp","addDuration","duration","retryPolicy","union","spaced","effect","sandbox","ActivityRpc","String","Number","primaryKey","success","Result","Unknown","error","annotate","Persisted","payloadSchema","fields","successSchema","errorSchema","Uninterruptible","ExitUnknown","annotateContext","encodedSchema","Exit","failure","defect","Defect","ClockPayload","Class","DateTimeUtcFromNumber","symbol","ClockEntityLayer","toLayer","zero","layer","provideMerge"],"sources":["../../src/ClusterWorkflowEngine.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/esm/Sharding.js
CHANGED
@@ -738,12 +738,12 @@ const make = /*#__PURE__*/Effect.gen(function* () {
|
|
738
738
|
const context = yield* Effect.context();
|
739
739
|
const reaper = yield* EntityReaper;
|
740
740
|
const registerEntity = Effect.fnUntraced(function* (entity, build, options) {
|
741
|
-
if (entityManagers.has(entity.type)) return;
|
741
|
+
if (Option.isNone(config.runnerAddress) || entityManagers.has(entity.type)) return;
|
742
742
|
const scope = yield* Scope.make();
|
743
743
|
const manager = yield* EntityManager.make(entity, build, {
|
744
744
|
...options,
|
745
745
|
storage,
|
746
|
-
runnerAddress:
|
746
|
+
runnerAddress: config.runnerAddress.value,
|
747
747
|
sharding
|
748
748
|
}).pipe(Effect.provide(context.pipe(Context.add(EntityReaper, reaper), Context.add(Scope.Scope, scope), Context.add(Snowflake.Generator, snowflakeGen))));
|
749
749
|
entityManagers.set(entity.type, {
|
package/dist/esm/Sharding.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"Sharding.js","names":["RpcClient","RequestId","Arr","Cause","Context","Deferred","Effect","Equal","Exit","Fiber","FiberHandle","FiberMap","FiberRef","constant","HashMap","Iterable","Layer","MutableHashMap","MutableHashSet","MutableRef","Option","Predicate","PubSub","Schedule","Scope","Stream","AlreadyProcessingMessage","EntityNotAssignedToRunner","EntityNotManagedByRunner","RunnerUnavailable","Persisted","Uninterruptible","EntityAddress","EntityId","Envelope","EntityManager","EntityReaper","hashString","internalInterruptors","ResourceMap","Message","MessageStorage","Reply","Runners","ShardId","ShardingConfig","EntityRegistered","SingletonRegistered","ShardManagerClient","ShardStorage","SingletonAddress","Snowflake","Sharding","Tag","make","gen","config","runners","shardManager","snowflakeGen","Generator","shardingScope","scope","isShutdown","storage","storageEnabled","noop","shardStorage","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","disableValidation","isEntityOnLocalShards","has","shardId","selfAddress","addFinalizerExit","ignore","releaseAll","releasingShards","await","remove","add","unacquiredShards","size","forkIn","syncSingletons","releaseShards","close","acquired","acquire","resetShards","length","storageReadLatch","open","sleep","pipe","catchAllCause","cause","logWarning","repeat","spaced","entityMessagePollInterval","annotateLogs","package","module","fiber","runner","interruptible","suspend","refresh","flatMap","some","_","symbol","andThen","void","retry","times","schedule","logError","clearSelfShards","delay","forever","releaseShardsLock","unsafeMakeSemaphore","withPermits","forEach","values","state","manager","interruptShard","concurrency","discard","release","clear","singletons","singletonFibers","withSingletonLock","registerSingleton","fnUntraced","name","run","options","shardGroup","map","get","set","dieMessage","context","wrappedRun","locally","currentLogAnnotations","never","scoped","provide","orDie","publish","logDebug","running","unsafeHas","shouldBeRunning","fiberId","openStorageReadLatch","storageReadLock","withStorageReadLock","storageAlreadyProcessed","_message","sentRequestIds","Set","sentRequestIdSets","addFinalizer","message","envelope","requestId","entityType","isProcessingFor","excludeReplies","unsafeClose","take","messages","unprocessedMessages","currentSentRequestIds","send","index","_tag","respond","ReplyWithContext","fromDefect","unsafeNext","defect","isProcessing","resumptionState","entityResumptionState","unprocessed","interrupts","error","failureOption","isNone","saveReply","squash","resumeEntityFromStorage","whileLoop","while","step","body","oldest","unsafeHead","delete","ensuring","lastReceivedMessage","resumeEntityFromStorageImpl","getOrThrow","done","messageIds","push","unprocessedMessagesById","sendWithRetry","catchTags","fail","interrupt","MailboxFull","sendRetryInterval","sync","e","effect","entity","sendLocal","simulateRemoteSerialization","notifyLocal","notify","envelopeId","isTransientError","or","is","sendOutgoing","retries","catchIf","maybeRunner","isPersisted","rpc","annotations","runnerIsLocal","die","reset","clearReplies","matchCause","onSuccess","onFailure","shardManagerTimeoutFiber","extend","startShardManagerTimeout","shardManagerUnavailableTimeout","onlyIfMissing","stopShardManagerTimeout","machineId","register","shardGroups","setMachineId","mailbox","shardingEvents","startedLatch","eventsFiber","takeAll","event","shard","shards","intoDeferred","forkScoped","syncFiber","syncAssignments","refreshAssignmentsInterval","joinAll","zipRight","exponential","union","assignments","getAssignments","clientRequests","clients","client","makeNoSerialization","protocol","spanPrefix","type","supportsAck","generateRequestId","onFromClient","unsafeGet","ClientAddressTag","getCurrentFiber","requests","tag","entry","currentContext","makeClientRespond","write","clientRespondDiscard","OutgoingRequest","makeRequest","payload","headers","traceId","spanId","sampled","lastReceivedReply","none","OutgoingEnvelope","AckChunk","replyId","lastChunkId","isTransientInterrupt","interruptors","Interrupt","wrappedClient","method","Object","keys","merge","currentClientAddress","withFiberRuntime","getShardGroup","makeClient","_reply","reply","clientId","exit","reaper","registerEntity","build","sharding","unregister","activeEntityCount","count","of","pollStorage","layer","layerGenerator","Default","GenericTag","Symbol","for","key"],"sources":["../../src/Sharding.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
1
|
+
{"version":3,"file":"Sharding.js","names":["RpcClient","RequestId","Arr","Cause","Context","Deferred","Effect","Equal","Exit","Fiber","FiberHandle","FiberMap","FiberRef","constant","HashMap","Iterable","Layer","MutableHashMap","MutableHashSet","MutableRef","Option","Predicate","PubSub","Schedule","Scope","Stream","AlreadyProcessingMessage","EntityNotAssignedToRunner","EntityNotManagedByRunner","RunnerUnavailable","Persisted","Uninterruptible","EntityAddress","EntityId","Envelope","EntityManager","EntityReaper","hashString","internalInterruptors","ResourceMap","Message","MessageStorage","Reply","Runners","ShardId","ShardingConfig","EntityRegistered","SingletonRegistered","ShardManagerClient","ShardStorage","SingletonAddress","Snowflake","Sharding","Tag","make","gen","config","runners","shardManager","snowflakeGen","Generator","shardingScope","scope","isShutdown","storage","storageEnabled","noop","shardStorage","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","disableValidation","isEntityOnLocalShards","has","shardId","selfAddress","addFinalizerExit","ignore","releaseAll","releasingShards","await","remove","add","unacquiredShards","size","forkIn","syncSingletons","releaseShards","close","acquired","acquire","resetShards","length","storageReadLatch","open","sleep","pipe","catchAllCause","cause","logWarning","repeat","spaced","entityMessagePollInterval","annotateLogs","package","module","fiber","runner","interruptible","suspend","refresh","flatMap","some","_","symbol","andThen","void","retry","times","schedule","logError","clearSelfShards","delay","forever","releaseShardsLock","unsafeMakeSemaphore","withPermits","forEach","values","state","manager","interruptShard","concurrency","discard","release","clear","singletons","singletonFibers","withSingletonLock","registerSingleton","fnUntraced","name","run","options","shardGroup","map","get","set","dieMessage","context","wrappedRun","locally","currentLogAnnotations","never","scoped","provide","orDie","publish","logDebug","running","unsafeHas","shouldBeRunning","fiberId","openStorageReadLatch","storageReadLock","withStorageReadLock","storageAlreadyProcessed","_message","sentRequestIds","Set","sentRequestIdSets","addFinalizer","message","envelope","requestId","entityType","isProcessingFor","excludeReplies","unsafeClose","take","messages","unprocessedMessages","currentSentRequestIds","send","index","_tag","respond","ReplyWithContext","fromDefect","unsafeNext","defect","isProcessing","resumptionState","entityResumptionState","unprocessed","interrupts","error","failureOption","isNone","saveReply","squash","resumeEntityFromStorage","whileLoop","while","step","body","oldest","unsafeHead","delete","ensuring","lastReceivedMessage","resumeEntityFromStorageImpl","getOrThrow","done","messageIds","push","unprocessedMessagesById","sendWithRetry","catchTags","fail","interrupt","MailboxFull","sendRetryInterval","sync","e","effect","entity","sendLocal","simulateRemoteSerialization","notifyLocal","notify","envelopeId","isTransientError","or","is","sendOutgoing","retries","catchIf","maybeRunner","isPersisted","rpc","annotations","runnerIsLocal","die","reset","clearReplies","matchCause","onSuccess","onFailure","shardManagerTimeoutFiber","extend","startShardManagerTimeout","shardManagerUnavailableTimeout","onlyIfMissing","stopShardManagerTimeout","machineId","register","shardGroups","setMachineId","mailbox","shardingEvents","startedLatch","eventsFiber","takeAll","event","shard","shards","intoDeferred","forkScoped","syncFiber","syncAssignments","refreshAssignmentsInterval","joinAll","zipRight","exponential","union","assignments","getAssignments","clientRequests","clients","client","makeNoSerialization","protocol","spanPrefix","type","supportsAck","generateRequestId","onFromClient","unsafeGet","ClientAddressTag","getCurrentFiber","requests","tag","entry","currentContext","makeClientRespond","write","clientRespondDiscard","OutgoingRequest","makeRequest","payload","headers","traceId","spanId","sampled","lastReceivedReply","none","OutgoingEnvelope","AckChunk","replyId","lastChunkId","isTransientInterrupt","interruptors","Interrupt","wrappedClient","method","Object","keys","merge","currentClientAddress","withFiberRuntime","getShardGroup","makeClient","_reply","reply","clientId","exit","reaper","registerEntity","build","sharding","unregister","activeEntityCount","count","of","pollStorage","layer","layerGenerator","Default","GenericTag","Symbol","for","key"],"sources":["../../src/Sharding.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.38.
|
3
|
+
"version": "0.38.8",
|
4
4
|
"description": "Unified interfaces for common cluster-specific services",
|
5
5
|
"license": "MIT",
|
6
6
|
"repository": {
|
@@ -14,7 +14,7 @@
|
|
14
14
|
"@effect/platform": "^0.84.8",
|
15
15
|
"@effect/rpc": "^0.61.8",
|
16
16
|
"@effect/sql": "^0.37.9",
|
17
|
-
"@effect/workflow": "^0.1.
|
17
|
+
"@effect/workflow": "^0.1.6",
|
18
18
|
"effect": "^3.16.4"
|
19
19
|
},
|
20
20
|
"publishConfig": {
|
@@ -50,6 +50,16 @@ export const make = Effect.gen(function*() {
|
|
50
50
|
>
|
51
51
|
>
|
52
52
|
>()
|
53
|
+
const ensureEntity = (workflow: Workflow.Any) => {
|
54
|
+
let entity = entities.get(workflow.name)
|
55
|
+
if (!entity) {
|
56
|
+
entity = makeWorkflowEntity(workflow) as any
|
57
|
+
workflows.set(workflow.name, workflow)
|
58
|
+
entities.set(workflow.name, entity as any)
|
59
|
+
}
|
60
|
+
return entity!
|
61
|
+
}
|
62
|
+
|
53
63
|
const activities = new Map<string, {
|
54
64
|
readonly activity: Activity.Any
|
55
65
|
readonly context: Context.Context<any>
|
@@ -176,11 +186,8 @@ export const make = Effect.gen(function*() {
|
|
176
186
|
if (entities.has(workflow.name)) {
|
177
187
|
return Effect.dieMessage(`Workflow ${workflow.name} already registered`)
|
178
188
|
}
|
179
|
-
const entity = makeWorkflowEntity(workflow)
|
180
|
-
workflows.set(workflow.name, workflow)
|
181
|
-
entities.set(workflow.name, entity as any)
|
182
189
|
return sharding.registerEntity(
|
183
|
-
|
190
|
+
ensureEntity(workflow),
|
184
191
|
Effect.gen(function*() {
|
185
192
|
const address = yield* Entity.CurrentAddress
|
186
193
|
const executionId = address.entityId
|
@@ -245,12 +252,14 @@ export const make = Effect.gen(function*() {
|
|
245
252
|
})
|
246
253
|
},
|
247
254
|
|
248
|
-
execute: ({ discard, executionId, payload, workflow }) =>
|
249
|
-
|
255
|
+
execute: ({ discard, executionId, payload, workflow }) => {
|
256
|
+
ensureEntity(workflow)
|
257
|
+
return RcMap.get(clients, workflow.name).pipe(
|
250
258
|
Effect.flatMap((make) => make(executionId).run(payload, { discard })),
|
251
259
|
Effect.orDie,
|
252
260
|
Effect.scoped
|
253
|
-
)
|
261
|
+
)
|
262
|
+
},
|
254
263
|
|
255
264
|
interrupt: Effect.fnUntraced(
|
256
265
|
function*(this: WorkflowEngine["Type"], workflow, executionId) {
|
package/src/Sharding.ts
CHANGED
@@ -1112,12 +1112,12 @@ const make = Effect.gen(function*() {
|
|
1112
1112
|
const reaper = yield* EntityReaper
|
1113
1113
|
const registerEntity: Sharding["Type"]["registerEntity"] = Effect.fnUntraced(
|
1114
1114
|
function*(entity, build, options) {
|
1115
|
-
if (entityManagers.has(entity.type)) return
|
1115
|
+
if (Option.isNone(config.runnerAddress) || entityManagers.has(entity.type)) return
|
1116
1116
|
const scope = yield* Scope.make()
|
1117
1117
|
const manager = yield* EntityManager.make(entity, build, {
|
1118
1118
|
...options,
|
1119
1119
|
storage,
|
1120
|
-
runnerAddress:
|
1120
|
+
runnerAddress: config.runnerAddress.value,
|
1121
1121
|
sharding
|
1122
1122
|
}).pipe(
|
1123
1123
|
Effect.provide(context.pipe(
|