@scrypted/server 0.116.0 → 0.117.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -95,7 +95,7 @@ function startPluginRemote(mainFilename, pluginId, peerSend, startPluginRemoteOp
95
95
  let clusterEntry = properties.__cluster;
96
96
  // ensure globally stable proxyIds.
97
97
  // worker threads will embed their pid and tid in the proxy id for cross worker fast path.
98
- const proxyId = clusterEntry?.proxyId || (worker_threads_1.default.isMainThread ? rpc_1.RpcPeer.generateId() : `n-${process.pid}-${worker_threads_1.default.threadId}-${rpc_1.RpcPeer.generateId()}`);
98
+ const proxyId = clusterEntry?.proxyId || `n-${process.pid}-${worker_threads_1.default.threadId}-${rpc_1.RpcPeer.generateId()}`;
99
99
  // if the cluster entry already exists, check if it belongs to this node.
100
100
  // if it belongs to this node, the entry must also be for this peer.
101
101
  // relying on the liveness/gc of a different peer may cause race conditions.
@@ -123,7 +123,14 @@ function startPluginRemote(mainFilename, pluginId, peerSend, startPluginRemoteOp
123
123
  const sourcePeer = sourceKey
124
124
  ? await clusterPeers.get(sourceKey)
125
125
  : peer;
126
- return sourcePeer?.localProxyMap.get(id);
126
+ if (!sourcePeer)
127
+ console.error('source peer not found', sourceKey);
128
+ const ret = sourcePeer?.localProxyMap.get(id);
129
+ if (!ret) {
130
+ console.error('source key not found', sourceKey, id);
131
+ return;
132
+ }
133
+ return ret;
127
134
  };
128
135
  // all cluster clients, incoming and outgoing, connect with random ports which can be used as peer ids
129
136
  // on the cluster server that is listening on the actual port/
@@ -134,10 +141,10 @@ function startPluginRemote(mainFilename, pluginId, peerSend, startPluginRemoteOp
134
141
  return `${address}:${port}`;
135
142
  }
136
143
  const clusterRpcServer = net_1.default.createServer(client => {
137
- const clusterPeer = (0, rpc_serializer_1.createDuplexRpcPeer)(peer.selfName, 'cluster-client', client, client);
138
144
  const clusterPeerAddress = client.remoteAddress;
139
145
  const clusterPeerPort = client.remotePort;
140
146
  const clusterPeerKey = getClusterPeerKey(clusterPeerAddress, clusterPeerPort);
147
+ const clusterPeer = (0, rpc_serializer_1.createDuplexRpcPeer)(peer.selfName, clusterPeerKey, client, client);
141
148
  // the listening peer sourceKey (client address/port) is used by the OTHER peer (the client)
142
149
  // to determine if it is already connected to THIS peer (the server).
143
150
  clusterPeer.onProxySerialization = (value) => onProxySerialization(value, clusterPeerKey);
@@ -171,14 +178,11 @@ function startPluginRemote(mainFilename, pluginId, peerSend, startPluginRemoteOp
171
178
  socket.on('close', () => clusterPeers.delete(clusterPeerKey));
172
179
  try {
173
180
  await (0, events_1.once)(socket, 'connect');
174
- // this connecting peer sourceKey (server address/port) is used by the OTHER peer (the server)
175
- // to determine if it is already connected to THIS peer (the client).
176
- const { address: sourceAddress, port: sourcePort } = socket.address();
181
+ const { address: sourceAddress } = socket.address();
177
182
  if (sourceAddress !== SCRYPTED_CLUSTER_ADDRESS && sourceAddress !== '127.0.0.1')
178
183
  console.warn("source address mismatch", sourceAddress);
179
- const sourcePeerKey = getClusterPeerKey(sourceAddress, sourcePort);
180
- const clusterPeer = (0, rpc_serializer_1.createDuplexRpcPeer)(peer.selfName, 'cluster-server', socket, socket);
181
- clusterPeer.onProxySerialization = (value) => onProxySerialization(value, sourcePeerKey);
184
+ const clusterPeer = (0, rpc_serializer_1.createDuplexRpcPeer)(peer.selfName, clusterPeerKey, socket, socket);
185
+ clusterPeer.onProxySerialization = (value) => onProxySerialization(value, clusterPeerKey);
182
186
  return clusterPeer;
183
187
  }
184
188
  catch (e) {
@@ -201,28 +205,6 @@ function startPluginRemote(mainFilename, pluginId, peerSend, startPluginRemoteOp
201
205
  }
202
206
  const tidChannels = new Map();
203
207
  const tidPeers = new Map();
204
- function finishTidPeerConnection(tid, port) {
205
- const threadPeer = node_thread_worker_1.NodeThreadWorker.createRpcPeer(peer.selfName, 'thread-server', port);
206
- // this connecting peer sourceKey (thread id) is used by the OTHER peer (the server)
207
- // to determine if it is already connected to THIS peer (the client).
208
- const threadPeerKey = `thread:${worker_threads_1.default.threadId}-${tid}`;
209
- threadPeer.onProxySerialization = value => onProxySerialization(value, threadPeerKey);
210
- const connectRPCObject = async (o) => {
211
- const sha256 = (0, cluster_hash_1.computeClusterObjectHash)(o, clusterSecret);
212
- if (sha256 !== o.sha256)
213
- throw new Error('secret incorrect');
214
- return resolveObject(o.proxyId, o.sourceKey);
215
- };
216
- threadPeer.params['connectRPCObject'] = connectRPCObject;
217
- function cleanup(message) {
218
- tidChannels.delete(tid);
219
- tidPeers.delete(tid);
220
- threadPeer.kill(message);
221
- }
222
- port.on('close', () => cleanup('connection closed.'));
223
- port.on('messageerror', () => cleanup('message error.'));
224
- return threadPeer;
225
- }
226
208
  function connectTidPeer(tid) {
227
209
  let peerPromise = tidPeers.get(tid);
228
210
  if (peerPromise)
@@ -239,17 +221,32 @@ function startPluginRemote(mainFilename, pluginId, peerSend, startPluginRemoteOp
239
221
  });
240
222
  }
241
223
  }
242
- function cleanup() {
243
- clusterPeers.delete(threadPeerKey);
224
+ const threadPeerKey = `thread:${tid}`;
225
+ function peerCleanup() {
244
226
  clusterPeers.delete(threadPeerKey);
245
227
  }
246
228
  peerPromise = tidDeferred.promise.then(port => {
247
- port.on('close', () => cleanup());
248
- port.on('messageerror', () => cleanup());
249
- return finishTidPeerConnection(tid, port);
229
+ port.on('close', () => peerCleanup());
230
+ port.on('messageerror', () => peerCleanup());
231
+ const threadPeer = node_thread_worker_1.NodeThreadWorker.createRpcPeer(peer.selfName, threadPeerKey, port);
232
+ threadPeer.onProxySerialization = value => onProxySerialization(value, threadPeerKey);
233
+ const connectRPCObject = async (o) => {
234
+ const sha256 = (0, cluster_hash_1.computeClusterObjectHash)(o, clusterSecret);
235
+ if (sha256 !== o.sha256)
236
+ throw new Error('secret incorrect');
237
+ return resolveObject(o.proxyId, o.sourceKey);
238
+ };
239
+ threadPeer.params['connectRPCObject'] = connectRPCObject;
240
+ function cleanup(message) {
241
+ tidChannels.delete(tid);
242
+ tidPeers.delete(tid);
243
+ threadPeer.kill(message);
244
+ }
245
+ port.on('close', () => cleanup('connection closed.'));
246
+ port.on('messageerror', () => cleanup('message error.'));
247
+ return threadPeer;
250
248
  });
251
- peerPromise.catch(() => cleanup());
252
- const threadPeerKey = `thread:${worker_threads_1.default.threadId}-${tid}`;
249
+ peerPromise.catch(() => peerCleanup());
253
250
  clusterPeers.set(threadPeerKey, peerPromise);
254
251
  tidPeers.set(tid, peerPromise);
255
252
  return peerPromise;
@@ -358,7 +355,7 @@ function startPluginRemote(mainFilename, pluginId, peerSend, startPluginRemoteOp
358
355
  return newValue;
359
356
  }
360
357
  catch (e) {
361
- console.error('failure rpc', e);
358
+ console.error('failure rpc', clusterObject, e);
362
359
  return value;
363
360
  }
364
361
  };
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-remote-worker.js","sourceRoot":"","sources":["../../src/plugin/plugin-remote-worker.ts"],"names":[],"mappings":";;;;;AAqCA,8CAsoBC;AAzqBD,mCAA8B;AAC9B,4CAAoB;AACpB,8CAAsB;AACtB,gDAAwB;AACxB,2DAAwE;AACxE,oEAA4C;AAC5C,0DAAmE;AAEnE,gDAA4C;AAC5C,gCAA6C;AAC7C,oDAA6C;AAC7C,sDAAwD;AACxD,mCAA2C;AAC3C,6CAAmG;AACnG,qDAAsE;AACtE,uEAA2F;AAC3F,mDAA2F;AAC3F,+DAAuE;AACvE,+CAAiD;AACjD,mDAAkD;AAClD,qEAAgE;AAChE,qEAA0D;AAE1D,yDAAgE;AAChE,yEAAoE;AACpE,0CAAuC;AAEvC,MAAM,aAAa,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC,OAAO,CAAC;AAQ5D,SAAgB,iBAAiB,CAAC,YAAoB,EAAE,QAAgB,EAAE,QAAgG,EAAE,wBAAmD;IAC3N,MAAM,IAAI,GAAG,IAAI,aAAO,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IAEtD,IAAI,aAA4B,CAAC;IACjC,IAAI,aAAgC,CAAC;IACrC,IAAI,GAAc,CAAC;IAGnB,IAAI,cAA4B,CAAC;IACjC,SAAS,UAAU;QACf,IAAI,CAAC,cAAc;YACf,cAAc,GAAG,GAAG,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QACjD,OAAO,cAAc,CAAC;IAC1B,CAAC;IAED,MAAM,EAAE,gBAAgB,EAAE,eAAe,EAAE,GAAG,IAAA,gCAAe,EAAC,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,aAAa,EAAE,GAAG,EAAE,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;IAEzI,IAAI,QAAyB,CAAC;IAE9B,IAAI,cAAuB,CAAC;IAC5B,MAAM,gBAAgB,GAAG,GAAG,EAAE;QAC1B,IAAI,CAAC,cAAc;YACf,cAAc,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;QACjD,OAAO,cAAc,CAAC;IAC1B,CAAC,CAAA;IAED,IAAI,2BAA+D,CAAC;IAEpE,MAAM,KAAK,GAAG,IAAI,GAAG,EAAgB,CAAC;IAEtC,IAAA,kCAAkB,EAAC,IAAI,EAAE;QACrB,kBAAkB,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;YACjC,aAAa,GAAG,EAAE,CAAC;YACnB,aAAa,GAAG,EAAE,CAAA;YAClB,OAAO,IAAI,wBAAgB,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;QACnD,CAAC;QACD,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;YACnC,MAAM,iBAAkB,SAAQ,2BAAc;gBAC1C,CAAC,aAAO,CAAC,6BAA6B,CAAC,GAAI,IAAY,CAAC,aAAO,CAAC,6BAA6B,CAAC,CAAC;gBAE/F,UAAU,CAAC,QAAgB,EAAE,OAAgC;oBACzD,MAAM,EAAE,GAAG,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;oBACpD,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;wBACpB,CAAC,CAAC,WAAW,CAAC,QAAQ,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;oBACzC,CAAC;oBACD,OAAO,KAAK,CAAC,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBAC/C,CAAC;aACJ;YAED,GAAG,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,CAAC;YAClC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;YACzB,OAAO,GAAG,CAAC;QACf,CAAC;QACD,gBAAgB;QAChB,gBAAgB;QAChB,eAAe;QACf,KAAK,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,IAAW;YACrC,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;gBAClB,IAAI,CAAC,QAAQ;oBACT,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAA;gBAC3D,OAAO,QAAQ,CAAC;YACpB,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC;QAC/C,CAAC;QACD,KAAK,CAAC,SAAS,CAAC,QAAwB,EAAE,MAAW,EAAE,WAAgB,EAAE,MAA6B,EAAE,UAAsC;YAC1I,MAAM,QAAQ,GAAG,UAAU,EAAE,IAAI,IAAI,MAAM,CAAC;YAC5C,MAAM,UAAU,GAAG,GAAG,QAAQ,YAAY,CAAC;YAC3C,MAAM,gBAAgB,GAAG,WAAW,UAAU,EAAE,CAAC;YACjD,MAAM,kBAAkB,GAAG,IAAI,QAAQ,IAAI,UAAU,EAAE,CAAC;YAExD,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC;YACzD,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,MAAM,IAAA,+BAAU,EAAC,IAAA,+BAAe,EAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;YAE/F,MAAM,wBAAwB,GAAG,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC;YAEtE,MAAM,oBAAoB,GAAG,CAAC,KAAU,EAAE,SAAkB,EAAE,EAAE;gBAC5D,MAAM,UAAU,GAAG,aAAO,CAAC,sBAAsB,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;gBAC/D,IAAI,YAAY,GAAkB,UAAU,CAAC,SAAS,CAAC;gBAEvD,mCAAmC;gBACnC,0FAA0F;gBAC1F,MAAM,OAAO,GAAG,YAAY,EAAE,OAAO,IAAI,CAAC,wBAAc,CAAC,YAAY,CAAC,CAAC,CAAC,aAAO,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,GAAG,IAAI,wBAAc,CAAC,QAAQ,IAAI,aAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;gBAEtK,yEAAyE;gBACzE,oEAAoE;gBACpE,4EAA4E;gBAC5E,IAAI,YAAY,IAAI,WAAW,KAAK,YAAY,CAAC,IAAI,IAAI,SAAS,KAAK,YAAY,CAAC,SAAS;oBACzF,YAAY,GAAG,SAAS,CAAC;gBAE7B,IAAI,CAAC,YAAY,EAAE,CAAC;oBAChB,YAAY,GAAG;wBACX,EAAE,EAAE,SAAS;wBACb,OAAO,EAAE,wBAAwB;wBACjC,IAAI,EAAE,WAAW;wBACjB,OAAO;wBACP,SAAS;wBACT,MAAM,EAAE,IAAI;qBACf,CAAC;oBACF,YAAY,CAAC,MAAM,GAAG,IAAA,uCAAwB,EAAC,YAAY,EAAE,aAAa,CAAC,CAAC;oBAC5E,UAAU,CAAC,SAAS,GAAG,YAAY,CAAC;gBACxC,CAAC;gBAED,OAAO;oBACH,OAAO;oBACP,UAAU;iBACb,CAAC;YACN,CAAC,CAAA;YACD,IAAI,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;YAEjD,MAAM,aAAa,GAAG,KAAK,EAAE,EAAU,EAAE,SAAiB,EAAE,EAAE;gBAC1D,MAAM,UAAU,GAAG,SAAS;oBACxB,CAAC,CAAC,MAAM,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC;oBACnC,CAAC,CAAC,IAAI,CAAC;gBACX,OAAO,UAAU,EAAE,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC7C,CAAC,CAAA;YAED,sGAAsG;YACtG,8DAA8D;YAC9D,0DAA0D;YAC1D,yDAAyD;YACzD,MAAM,YAAY,GAAG,IAAI,GAAG,EAA4B,CAAC;YACzD,SAAS,iBAAiB,CAAC,OAAe,EAAE,IAAY;gBACpD,OAAO,GAAG,OAAO,IAAI,IAAI,EAAE,CAAC;YAChC,CAAC;YAED,MAAM,gBAAgB,GAAG,aAAG,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE;gBAC/C,MAAM,WAAW,GAAG,IAAA,oCAAmB,EAAC,IAAI,CAAC,QAAQ,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;gBACzF,MAAM,kBAAkB,GAAG,MAAM,CAAC,aAAa,CAAC;gBAChD,MAAM,eAAe,GAAG,MAAM,CAAC,UAAU,CAAC;gBAC1C,MAAM,cAAc,GAAG,iBAAiB,CAAC,kBAAkB,EAAE,eAAe,CAAC,CAAC;gBAC9E,4FAA4F;gBAC5F,qEAAqE;gBACrE,WAAW,CAAC,oBAAoB,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,oBAAoB,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;gBAC1F,YAAY,CAAC,GAAG,CAAC,cAAc,EAAE,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;gBAC/D,wBAAwB,EAAE,aAAa,EAAE,CAAC,WAAW,CAAC,CAAC;gBACvD,MAAM,gBAAgB,GAAqB,KAAK,EAAE,CAAC,EAAE,EAAE;oBACnD,MAAM,MAAM,GAAG,IAAA,uCAAwB,EAAC,CAAC,EAAE,aAAa,CAAC,CAAC;oBAC1D,IAAI,MAAM,KAAK,CAAC,CAAC,MAAM;wBACnB,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;oBACxC,OAAO,aAAa,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC;gBACjD,CAAC,CAAA;gBACD,WAAW,CAAC,MAAM,CAAC,kBAAkB,CAAC,GAAG,gBAAgB,CAAC;gBAC1D,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;oBACpB,YAAY,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;oBACpC,WAAW,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;gBAC9C,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,CAAA;YAEF,MAAM,aAAa,GAAG,wBAAwB;gBAC1C,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,WAAW,CAAC;YAClB,MAAM,WAAW,GAAG,MAAM,IAAA,wBAAU,EAAC,gBAAgB,EAAE,aAAa,CAAC,CAAC;YAEtE,MAAM,iBAAiB,GAAG,CAAC,OAAe,EAAE,WAAmB,EAAE,EAAE;gBAC/D,IAAI,CAAC,OAAO,IAAI,OAAO,KAAK,wBAAwB;oBAChD,OAAO,GAAG,WAAW,CAAC;gBAE1B,MAAM,cAAc,GAAG,iBAAiB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;gBAC/D,IAAI,kBAAkB,GAAG,YAAY,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;gBAC1D,IAAI,kBAAkB;oBAClB,OAAO,kBAAkB,CAAC;gBAE9B,kBAAkB,GAAG,CAAC,KAAK,IAAI,EAAE;oBAC7B,MAAM,MAAM,GAAG,aAAG,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;oBACjD,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC;oBAE9D,IAAI,CAAC;wBACD,MAAM,IAAA,aAAI,EAAC,MAAM,EAAE,SAAS,CAAC,CAAC;wBAE9B,8FAA8F;wBAC9F,qEAAqE;wBACrE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,UAAU,EAAE,GAAI,MAAM,CAAC,OAAO,EAAsB,CAAC;wBAC3F,IAAI,aAAa,KAAK,wBAAwB,IAAI,aAAa,KAAK,WAAW;4BAC3E,OAAO,CAAC,IAAI,CAAC,yBAAyB,EAAE,aAAa,CAAC,CAAC;wBAC3D,MAAM,aAAa,GAAG,iBAAiB,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;wBAEnE,MAAM,WAAW,GAAG,IAAA,oCAAmB,EAAC,IAAI,CAAC,QAAQ,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;wBACzF,WAAW,CAAC,oBAAoB,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,oBAAoB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;wBACzF,OAAO,WAAW,CAAC;oBACvB,CAAC;oBACD,OAAO,CAAC,EAAE,CAAC;wBACP,OAAO,CAAC,KAAK,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC;wBACxC,MAAM,CAAC,OAAO,EAAE,CAAC;wBACjB,MAAM,CAAC,CAAC;oBACZ,CAAC;gBACL,CAAC,CAAC,EAAE,CAAC;gBAEL,YAAY,CAAC,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;gBACrD,OAAO,kBAAkB,CAAC;YAC9B,CAAC,CAAC;YAEF,KAAK,UAAU,oBAAoB,CAAC,IAAa,EAAE,CAAgB;gBAC/D,IAAI,oBAAoB,GAA8B,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;gBACpF,IAAI,CAAC,oBAAoB,EAAE,CAAC;oBACxB,oBAAoB,GAAG,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;oBACzD,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,oBAAoB,CAAC;gBACzD,CAAC;gBACD,MAAM,QAAQ,GAAG,MAAM,oBAAoB,CAAC;gBAC5C,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC;YACvB,CAAC;YAED,MAAM,WAAW,GAAG,IAAI,GAAG,EAAgD,CAAC;YAC5E,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA4B,CAAC;YAErD,SAAS,uBAAuB,CAAC,GAAW,EAAE,IAAgC;gBAC1E,MAAM,UAAU,GAAG,qCAAgB,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,EAAE,eAAe,EAAE,IAAI,CAAC,CAAC;gBACxF,oFAAoF;gBACpF,qEAAqE;gBACrE,MAAM,aAAa,GAAG,UAAU,wBAAc,CAAC,QAAQ,IAAI,GAAG,EAAE,CAAC;gBACjE,UAAU,CAAC,oBAAoB,GAAG,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;gBAEtF,MAAM,gBAAgB,GAAqB,KAAK,EAAE,CAAC,EAAE,EAAE;oBACnD,MAAM,MAAM,GAAG,IAAA,uCAAwB,EAAC,CAAC,EAAE,aAAa,CAAC,CAAC;oBAC1D,IAAI,MAAM,KAAK,CAAC,CAAC,MAAM;wBACnB,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;oBACxC,OAAO,aAAa,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC;gBACjD,CAAC,CAAA;gBACD,UAAU,CAAC,MAAM,CAAC,kBAAkB,CAAC,GAAG,gBAAgB,CAAC;gBACzD,SAAS,OAAO,CAAC,OAAe;oBAC5B,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBACxB,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBACrB,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC7B,CAAC;gBACD,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC;gBACtD,IAAI,CAAC,EAAE,CAAC,cAAc,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC;gBACzD,OAAO,UAAU,CAAC;YACtB,CAAC;YAED,SAAS,cAAc,CAAC,GAAW;gBAC/B,IAAI,WAAW,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACpC,IAAI,WAAW;oBACX,OAAO,WAAW,CAAC;gBACvB,IAAI,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACvC,oDAAoD;gBACpD,IAAI,CAAC,WAAW,EAAE,CAAC;oBACf,WAAW,GAAG,IAAI,mBAAQ,EAA8B,CAAC;oBACzD,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;oBAElC,IAAI,cAAc,EAAE,CAAC;wBACjB,6CAA6C;wBAC7C,cAAc,CAAC,WAAW,CAAC;4BACvB,QAAQ,EAAE,GAAG;yBAChB,CAAC,CAAC;oBACP,CAAC;gBACL,CAAC;gBAED,SAAS,OAAO;oBACZ,YAAY,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;oBACnC,YAAY,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;gBACvC,CAAC;gBACD,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;oBAC1C,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;oBAClC,IAAI,CAAC,EAAE,CAAC,cAAc,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;oBACzC,OAAO,uBAAuB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;gBAC9C,CAAC,CAAC,CAAC;gBACH,WAAW,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;gBACnC,MAAM,aAAa,GAAG,UAAU,wBAAc,CAAC,QAAQ,IAAI,GAAG,EAAE,CAAC;gBACjE,YAAY,CAAC,GAAG,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;gBAC7C,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;gBAE/B,OAAO,WAAW,CAAC;YACvB,CAAC;YAED,MAAM,cAAc,GAA+B,wBAAc,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,wBAAc,CAAC,UAAU,CAAC,cAAc,CAAC;YACtI,IAAI,CAAC,wBAAc,CAAC,YAAY,EAAE,CAAC;gBAC/B,2GAA2G;gBAC3G,cAAc,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,OAA+D,EAAE,EAAE;oBACnG,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;oBACnC,IAAI,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;oBAC5C,IAAI,CAAC,WAAW,EAAE,CAAC;wBACf,WAAW,GAAG,IAAI,mBAAQ,EAA8B,CAAC;wBACzD,WAAW,CAAC,GAAG,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;oBAC3C,CAAC;oBACD,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;oBAC1B,cAAc,CAAC,QAAQ,CAAC,CAAC;gBAC7B,CAAC,CAAC,CAAC;YACP,CAAC;YAED,KAAK,UAAU,gBAAgB,CAAC,aAA4B,EAAE,GAAW;gBACrE,wDAAwD;gBACxD,0EAA0E;gBAC1E,uDAAuD;gBACvD,IAAI,wBAAc,CAAC,YAAY;oBAC3B,uBAAuB,CAAC,GAAG,EAAE,wBAAc,CAAC,QAAQ,CAAC,CAAC;gBAC1D,MAAM,WAAW,GAAG,MAAM,cAAc,CAAC,GAAG,CAAC,CAAC;gBAC9C,MAAM,QAAQ,GAAG,WAAW,CAAC,iBAAiB,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC;gBAC/E,IAAI,QAAQ;oBACR,OAAO,QAAQ,CAAC;gBACpB,OAAO,oBAAoB,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;YAC5D,CAAC;YAED,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAU,CAAC;YAC9C,MAAM,OAAO,GAAG,IAAI,GAAG,EAAsC,CAAC;YAC9D,SAAS,uBAAuB,CAAC,QAAgB,EAAE,eAAuB;gBACtE,IAAI,wBAAc,CAAC,YAAY,IAAI,QAAQ,KAAK,wBAAc,CAAC,QAAQ,EAAE,CAAC;oBACtE,MAAM,GAAG,GAAG,mDAAmD,CAAC;oBAChE,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBACnB,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;gBACzB,CAAC;gBACD,2EAA2E;gBAC3E,8BAA8B;gBAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;gBAC/D,IAAI,mBAAmB,CAAC,GAAG,CAAC,GAAG,CAAC;oBAC5B,OAAO;gBAEX,mBAAmB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAE7B,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBACrC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;gBAC7C,MAAM,OAAO,GAAG,IAAI,wBAAc,CAAC,cAAc,EAAE,CAAC;gBAEpD,MAAM,CAAC,WAAW,CAAC;oBACf,IAAI,EAAE,OAAO,CAAC,KAAK;oBACnB,QAAQ,EAAE,eAAe;iBAC5B,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;gBAEpB,IAAI,OAAO,EAAE,CAAC;oBACV,OAAO,CAAC,WAAW,CAAC;wBAChB,IAAI,EAAE,OAAO,CAAC,KAAK;wBACnB,QAAQ;qBACX,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;gBACxB,CAAC;qBACI,IAAI,eAAe,KAAK,wBAAc,CAAC,QAAQ,EAAE,CAAC;oBACnD,cAAc,CAAC,QAAQ,CAAC,CAAC;oBACzB,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;oBAC3C,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBACpC,CAAC;qBACI,CAAC;oBACF,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;gBAC1B,CAAC;YACL,CAAC;YAED,SAAS,wBAAwB,CAAC,UAAsC,EAAE,QAAgB;gBACtF,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;gBAElC,gJAAgJ;gBAChJ,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,OAA+D,EAAE,EAAE;oBAC/F,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC;oBAEpD,IAAI,IAAI,EAAE,CAAC;wBACP,wBAAwB,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;oBACpD,CAAC;yBACI,CAAC;wBACF,uBAAuB,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;oBACvD,CAAC;gBACL,CAAC,CAAC,CAAC;YACP,CAAC;YAED,QAAQ,CAAC,gBAAgB,GAAG,KAAK,EAAE,KAAU,EAAE,EAAE;gBAC7C,MAAM,aAAa,GAAkB,KAAK,EAAE,SAAS,CAAC;gBACtD,IAAI,aAAa,EAAE,EAAE,KAAK,SAAS;oBAC/B,OAAO,KAAK,CAAC;gBACjB,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,aAAa,CAAC;gBAC5D,+EAA+E;gBAC/E,6EAA6E;gBAC7E,IAAI,IAAI,KAAK,WAAW;oBACpB,OAAO,aAAa,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;gBAE7C,sFAAsF;gBACtF,IAAI,OAAO,KAAK,wBAAwB,IAAI,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;oBACnE,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBACjC,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC/B,IAAI,GAAG,KAAK,OAAO,CAAC,GAAG;wBACnB,OAAO,gBAAgB,CAAC,aAAa,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACnE,CAAC;gBAED,IAAI,CAAC;oBACD,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;oBAC5D,MAAM,WAAW,GAAG,MAAM,kBAAkB,CAAC;oBAC7C,8CAA8C;oBAC9C,MAAM,QAAQ,GAAG,WAAW,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC;oBACjE,IAAI,QAAQ;wBACR,OAAO,QAAQ,CAAC;oBACpB,MAAM,QAAQ,GAAG,MAAM,oBAAoB,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;oBACxE,IAAI,CAAC,QAAQ;wBACT,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;oBAC7C,OAAO,QAAQ,CAAC;gBACpB,CAAC;gBACD,OAAO,CAAC,EAAE,CAAC;oBACP,OAAO,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;oBAChC,OAAO,KAAK,CAAC;gBACjB,CAAC;YACL,CAAC,CAAA;YACD,IAAI,wBAAc,CAAC,YAAY,EAAE,CAAC;gBAC9B,MAAM,KAAK,GAAG,cAAI,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,CAAA;gBAC3C,MAAM,YAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE;oBAC3B,SAAS,EAAE,IAAI;iBAClB,CAAC,CAAC;gBACH,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACzB,CAAC;YAED,MAAM,YAAY,GAAG,CAAC,IAAY,EAAE,EAAE;gBAClC,MAAM,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;gBAC/C,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;oBACxB,OAAO;gBACX,OAAO,YAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;YACrC,CAAC,CAAC;YAEF,MAAM,aAAa,GAAG,gBAAgB,EAAE,EAAE,CAAC;YAC3C,MAAM,CAAC,OAAO,GAAG,aAAa,CAAC;YAC/B,MAAM,GAAG,GAAG,IAAA,2CAAiB,EAAC,QAAQ,CAAC,CAAC;YACxC,aAAa,EAAE,GAAG,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;YACxC,MAAM,CAAC,OAAO,GAAG,CAAC,IAAY,EAAE,EAAE;gBAC9B,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACpB,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC;gBACzB,CAAC;gBACD,IAAI,CAAC;oBACD,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,YAAY,EAAE,CAAC;wBACvC,IAAI,CAAC;4BACD,MAAM,CAAC,GAAG,cAAI,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;4BACxC,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;4BAC1B,OAAO,MAAM,CAAC;wBAClB,CAAC;wBACD,OAAO,CAAC,EAAE,CAAC;wBACX,CAAC;oBACL,CAAC;oBACD,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;oBAC7B,OAAO,MAAM,CAAC;gBAClB,CAAC;gBACD,OAAO,CAAC,EAAE,CAAC;oBACP,MAAM,CAAC,GAAG,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;oBAC/C,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC;gBACtB,CAAC;YACL,CAAC,CAAC;YACF,0BAA0B;YAC1B,MAAM,OAAO,GAAQ,EAAE,CAAC;YACxB,4BAA4B;YAC5B,0BAA0B;YAC1B,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC;YAEzB,MAAM,KAAK,GAAG,YAAY,CAAC,GAAG,UAAU,MAAM,CAAC,CAAA;YAC/C,MAAM,GAAG,GAAG,KAAK,EAAE,QAAQ,EAAE,CAAC;YAE9B,qEAAqE;YACrE,8DAA8D;YAC9D,2BAA2B,GAAG,CAAC,QAAQ,EAAE,EAAE;gBACvC,OAAO,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,CAAC;gBAChD,OAAO,CAAC,kBAAkB,CAAC,oBAAoB,CAAC,CAAC;gBAEjD,OAAO,CAAC,EAAE,CAAC,mBAAmB,EAAE,CAAC,CAAC,EAAE;oBAChC,gBAAgB,EAAE,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC;oBACjD,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,oBAAoB,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;gBACtE,CAAC,CAAC,CAAC;gBACH,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,CAAC,CAAC,EAAE;oBACjC,gBAAgB,EAAE,CAAC,KAAK,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC;oBAClD,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,qBAAqB,GAAG,CAAE,CAAW,CAAC,KAAK,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;gBAClF,CAAC,CAAC,CAAC;gBAEH,IAAA,4BAAuB,EAAC;oBACpB,WAAW,EAAE,MAAM;oBACnB,iBAAiB,CAAC,MAAM;wBACpB,IAAI,MAAM,KAAK,gBAAgB,IAAI,MAAM,KAAK,kBAAkB,EAAE,CAAC;4BAC/D,IAAI,CAAC,GAAG;gCACJ,OAAO,IAAI,CAAC;4BAChB,OAAO;gCACH,GAAG,EAAE,gBAAgB;gCACrB,GAAG;6BACN,CAAA;wBACL,CAAC;wBACD,OAAO,IAAI,CAAC;oBAChB,CAAC;iBACJ,CAAC,CAAC;YACP,CAAC,CAAC;YAEF,MAAM,IAAA,qDAA2B,EAAC,gBAAgB,EAAE,EAAE,WAAW,CAAC,CAAC;YAEnE,8CAA8C;YAC9C,qCAAqC;YACrC,MAAM,cAAc,GAAG,IAAI,GAAG,EAAqC,CAAC;YACpE,gGAAgG;YAChG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,IAAA,uCAAiB,EAAC,cAAc,EAAE,WAAW,CAAC,CAAC,CAAC;YAEjG,IAAI,IAAqC,CAAC;YAC1C,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,KAAK,EAAE,IAAY,EAAE,EAAE;gBACtC,IAAI,KAAK,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBACrC,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC;YACrB,CAAC,CAAC;YAEF,MAAM,IAAI,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;YACtC,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;YAE/B,QAAQ,CAAC,OAAO,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE;gBACnC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAClC,CAAC,CAAA;YAED,MAAM,eAAe,GAAiB,QAAQ,CAAC,eAAe,CAAC;YAE/D,QAAQ,CAAC,IAAI,GAAG,CAAC,OAAO,EAAE,EAAE;gBACxB,IAAI,aAA4B,CAAC;gBACjC,IAAI,YAAgE,CAAC;gBACrE,IAAI,OAAO,EAAE,OAAO,EAAE,CAAC;oBACnB,MAAM,QAAQ,GAAG,IAAA,qCAAsB,GAAE,CAAC;oBAC1C,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;oBAC9C,IAAI,CAAC,OAAO;wBACR,MAAM,IAAI,KAAK,CAAC,kBAAkB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;oBAC1D,aAAa,GAAG,OAAO,CAAC,YAAY,EAAE,QAAQ,EAAE;wBAC5C,WAAW;wBACX,GAAG,EAAE,OAAO,CAAC,GAAG;wBAChB,WAAW,EAAE,SAAS;wBACtB,OAAO;wBACP,YAAY;wBACZ,OAAO;qBACV,EAAE,SAAS,CAAC,CAAC;oBAEd,IAAI,aAAa,YAAY,yCAAkB,EAAE,CAAC;wBAC9C,YAAY,GAAG,aAAa,CAAC,YAAY,CAAC;wBAC1C,MAAM,OAAO,GAAG,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;wBACxF,IAAA,kCAAiB,EAAC,YAAY,EAAE,OAAO,CAAC,CAAC;oBAC7C,CAAC;gBACL,CAAC;qBACI,CAAC;oBACF,4HAA4H;oBAC5H,MAAM,iBAAiB,GAAG,IAAI,wBAAc,CAAC,cAAc,EAAE,CAAC;oBAE9D,MAAM,GAAG,GAAG,IAAI,qCAAgB,CAAC,YAAY,EAAE,QAAQ,EAAE;wBACrD,WAAW;wBACX,GAAG,EAAE,OAAO,CAAC,GAAG;wBAChB,WAAW,EAAE,SAAS;wBACtB,OAAO;wBACP,YAAY;wBACZ,OAAO;qBACV,EAAE;wBACC,IAAI,EAAE,OAAO,EAAE,IAAI;qBACtB,EAAE;wBACC,kCAAkC;wBAClC,cAAc,EAAE,iBAAiB,CAAC,KAAK;qBAC1C,EAAE,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;oBAC9B,aAAa,GAAG,GAAG,CAAC;oBACpB,YAAY,GAAG,GAAG,CAAC,MAAM,CAAC;oBAE1B,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;oBAChC,IAAI,cAAc,EAAE,CAAC;wBACjB,kCAAkC;wBAClC,cAAc,CAAC,WAAW,CAAC;4BACvB,IAAI,EAAE,iBAAiB,CAAC,KAAK;4BAC7B,QAAQ;yBACX,EAAE,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;oBAClC,CAAC;yBACI,CAAC;wBACF,wBAAwB,CAAC,iBAAiB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;oBAChE,CAAC;gBACL,CAAC;gBAED,MAAM,MAAM,GAAG,CAAC,KAAK,IAAI,EAAE;oBACvB,MAAM,UAAU,GAAG,IAAI,aAAO,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,oBAAoB,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC;oBACvJ,UAAU,CAAC,MAAM,CAAC,WAAW,GAAG,CAAC,KAAkB,EAAE,EAAE;wBACnD,cAAc,CAAC,GAAG,CAAC,aAAa,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;oBACzD,CAAC,CAAA;oBACD,aAAa,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;oBAEvC,MAAM,aAAc,SAAQ,2BAAc;wBACtC,CAAC,aAAO,CAAC,6BAA6B,CAAC,GAAI,GAAW,CAAC,aAAO,CAAC,6BAA6B,CAAC,CAAC;wBAE9F,UAAU,CAAC,QAAgB,EAAE,OAAgC;4BACzD,MAAM,EAAE,GAAG,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;4BACpD,eAAe,CAAC,WAAW,CAAC,QAAQ,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;4BACnD,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;gCACpB,IAAI,CAAC,KAAK,MAAM;oCACZ,SAAS;gCACb,CAAC,CAAC,WAAW,CAAC,QAAQ,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;4BACzC,CAAC;4BACD,OAAO,KAAK,CAAC,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;wBAC/C,CAAC;qBACJ;oBACD,MAAM,OAAO,GAAG,IAAI,aAAa,CAAC,GAAG,CAAC,CAAC;oBAEvC,MAAM,MAAM,GAAG,MAAM,IAAA,iCAAiB,EAAC,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,aAAa,EAAE,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,cAAc,EAAE,CAAC,CAAC;oBAC/H,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBAClB,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE;wBAC1B,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;wBACjC,OAAO,CAAC,eAAe,EAAE,CAAC;wBAC1B,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;wBACrB,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;oBACzC,CAAC,CAAC,CAAC;oBACH,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE;wBAC1B,UAAU,CAAC,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC;wBACrC,OAAO,CAAC,eAAe,EAAE,CAAC;wBAC1B,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;wBACrB,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;oBACzC,CAAC,CAAC,CAAC;oBAEH,KAAK,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,IAAI,aAAa,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,CAAC;wBAC9D,MAAM,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;oBAC5D,CAAC;oBAED,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;oBAClD,WAAW,CAAC,IAAI,GAAG,IAAI,CAAC;oBACxB,WAAW,CAAC,IAAI,GAAG,OAAO,EAAE,QAAQ,CAAC;oBACrC,OAAO,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,CAAC,CAAA;gBAC3D,CAAC,CAAC,EAAE,CAAC;gBAEL,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC;gBAEzC,MAAM,MAAM,GAAe;oBACvB,EAAE,CAAC,KAAa,EAAE,QAAkC;wBAChD,OAAO,aAAa,CAAC,EAAE,CAAC,KAAY,EAAE,QAAQ,CAAC,CAAC;oBACpD,CAAC;oBACD,SAAS,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE;oBACrC,cAAc,CAAC,KAAK,EAAE,QAAQ;wBAC1B,OAAO,aAAa,CAAC,cAAc,CAAC,KAAY,EAAE,QAAQ,CAAC,CAAC;oBAChE,CAAC;oBACD,YAAY;iBACf,CAAC;gBACF,OAAO;oBACH,MAAM;oBACN,MAAM;iBACT,CAAC;YACN,CAAC,CAAA;YAED,IAAI,CAAC;gBACD,MAAM,QAAQ,GAAG,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,kBAAkB,CAAC;gBAC3E,IAAA,yBAAS,EAAC,IAAI,EAAE,MAAM,EAAE,wBAAwB,EAAE,SAAS,EAAE,CAAC,QAAQ,CAAC,IAAI,QAAQ,EAAE,MAAM,CAAC,CAAC;gBAE7F,IAAI,UAAU,EAAE,IAAI,EAAE,CAAC;oBACnB,uCAAuC;oBACvC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;oBAC1B,MAAM,MAAM,GAAG,MAAM,IAAI,EAAE,CAAC;oBAC5B,MAAM,CAAC,aAAO,CAAC,mCAAmC,CAAC,GAAG,IAAI,CAAC;oBAC3D,OAAO,MAAM,CAAC;gBAClB,CAAC;gBAED,aAAa,EAAE,GAAG,CAAC,eAAe,CAAC,CAAC;gBACpC,IAAI,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC;gBACrC,0DAA0D;gBAC1D,uBAAuB;gBACvB,IAAI,cAAc,CAAC,QAAQ,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;oBAC9C,cAAc,GAAG,IAAI,cAAc,EAAE,CAAC;gBAC1C,IAAI,OAAO,cAAc,KAAK,UAAU;oBACpC,cAAc,GAAG,MAAM,cAAc,EAAE,CAAC;gBAE5C,QAAQ,GAAG,IAAA,8BAAgB,EAAC,QAAQ,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;gBAC9D,2BAA2B,CAAC,QAAQ,CAAC,CAAC;gBAEtC,OAAO,cAAc,CAAC;YAC1B,CAAC;YACD,OAAO,CAAC,EAAE,CAAC;gBACP,aAAa,EAAE,KAAK,CAAC,wBAAwB,EAAE,CAAC,CAAC,CAAC;gBAClD,MAAM,CAAC,CAAC;YACZ,CAAC;QACL,CAAC;KACJ,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;QACf,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC;QACvC,aAAa,GAAG,QAAQ,CAAC,aAAkC,CAAC;IAChE,CAAC,CAAC,CAAC;IAEH,OAAO,IAAI,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"plugin-remote-worker.js","sourceRoot":"","sources":["../../src/plugin/plugin-remote-worker.ts"],"names":[],"mappings":"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"}
package/dist/rpc.js CHANGED
@@ -485,9 +485,8 @@ class RpcPeer {
485
485
  return ret;
486
486
  }
487
487
  this.onProxyTypeSerialization.get(__remote_constructor_name)?.(value);
488
- const { proxyId: __remote_proxy_id, properties: __remote_proxy_props, } = this.onProxySerialization
489
- ? this.onProxySerialization(value)
490
- : {
488
+ const { proxyId: __remote_proxy_id, properties: __remote_proxy_props, } = this.onProxySerialization?.(value)
489
+ || {
491
490
  proxyId: RpcPeer.generateId(),
492
491
  properties: RpcPeer.prepareProxyProperties(value),
493
492
  };
package/dist/rpc.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"rpc.js","sourceRoot":"","sources":["../src/rpc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rpc.js","sourceRoot":"","sources":["../src/rpc.ts"],"names":[],"mappings":"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"}
@@ -14,7 +14,7 @@ function start(mainFilename) {
14
14
  const pluginId = process.argv[3];
15
15
  module.paths.push((0, plugin_npm_dependencies_1.getPluginNodePath)(pluginId));
16
16
  if ((0, node_fork_worker_1.isNodePluginThreadProcess)()) {
17
- console.log('starting thread', pluginId);
17
+ console.log('starting thread', pluginId, process.pid, worker_threads_1.default.threadId);
18
18
  const { port } = worker_threads_1.default.workerData;
19
19
  const peer = (0, plugin_remote_worker_1.startPluginRemote)(mainFilename, pluginId, (message, reject, serializationContext) => node_thread_worker_1.NodeThreadWorker.send(message, port, reject, serializationContext));
20
20
  node_thread_worker_1.NodeThreadWorker.setupRpcPeer(peer, port);
@@ -28,7 +28,10 @@ function start(mainFilename) {
28
28
  });
29
29
  }
30
30
  else {
31
- console.log('starting plugin', pluginId);
31
+ if ((0, node_fork_worker_1.isNodePluginForkProcess)())
32
+ console.log('starting fork', pluginId, process.pid);
33
+ else
34
+ console.log('starting plugin', pluginId, process.pid);
32
35
  const peer = (0, plugin_remote_worker_1.startPluginRemote)(mainFilename, process.argv[3], (message, reject, serializationContext) => process.send(message, serializationContext?.sendHandle, {
33
36
  // what happened to this argument?
34
37
  // swallowErrors: !reject,
@@ -1 +1 @@
1
- {"version":3,"file":"scrypted-plugin-main.js","sourceRoot":"","sources":["../src/scrypted-plugin-main.ts"],"names":[],"mappings":";;;;;AAAA,8CAAsB;AACtB,oEAA4C;AAC5C,8EAAqE;AACrE,wEAAkE;AAClE,kEAAsE;AAEtE,4EAAuE;AACvE,wEAA8E;AAE9E,SAAS,KAAK,CAAC,YAAoB;IAC/B,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAA,2CAAiB,EAAC,QAAQ,CAAC,CAAC,CAAC;IAE/C,IAAI,IAAA,4CAAyB,GAAE,EAAE,CAAC;QAC9B,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC;QACzC,MAAM,EAAE,IAAI,EAAE,GAAG,wBAAc,CAAC,UAAkD,CAAC;QACnF,MAAM,IAAI,GAAG,IAAA,wCAAiB,EAAC,YAAY,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,oBAAoB,EAAE,EAAE,CAAC,qCAAgB,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC;QACtK,qCAAgB,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC,CAAC,EAAE;YACxB,OAAO,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;YAClC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YAClB,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;YAC7B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC,CAAC,CAAC;IACP,CAAC;SACI,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC;QACzC,MAAM,IAAI,GAAG,IAAA,wCAAiB,EAAC,YAAY,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,oBAAoB,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,oBAAoB,EAAE,UAAU,EAAE;QAC7J,kCAAkC;QAClC,0BAA0B;SAC7B,EAAE,CAAC,CAAC,EAAE;YACH,IAAI,CAAC;gBACD,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC,CAAC,CAAC,CAAC;QAEJ,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACjD,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACrD,IAAI,CAAC,aAAa,CAAC,aAAG,CAAC,MAAM,EAAE,aAAG,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,4CAAwB,EAAE,CAAC,CAAC;QAChF,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,OAAqB,CAAC,CAAC,CAAC;QAC5E,OAAO,CAAC,EAAE,CAAC,YAAY,EAAE,GAAG,EAAE;YAC1B,OAAO,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;YAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC,CAAC,CAAC;IACP,CAAC;AACL,CAAC;AAED,kBAAe,KAAK,CAAC"}
1
+ {"version":3,"file":"scrypted-plugin-main.js","sourceRoot":"","sources":["../src/scrypted-plugin-main.ts"],"names":[],"mappings":";;;;;AAAA,8CAAsB;AACtB,oEAA4C;AAC5C,8EAAqE;AACrE,wEAAkE;AAClE,kEAAsE;AAEtE,4EAAuE;AACvE,wEAAuG;AAEvG,SAAS,KAAK,CAAC,YAAoB;IAC/B,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAA,2CAAiB,EAAC,QAAQ,CAAC,CAAC,CAAC;IAE/C,IAAI,IAAA,4CAAyB,GAAE,EAAE,CAAC;QAC9B,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,QAAQ,EAAE,OAAO,CAAC,GAAG,EAAE,wBAAc,CAAC,QAAQ,CAAC,CAAC;QAC/E,MAAM,EAAE,IAAI,EAAE,GAAG,wBAAc,CAAC,UAAkD,CAAC;QACnF,MAAM,IAAI,GAAG,IAAA,wCAAiB,EAAC,YAAY,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,oBAAoB,EAAE,EAAE,CAAC,qCAAgB,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC;QACtK,qCAAgB,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC,CAAC,EAAE;YACxB,OAAO,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;YAClC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YAClB,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;YAC7B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC,CAAC,CAAC;IACP,CAAC;SACI,CAAC;QACF,IAAI,IAAA,0CAAuB,GAAE;YACzB,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;;YAEpD,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;QAC1D,MAAM,IAAI,GAAG,IAAA,wCAAiB,EAAC,YAAY,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,oBAAoB,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,oBAAoB,EAAE,UAAU,EAAE;QAC7J,kCAAkC;QAClC,0BAA0B;SAC7B,EAAE,CAAC,CAAC,EAAE;YACH,IAAI,CAAC;gBACD,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC,CAAC,CAAC,CAAC;QAEJ,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACjD,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACrD,IAAI,CAAC,aAAa,CAAC,aAAG,CAAC,MAAM,EAAE,aAAG,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,4CAAwB,EAAE,CAAC,CAAC;QAChF,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,OAAqB,CAAC,CAAC,CAAC;QAC5E,OAAO,CAAC,EAAE,CAAC,YAAY,EAAE,GAAG,EAAE;YAC1B,OAAO,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;YAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC,CAAC,CAAC;IACP,CAAC;AACL,CAAC;AAED,kBAAe,KAAK,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@scrypted/server",
3
- "version": "0.116.0",
3
+ "version": "0.117.1",
4
4
  "description": "",
5
5
  "dependencies": {
6
6
  "@scrypted/ffmpeg-static": "^6.1.0-build1",
@@ -601,21 +601,24 @@ class PluginRemote:
601
601
  return clusterPeerPromise
602
602
 
603
603
  async def connectClusterPeer():
604
- reader, writer = await asyncio.open_connection(address, port)
605
- sourceAddress, sourcePort = writer.get_extra_info("sockname")
606
- if (
607
- sourceAddress != SCRYPTED_CLUSTER_ADDRESS
608
- and sourceAddress != "127.0.0.1"
609
- ):
610
- print("source address mismatch", sourceAddress)
611
- sourceKey = getClusterPeerKey(sourceAddress, sourcePort)
612
- rpcTransport = rpc_reader.RpcStreamTransport(reader, writer)
613
- clusterPeer, peerReadLoop = await rpc_reader.prepare_peer_readloop(
614
- self.loop, rpcTransport
615
- )
616
- clusterPeer.onProxySerialization = lambda value: onProxySerialization(
617
- value, sourceKey
618
- )
604
+ try:
605
+ reader, writer = await asyncio.open_connection(address, port)
606
+ sourceAddress, sourcePort = writer.get_extra_info("sockname")
607
+ if (
608
+ sourceAddress != SCRYPTED_CLUSTER_ADDRESS
609
+ and sourceAddress != "127.0.0.1"
610
+ ):
611
+ print("source address mismatch", sourceAddress)
612
+ rpcTransport = rpc_reader.RpcStreamTransport(reader, writer)
613
+ clusterPeer, peerReadLoop = await rpc_reader.prepare_peer_readloop(
614
+ self.loop, rpcTransport
615
+ )
616
+ clusterPeer.onProxySerialization = lambda value: onProxySerialization(
617
+ value, clusterPeerKey
618
+ )
619
+ except:
620
+ clusterPeers.pop(clusterPeerKey)
621
+ raise
619
622
 
620
623
  async def run_loop():
621
624
  try:
@@ -116,7 +116,7 @@ export function startPluginRemote(mainFilename: string, pluginId: string, peerSe
116
116
 
117
117
  // ensure globally stable proxyIds.
118
118
  // worker threads will embed their pid and tid in the proxy id for cross worker fast path.
119
- const proxyId = clusterEntry?.proxyId || (worker_threads.isMainThread ? RpcPeer.generateId() : `n-${process.pid}-${worker_threads.threadId}-${RpcPeer.generateId()}`);
119
+ const proxyId = clusterEntry?.proxyId || `n-${process.pid}-${worker_threads.threadId}-${RpcPeer.generateId()}`;
120
120
 
121
121
  // if the cluster entry already exists, check if it belongs to this node.
122
122
  // if it belongs to this node, the entry must also be for this peer.
@@ -148,7 +148,14 @@ export function startPluginRemote(mainFilename: string, pluginId: string, peerSe
148
148
  const sourcePeer = sourceKey
149
149
  ? await clusterPeers.get(sourceKey)
150
150
  : peer;
151
- return sourcePeer?.localProxyMap.get(id);
151
+ if (!sourcePeer)
152
+ console.error('source peer not found', sourceKey);
153
+ const ret = sourcePeer?.localProxyMap.get(id);
154
+ if (!ret) {
155
+ console.error('source key not found', sourceKey, id);
156
+ return;
157
+ }
158
+ return ret;
152
159
  }
153
160
 
154
161
  // all cluster clients, incoming and outgoing, connect with random ports which can be used as peer ids
@@ -161,10 +168,10 @@ export function startPluginRemote(mainFilename: string, pluginId: string, peerSe
161
168
  }
162
169
 
163
170
  const clusterRpcServer = net.createServer(client => {
164
- const clusterPeer = createDuplexRpcPeer(peer.selfName, 'cluster-client', client, client);
165
171
  const clusterPeerAddress = client.remoteAddress;
166
172
  const clusterPeerPort = client.remotePort;
167
173
  const clusterPeerKey = getClusterPeerKey(clusterPeerAddress, clusterPeerPort);
174
+ const clusterPeer = createDuplexRpcPeer(peer.selfName, clusterPeerKey, client, client);
168
175
  // the listening peer sourceKey (client address/port) is used by the OTHER peer (the client)
169
176
  // to determine if it is already connected to THIS peer (the server).
170
177
  clusterPeer.onProxySerialization = (value) => onProxySerialization(value, clusterPeerKey);
@@ -203,16 +210,12 @@ export function startPluginRemote(mainFilename: string, pluginId: string, peerSe
203
210
 
204
211
  try {
205
212
  await once(socket, 'connect');
206
-
207
- // this connecting peer sourceKey (server address/port) is used by the OTHER peer (the server)
208
- // to determine if it is already connected to THIS peer (the client).
209
- const { address: sourceAddress, port: sourcePort } = (socket.address() as net.AddressInfo);
213
+ const { address: sourceAddress } = (socket.address() as net.AddressInfo);
210
214
  if (sourceAddress !== SCRYPTED_CLUSTER_ADDRESS && sourceAddress !== '127.0.0.1')
211
215
  console.warn("source address mismatch", sourceAddress);
212
- const sourcePeerKey = getClusterPeerKey(sourceAddress, sourcePort);
213
216
 
214
- const clusterPeer = createDuplexRpcPeer(peer.selfName, 'cluster-server', socket, socket);
215
- clusterPeer.onProxySerialization = (value) => onProxySerialization(value, sourcePeerKey);
217
+ const clusterPeer = createDuplexRpcPeer(peer.selfName, clusterPeerKey, socket, socket);
218
+ clusterPeer.onProxySerialization = (value) => onProxySerialization(value, clusterPeerKey);
216
219
  return clusterPeer;
217
220
  }
218
221
  catch (e) {
@@ -239,30 +242,6 @@ export function startPluginRemote(mainFilename: string, pluginId: string, peerSe
239
242
  const tidChannels = new Map<number, Deferred<worker_threads.MessagePort>>();
240
243
  const tidPeers = new Map<number, Promise<RpcPeer>>();
241
244
 
242
- function finishTidPeerConnection(tid: number, port: worker_threads.MessagePort) {
243
- const threadPeer = NodeThreadWorker.createRpcPeer(peer.selfName, 'thread-server', port);
244
- // this connecting peer sourceKey (thread id) is used by the OTHER peer (the server)
245
- // to determine if it is already connected to THIS peer (the client).
246
- const threadPeerKey = `thread:${worker_threads.threadId}-${tid}`;
247
- threadPeer.onProxySerialization = value => onProxySerialization(value, threadPeerKey);
248
-
249
- const connectRPCObject: ConnectRPCObject = async (o) => {
250
- const sha256 = computeClusterObjectHash(o, clusterSecret);
251
- if (sha256 !== o.sha256)
252
- throw new Error('secret incorrect');
253
- return resolveObject(o.proxyId, o.sourceKey);
254
- }
255
- threadPeer.params['connectRPCObject'] = connectRPCObject;
256
- function cleanup(message: string) {
257
- tidChannels.delete(tid);
258
- tidPeers.delete(tid);
259
- threadPeer.kill(message);
260
- }
261
- port.on('close', () => cleanup('connection closed.'));
262
- port.on('messageerror', () => cleanup('message error.'));
263
- return threadPeer;
264
- }
265
-
266
245
  function connectTidPeer(tid: number) {
267
246
  let peerPromise = tidPeers.get(tid);
268
247
  if (peerPromise)
@@ -281,17 +260,35 @@ export function startPluginRemote(mainFilename: string, pluginId: string, peerSe
281
260
  }
282
261
  }
283
262
 
284
- function cleanup() {
285
- clusterPeers.delete(threadPeerKey);
263
+ const threadPeerKey = `thread:${tid}`;
264
+ function peerCleanup() {
286
265
  clusterPeers.delete(threadPeerKey);
287
266
  }
288
267
  peerPromise = tidDeferred.promise.then(port => {
289
- port.on('close', () => cleanup());
290
- port.on('messageerror', () => cleanup());
291
- return finishTidPeerConnection(tid, port);
268
+ port.on('close', () => peerCleanup());
269
+ port.on('messageerror', () => peerCleanup());
270
+
271
+ const threadPeer = NodeThreadWorker.createRpcPeer(peer.selfName, threadPeerKey, port);
272
+ threadPeer.onProxySerialization = value => onProxySerialization(value, threadPeerKey);
273
+
274
+ const connectRPCObject: ConnectRPCObject = async (o) => {
275
+ const sha256 = computeClusterObjectHash(o, clusterSecret);
276
+ if (sha256 !== o.sha256)
277
+ throw new Error('secret incorrect');
278
+ return resolveObject(o.proxyId, o.sourceKey);
279
+ }
280
+ threadPeer.params['connectRPCObject'] = connectRPCObject;
281
+
282
+ function cleanup(message: string) {
283
+ tidChannels.delete(tid);
284
+ tidPeers.delete(tid);
285
+ threadPeer.kill(message);
286
+ }
287
+ port.on('close', () => cleanup('connection closed.'));
288
+ port.on('messageerror', () => cleanup('message error.'));
289
+ return threadPeer;
292
290
  });
293
- peerPromise.catch(() => cleanup());
294
- const threadPeerKey = `thread:${worker_threads.threadId}-${tid}`;
291
+ peerPromise.catch(() => peerCleanup());
295
292
  clusterPeers.set(threadPeerKey, peerPromise);
296
293
  tidPeers.set(tid, peerPromise);
297
294
 
@@ -414,7 +411,7 @@ export function startPluginRemote(mainFilename: string, pluginId: string, peerSe
414
411
  return newValue;
415
412
  }
416
413
  catch (e) {
417
- console.error('failure rpc', e);
414
+ console.error('failure rpc', clusterObject, e);
418
415
  return value;
419
416
  }
420
417
  }
package/src/rpc.ts CHANGED
@@ -442,7 +442,7 @@ export class RpcPeer {
442
442
  result.reject(error);
443
443
  }
444
444
  for (const y of this.yieldedAsyncIterators) {
445
- y.throw(error).catch(() => {});
445
+ y.throw(error).catch(() => { });
446
446
  }
447
447
  this.yieldedAsyncIterators.clear();
448
448
  this.pendingResults = Object.freeze({});
@@ -619,12 +619,11 @@ export class RpcPeer {
619
619
  const {
620
620
  proxyId: __remote_proxy_id,
621
621
  properties: __remote_proxy_props,
622
- } = this.onProxySerialization
623
- ? this.onProxySerialization(value)
624
- : {
625
- proxyId: RpcPeer.generateId(),
626
- properties: RpcPeer.prepareProxyProperties(value),
627
- };
622
+ } = this.onProxySerialization?.(value)
623
+ || {
624
+ proxyId: RpcPeer.generateId(),
625
+ properties: RpcPeer.prepareProxyProperties(value),
626
+ };
628
627
 
629
628
  proxiedEntry = {
630
629
  id: __remote_proxy_id,
@@ -742,7 +741,7 @@ export class RpcPeer {
742
741
  }
743
742
  else {
744
743
  if (Object.isFrozen(this.pendingResults)) {
745
- (target as AsyncGenerator).throw(new RPCResultError(this, 'RpcPeer has been killed (yield)')).catch(() => {});
744
+ (target as AsyncGenerator).throw(new RPCResultError(this, 'RpcPeer has been killed (yield)')).catch(() => { });
746
745
  }
747
746
  else {
748
747
  this.yieldedAsyncIterators.add(target);
@@ -5,14 +5,14 @@ import { startPluginRemote } from "./plugin/plugin-remote-worker";
5
5
  import { SidebandSocketSerializer } from "./plugin/socket-serializer";
6
6
  import { RpcMessage } from "./rpc";
7
7
  import { NodeThreadWorker } from './plugin/runtime/node-thread-worker';
8
- import { isNodePluginThreadProcess } from './plugin/runtime/node-fork-worker';
8
+ import { isNodePluginForkProcess, isNodePluginThreadProcess } from './plugin/runtime/node-fork-worker';
9
9
 
10
10
  function start(mainFilename: string) {
11
11
  const pluginId = process.argv[3];
12
12
  module.paths.push(getPluginNodePath(pluginId));
13
13
 
14
14
  if (isNodePluginThreadProcess()) {
15
- console.log('starting thread', pluginId);
15
+ console.log('starting thread', pluginId, process.pid, worker_threads.threadId);
16
16
  const { port } = worker_threads.workerData as { port: worker_threads.MessagePort };
17
17
  const peer = startPluginRemote(mainFilename, pluginId, (message, reject, serializationContext) => NodeThreadWorker.send(message, port, reject, serializationContext));
18
18
  NodeThreadWorker.setupRpcPeer(peer, port);
@@ -26,7 +26,10 @@ function start(mainFilename: string) {
26
26
  });
27
27
  }
28
28
  else {
29
- console.log('starting plugin', pluginId);
29
+ if (isNodePluginForkProcess())
30
+ console.log('starting fork', pluginId, process.pid);
31
+ else
32
+ console.log('starting plugin', pluginId, process.pid);
30
33
  const peer = startPluginRemote(mainFilename, process.argv[3], (message, reject, serializationContext) => process.send(message, serializationContext?.sendHandle, {
31
34
  // what happened to this argument?
32
35
  // swallowErrors: !reject,