@streamr/trackerless-network 100.0.0-testnet-one.3 → 100.0.0-testnet-two.0

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.
Files changed (125) hide show
  1. package/dist/package.json +7 -7
  2. package/dist/src/NetworkStack.d.ts +1 -5
  3. package/dist/src/NetworkStack.js +1 -3
  4. package/dist/src/NetworkStack.js.map +1 -1
  5. package/dist/src/logic/DeliveryRpcLocal.d.ts +1 -1
  6. package/dist/src/logic/DeliveryRpcLocal.js +3 -3
  7. package/dist/src/logic/DeliveryRpcLocal.js.map +1 -1
  8. package/dist/src/logic/DeliveryRpcRemote.d.ts +3 -3
  9. package/dist/src/logic/DeliveryRpcRemote.js +3 -2
  10. package/dist/src/logic/DeliveryRpcRemote.js.map +1 -1
  11. package/dist/src/logic/EntryPointDiscovery.d.ts +3 -0
  12. package/dist/src/logic/EntryPointDiscovery.js +11 -5
  13. package/dist/src/logic/EntryPointDiscovery.js.map +1 -1
  14. package/dist/src/logic/RandomGraphNode.d.ts +10 -8
  15. package/dist/src/logic/RandomGraphNode.js +23 -17
  16. package/dist/src/logic/RandomGraphNode.js.map +1 -1
  17. package/dist/src/logic/StreamrNode.js +13 -4
  18. package/dist/src/logic/StreamrNode.js.map +1 -1
  19. package/dist/src/logic/formStreamPartDeliveryServiceId.d.ts +2 -1
  20. package/dist/src/logic/formStreamPartDeliveryServiceId.js.map +1 -1
  21. package/dist/src/logic/inspect/Inspector.d.ts +5 -11
  22. package/dist/src/logic/inspect/Inspector.js +2 -3
  23. package/dist/src/logic/inspect/Inspector.js.map +1 -1
  24. package/dist/src/logic/neighbor-discovery/HandshakeRpcLocal.d.ts +3 -3
  25. package/dist/src/logic/neighbor-discovery/HandshakeRpcLocal.js +39 -13
  26. package/dist/src/logic/neighbor-discovery/HandshakeRpcLocal.js.map +1 -1
  27. package/dist/src/logic/neighbor-discovery/HandshakeRpcRemote.d.ts +5 -3
  28. package/dist/src/logic/neighbor-discovery/HandshakeRpcRemote.js +18 -8
  29. package/dist/src/logic/neighbor-discovery/HandshakeRpcRemote.js.map +1 -1
  30. package/dist/src/logic/neighbor-discovery/Handshaker.d.ts +1 -6
  31. package/dist/src/logic/neighbor-discovery/Handshaker.js +6 -6
  32. package/dist/src/logic/neighbor-discovery/Handshaker.js.map +1 -1
  33. package/dist/src/logic/neighbor-discovery/NeighborFinder.d.ts +1 -6
  34. package/dist/src/logic/neighbor-discovery/NeighborFinder.js.map +1 -1
  35. package/dist/src/logic/neighbor-discovery/NeighborUpdateManager.d.ts +3 -8
  36. package/dist/src/logic/neighbor-discovery/NeighborUpdateManager.js +1 -3
  37. package/dist/src/logic/neighbor-discovery/NeighborUpdateManager.js.map +1 -1
  38. package/dist/src/logic/neighbor-discovery/NeighborUpdateRpcLocal.d.ts +2 -2
  39. package/dist/src/logic/neighbor-discovery/NeighborUpdateRpcLocal.js +1 -2
  40. package/dist/src/logic/neighbor-discovery/NeighborUpdateRpcLocal.js.map +1 -1
  41. package/dist/src/logic/neighbor-discovery/NeighborUpdateRpcRemote.d.ts +2 -2
  42. package/dist/src/logic/neighbor-discovery/NeighborUpdateRpcRemote.js.map +1 -1
  43. package/dist/src/logic/proxy/ProxyClient.d.ts +4 -1
  44. package/dist/src/logic/proxy/ProxyClient.js +7 -6
  45. package/dist/src/logic/proxy/ProxyClient.js.map +1 -1
  46. package/dist/src/logic/proxy/ProxyConnectionRpcLocal.js +2 -3
  47. package/dist/src/logic/proxy/ProxyConnectionRpcLocal.js.map +1 -1
  48. package/dist/src/logic/proxy/ProxyConnectionRpcRemote.d.ts +2 -2
  49. package/dist/src/logic/proxy/ProxyConnectionRpcRemote.js.map +1 -1
  50. package/dist/src/logic/temporary-connection/TemporaryConnectionRpcLocal.js +2 -2
  51. package/dist/src/logic/temporary-connection/TemporaryConnectionRpcLocal.js.map +1 -1
  52. package/dist/src/logic/temporary-connection/TemporaryConnectionRpcRemote.d.ts +2 -2
  53. package/dist/src/logic/temporary-connection/TemporaryConnectionRpcRemote.js.map +1 -1
  54. package/dist/src/proto/packages/dht/protos/DhtRpc.client.d.ts +21 -22
  55. package/dist/src/proto/packages/dht/protos/DhtRpc.client.js +18 -18
  56. package/dist/src/proto/packages/dht/protos/DhtRpc.client.js.map +1 -1
  57. package/dist/src/proto/packages/dht/protos/DhtRpc.d.ts +36 -60
  58. package/dist/src/proto/packages/dht/protos/DhtRpc.js +34 -53
  59. package/dist/src/proto/packages/dht/protos/DhtRpc.js.map +1 -1
  60. package/dist/src/proto/packages/dht/protos/DhtRpc.server.d.ts +11 -12
  61. package/dist/src/proto/packages/trackerless-network/protos/NetworkRpc.client.d.ts +6 -5
  62. package/dist/src/proto/packages/trackerless-network/protos/NetworkRpc.client.js +2 -2
  63. package/dist/src/proto/packages/trackerless-network/protos/NetworkRpc.client.js.map +1 -1
  64. package/dist/src/proto/packages/trackerless-network/protos/NetworkRpc.d.ts +26 -10
  65. package/dist/src/proto/packages/trackerless-network/protos/NetworkRpc.js +21 -9
  66. package/dist/src/proto/packages/trackerless-network/protos/NetworkRpc.js.map +1 -1
  67. package/dist/src/proto/packages/trackerless-network/protos/NetworkRpc.server.d.ts +4 -3
  68. package/dist/test/benchmark/first-message.js +4 -6
  69. package/dist/test/benchmark/first-message.js.map +1 -1
  70. package/dist/test/utils/utils.d.ts +1 -1
  71. package/dist/test/utils/utils.js +8 -7
  72. package/dist/test/utils/utils.js.map +1 -1
  73. package/package.json +7 -7
  74. package/protos/NetworkRpc.proto +8 -4
  75. package/src/NetworkStack.ts +1 -7
  76. package/src/logic/DeliveryRpcLocal.ts +4 -4
  77. package/src/logic/DeliveryRpcRemote.ts +5 -4
  78. package/src/logic/EntryPointDiscovery.ts +10 -6
  79. package/src/logic/RandomGraphNode.ts +38 -25
  80. package/src/logic/StreamrNode.ts +22 -5
  81. package/src/logic/formStreamPartDeliveryServiceId.ts +2 -1
  82. package/src/logic/inspect/Inspector.ts +15 -16
  83. package/src/logic/neighbor-discovery/HandshakeRpcLocal.ts +46 -15
  84. package/src/logic/neighbor-discovery/HandshakeRpcRemote.ts +21 -10
  85. package/src/logic/neighbor-discovery/Handshaker.ts +15 -24
  86. package/src/logic/neighbor-discovery/NeighborFinder.ts +1 -7
  87. package/src/logic/neighbor-discovery/NeighborUpdateManager.ts +10 -12
  88. package/src/logic/neighbor-discovery/NeighborUpdateRpcLocal.ts +4 -4
  89. package/src/logic/neighbor-discovery/NeighborUpdateRpcRemote.ts +2 -2
  90. package/src/logic/proxy/ProxyClient.ts +19 -7
  91. package/src/logic/proxy/ProxyConnectionRpcLocal.ts +3 -3
  92. package/src/logic/proxy/ProxyConnectionRpcRemote.ts +3 -3
  93. package/src/logic/temporary-connection/TemporaryConnectionRpcLocal.ts +3 -2
  94. package/src/logic/temporary-connection/TemporaryConnectionRpcRemote.ts +2 -2
  95. package/src/proto/packages/dht/protos/DhtRpc.client.ts +31 -32
  96. package/src/proto/packages/dht/protos/DhtRpc.server.ts +11 -12
  97. package/src/proto/packages/dht/protos/DhtRpc.ts +49 -80
  98. package/src/proto/packages/trackerless-network/protos/NetworkRpc.client.ts +7 -6
  99. package/src/proto/packages/trackerless-network/protos/NetworkRpc.server.ts +4 -3
  100. package/src/proto/packages/trackerless-network/protos/NetworkRpc.ts +36 -15
  101. package/test/benchmark/first-message.ts +8 -6
  102. package/test/end-to-end/random-graph-with-real-connections.test.ts +10 -5
  103. package/test/end-to-end/webrtc-full-node-network.test.ts +1 -1
  104. package/test/end-to-end/websocket-full-node-network.test.ts +2 -2
  105. package/test/integration/DeliveryRpcRemote.test.ts +3 -3
  106. package/test/integration/HandshakeRpcRemote.test.ts +2 -4
  107. package/test/integration/Handshakes.test.ts +8 -7
  108. package/test/integration/Inspect.test.ts +0 -2
  109. package/test/integration/NeighborUpdateRpcRemote.test.ts +2 -2
  110. package/test/integration/NetworkNode.test.ts +0 -2
  111. package/test/integration/NetworkRpc.test.ts +0 -3
  112. package/test/integration/RandomGraphNode-Layer1Node-Latencies.test.ts +4 -4
  113. package/test/integration/RandomGraphNode-Layer1Node.test.ts +4 -5
  114. package/test/integration/stream-without-default-entrypoints.test.ts +4 -7
  115. package/test/integration/streamEntryPointReplacing.test.ts +94 -0
  116. package/test/unit/DeliveryRpcLocal.test.ts +2 -1
  117. package/test/unit/EntrypointDiscovery.test.ts +5 -2
  118. package/test/unit/HandshakeRpcLocal.test.ts +47 -9
  119. package/test/unit/NodeList.test.ts +10 -12
  120. package/test/unit/ProxyConnectionRpcRemote.test.ts +18 -10
  121. package/test/unit/RandomGraphNode.test.ts +6 -4
  122. package/test/utils/mock/MockHandshaker.ts +3 -2
  123. package/test/utils/mock/MockNeighborFinder.ts +3 -2
  124. package/test/utils/mock/MockNeighborUpdateManager.ts +3 -2
  125. package/test/utils/utils.ts +16 -8
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@streamr/trackerless-network",
3
- "version": "100.0.0-testnet-one.3",
3
+ "version": "100.0.0-testnet-two.0",
4
4
  "description": "Minimal and extendable implementation of the Streamr Network node.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -30,11 +30,11 @@
30
30
  "dependencies": {
31
31
  "@protobuf-ts/runtime": "^2.8.2",
32
32
  "@protobuf-ts/runtime-rpc": "^2.8.2",
33
- "@streamr/dht": "100.0.0-testnet-one.3",
34
- "@streamr/proto-rpc": "100.0.0-testnet-one.3",
35
- "@streamr/protocol": "100.0.0-testnet-one.3",
36
- "@streamr/test-utils": "100.0.0-testnet-one.3",
37
- "@streamr/utils": "100.0.0-testnet-one.3",
33
+ "@streamr/dht": "100.0.0-testnet-two.0",
34
+ "@streamr/proto-rpc": "100.0.0-testnet-two.0",
35
+ "@streamr/protocol": "100.0.0-testnet-two.0",
36
+ "@streamr/test-utils": "100.0.0-testnet-two.0",
37
+ "@streamr/utils": "100.0.0-testnet-two.0",
38
38
  "eventemitter3": "^5.0.0",
39
39
  "lodash": "^4.17.21",
40
40
  "uuid": "^9.0.1",
@@ -42,7 +42,7 @@
42
42
  },
43
43
  "devDependencies": {
44
44
  "@streamr/browser-test-runner": "^0.0.1",
45
- "@types/lodash": "^4.14.201",
45
+ "@types/lodash": "^4.14.202",
46
46
  "@types/uuid": "^9.0.7",
47
47
  "@types/yallist": "^4.0.1",
48
48
  "commander": "^11.1.0",
@@ -1,7 +1,6 @@
1
1
  import { DhtNodeOptions } from '@streamr/dht';
2
2
  import { StreamrNode, StreamrNodeConfig } from './logic/StreamrNode';
3
3
  import { MetricsContext } from '@streamr/utils';
4
- import { EventEmitter } from 'eventemitter3';
5
4
  import { StreamPartID } from '@streamr/protocol';
6
5
  import { StreamMessage } from './proto/packages/trackerless-network/protos/NetworkRpc';
7
6
  import { Layer0Node } from './logic/Layer0Node';
@@ -10,10 +9,7 @@ export interface NetworkOptions {
10
9
  networkNode?: StreamrNodeConfig;
11
10
  metricsContext?: MetricsContext;
12
11
  }
13
- export interface NetworkStackEvents {
14
- stopped: () => void;
15
- }
16
- export declare class NetworkStack extends EventEmitter<NetworkStackEvents> {
12
+ export declare class NetworkStack {
17
13
  private layer0Node?;
18
14
  private streamrNode?;
19
15
  private stopped;
@@ -4,7 +4,6 @@ exports.NetworkStack = void 0;
4
4
  const dht_1 = require("@streamr/dht");
5
5
  const StreamrNode_1 = require("./logic/StreamrNode");
6
6
  const utils_1 = require("@streamr/utils");
7
- const eventemitter3_1 = require("eventemitter3");
8
7
  const protocol_1 = require("@streamr/protocol");
9
8
  const NetworkRpc_1 = require("./proto/packages/trackerless-network/protos/NetworkRpc");
10
9
  const lodash_1 = require("lodash");
@@ -27,9 +26,8 @@ if (typeof window === 'object') {
27
26
  await stopInstances();
28
27
  });
29
28
  }
30
- class NetworkStack extends eventemitter3_1.EventEmitter {
29
+ class NetworkStack {
31
30
  constructor(options) {
32
- super();
33
31
  this.stopped = false;
34
32
  this.options = options;
35
33
  this.metricsContext = options.metricsContext ?? new utils_1.MetricsContext();
@@ -1 +1 @@
1
- {"version":3,"file":"NetworkStack.js","sourceRoot":"","sources":["../../src/NetworkStack.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NetworkStack.js","sourceRoot":"","sources":["../../src/NetworkStack.ts"],"names":[],"mappings":";;;AAAA,sCAAkG;AAClG,qDAAoE;AACpE,0CAAiE;AACjE,gDAA0E;AAC1E,uFAAyH;AAEzH,mCAA6B;AAQ7B,MAAM,SAAS,GAAmB,EAAE,CAAA;AACpC,MAAM,aAAa,GAAG,KAAK,IAAI,EAAE;IAC7B,sGAAsG;IACtG,+CAA+C;IAC/C,MAAM,eAAe,GAAG,CAAC,GAAG,SAAS,CAAC,CAAA;IACtC,MAAM,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;AACzE,CAAC,CAAA;AACD,MAAM,WAAW,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,SAAS,CAAC,CAAA;AAClH,WAAW,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;IAC1B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,IAAI,EAAE;QACzB,MAAM,aAAa,EAAE,CAAA;QACrB,OAAO,CAAC,IAAI,EAAE,CAAA;IAClB,CAAC,CAAC,CAAA;AACN,CAAC,CAAC,CAAA;AAEF,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;IAC5B,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;QACzC,MAAM,aAAa,EAAE,CAAA;IACzB,CAAC,CAAC,CAAA;CACL;AAED,MAAa,YAAY;IAQrB,YAAY,OAAuB;QAJ3B,YAAO,GAAG,KAAK,CAAA;QAKnB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,cAAc,IAAI,IAAI,sBAAc,EAAE,CAAA;QACpE,IAAI,CAAC,UAAU,GAAG,IAAI,aAAO,CAAC;YAC1B,GAAG,OAAO,CAAC,MAAM;YACjB,cAAc,EAAE,IAAI,CAAC,cAAc;SACtC,CAAC,CAAA;QACF,IAAI,CAAC,WAAW,GAAG,IAAI,yBAAW,CAAC;YAC/B,GAAG,OAAO,CAAC,WAAW;YACtB,cAAc,EAAE,IAAI,CAAC,cAAc;SACtC,CAAC,CAAA;QACF,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACxB,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,YAA0B,EAAE,mBAA2D;QACxG,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC,mBAAmB,CAAC,YAAY,CAAC,EAAE;YACzD,MAAM,IAAI,KAAK,CAAC,kBAAkB,YAAY,qCAAqC,CAAC,CAAA;SACvF;QACD,MAAM,IAAI,CAAC,6BAA6B,EAAE,CAAA;QAC1C,IAAI,CAAC,cAAc,EAAE,CAAC,cAAc,CAAC,YAAY,CAAC,CAAA;QAClD,IAAI,mBAAmB,KAAK,SAAS,EAAE;YACnC,MAAM,IAAA,wBAAgB,EAAC,GAAG,EAAE;gBACxB,OAAO,IAAI,CAAC,cAAc,EAAE,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,MAAM,IAAI,mBAAmB,CAAC,QAAQ,CAAA;YAClG,CAAC,EAAE,mBAAmB,CAAC,OAAO,CAAC,CAAA;SAClC;IACL,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,GAAkB;QAC9B,MAAM,YAAY,GAAG,IAAA,yBAAc,EAAC,GAAG,CAAC,SAAU,CAAC,QAAoB,EAAE,GAAG,CAAC,SAAU,CAAC,eAAe,CAAC,CAAA;QACxG,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC,mBAAmB,CAAC,YAAY,EAAE,2BAAc,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,KAAK,8BAAiB,CAAC,OAAO,CAAC,EAAE;YACtI,MAAM,IAAI,KAAK,CAAC,uBAAuB,YAAY,+CAA+C,CAAC,CAAA;SACtG;QACD,6DAA6D;QAC7D,IAAI,CAAC,IAAI,CAAC,WAAY,CAAC,mBAAmB,CAAC,YAAY,CAAC,EAAE;YACtD,MAAM,IAAI,CAAC,6BAA6B,EAAE,CAAA;SAC7C;QACD,IAAI,CAAC,cAAc,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;IACxC,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI;QACrB,MAAM,IAAI,CAAC,UAAW,CAAC,KAAK,EAAE,CAAA;QAC9B,MAAM,iBAAiB,GAAG,IAAI,CAAC,UAAW,CAAC,YAAY,EAAuB,CAAA;QAC9E,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,WAAW,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CACzG,IAAA,6BAAuB,EAAC,UAAU,EAAE,IAAI,CAAC,UAAW,CAAC,sBAAsB,EAAE,CAAC,CACjF,CAAC,EAAE;YACA,MAAM,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;SAClE;aAAM;YACH,IAAI,MAAM,EAAE;gBACR,sFAAsF;gBACtF,MAAM,IAAI,CAAC,6BAA6B,EAAE,CAAA;aAC7C;SACJ;QACD,MAAM,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,UAAW,EAAE,iBAAiB,EAAE,iBAAiB,CAAC,CAAA;IACzF,CAAC;IAEO,KAAK,CAAC,6BAA6B;QACvC,0FAA0F;QAC1F,IAAI,CAAC,IAAI,CAAC,UAAW,CAAC,SAAS,EAAE,EAAE;YAC/B,YAAY,CAAC,KAAK,IAAI,EAAE;gBACpB,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,WAAW,KAAK,SAAS,EAAE;oBAChD,wCAAwC;oBACxC,oFAAoF;oBACpF,8GAA8G;oBAC9G,MAAM,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;iBAClE;YACL,CAAC,CAAC,CAAA;SACL;QACD,MAAM,IAAI,CAAC,UAAW,CAAC,0BAA0B,EAAE,CAAA;IACvD,CAAC;IAED,cAAc;QACV,OAAO,IAAI,CAAC,WAAY,CAAA;IAC5B,CAAC;IAED,aAAa;QACT,OAAO,IAAI,CAAC,UAAW,CAAA;IAC3B,CAAC;IAED,iBAAiB;QACb,OAAO,IAAI,CAAC,cAAc,CAAA;IAC9B,CAAC;IAED,UAAU;QACN,OAAO,IAAI,CAAC,OAAO,CAAA;IACvB,CAAC;IAED,KAAK,CAAC,IAAI;QACN,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACf,IAAI,CAAC,OAAO,GAAG,IAAI,CAAA;YACnB,IAAA,aAAI,EAAC,SAAS,EAAE,IAAI,CAAC,CAAA;YACrB,MAAM,IAAI,CAAC,WAAY,CAAC,OAAO,EAAE,CAAA;YACjC,MAAM,IAAI,CAAC,UAAW,CAAC,IAAI,EAAE,CAAA;YAC7B,IAAI,CAAC,WAAW,GAAG,SAAS,CAAA;YAC5B,IAAI,CAAC,UAAU,GAAG,SAAS,CAAA;SAC9B;IACL,CAAC;CAEJ;AAzGD,oCAyGC"}
@@ -10,7 +10,7 @@ export interface DeliveryRpcLocalConfig {
10
10
  streamPartId: StreamPartID;
11
11
  markAndCheckDuplicate: (messageId: MessageID, previousMessageRef?: MessageRef) => boolean;
12
12
  broadcast: (message: StreamMessage, previousNode?: NodeID) => void;
13
- onLeaveNotice(senderId: NodeID): void;
13
+ onLeaveNotice(senderId: NodeID, isLocalNodeEntryPoint: boolean): void;
14
14
  markForInspection(senderId: NodeID, messageId: MessageID): void;
15
15
  rpcCommunicator: ListeningRpcCommunicator;
16
16
  }
@@ -17,9 +17,9 @@ class DeliveryRpcLocal {
17
17
  }
18
18
  async leaveStreamPartNotice(message, context) {
19
19
  if (message.streamPartId === this.config.streamPartId) {
20
- const senderPeerDescriptor = context.incomingSourceDescriptor;
21
- const senderId = (0, identifiers_1.getNodeIdFromPeerDescriptor)(senderPeerDescriptor);
22
- this.config.onLeaveNotice(senderId);
20
+ const sourcePeerDescriptor = context.incomingSourceDescriptor;
21
+ const sourceId = (0, identifiers_1.getNodeIdFromPeerDescriptor)(sourcePeerDescriptor);
22
+ this.config.onLeaveNotice(sourceId, message.isEntryPoint);
23
23
  }
24
24
  return empty_1.Empty;
25
25
  }
@@ -1 +1 @@
1
- {"version":3,"file":"DeliveryRpcLocal.js","sourceRoot":"","sources":["../../../src/logic/DeliveryRpcLocal.ts"],"names":[],"mappings":";;;AACA,0DAAsD;AAStD,gDAAoE;AAapE,MAAa,gBAAgB;IAIzB,YAAY,MAA8B;QACtC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACxB,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,OAAsB,EAAE,OAA0B;QACtE,MAAM,YAAY,GAAG,IAAA,yCAA2B,EAAE,OAA0B,CAAC,wBAAyB,CAAC,CAAA;QACvG,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,YAAY,EAAE,OAAO,CAAC,SAAU,CAAC,CAAA;QAC/D,IAAI,IAAI,CAAC,MAAM,CAAC,qBAAqB,CAAC,OAAO,CAAC,SAAU,EAAE,OAAO,CAAC,kBAAkB,CAAC,EAAE;YACnF,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,YAAY,CAAC,CAAA;SAC/C;QACD,OAAO,aAAK,CAAA;IAChB,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,OAA8B,EAAE,OAA0B;QAClF,IAAI,OAAO,CAAC,YAAY,KAAK,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE;YACnD,MAAM,oBAAoB,GAAI,OAA0B,CAAC,wBAAyB,CAAA;YAClF,MAAM,QAAQ,GAAG,IAAA,yCAA2B,EAAC,oBAAoB,CAAC,CAAA;YAClE,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAA;SACtC;QACD,OAAO,aAAK,CAAA;IAChB,CAAC;CACJ;AAzBD,4CAyBC"}
1
+ {"version":3,"file":"DeliveryRpcLocal.js","sourceRoot":"","sources":["../../../src/logic/DeliveryRpcLocal.ts"],"names":[],"mappings":";;;AACA,0DAAsD;AAStD,gDAAoE;AAapE,MAAa,gBAAgB;IAIzB,YAAY,MAA8B;QACtC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACxB,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,OAAsB,EAAE,OAA0B;QACtE,MAAM,YAAY,GAAG,IAAA,yCAA2B,EAAE,OAA0B,CAAC,wBAAyB,CAAC,CAAA;QACvG,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,YAAY,EAAE,OAAO,CAAC,SAAU,CAAC,CAAA;QAC/D,IAAI,IAAI,CAAC,MAAM,CAAC,qBAAqB,CAAC,OAAO,CAAC,SAAU,EAAE,OAAO,CAAC,kBAAkB,CAAC,EAAE;YACnF,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,YAAY,CAAC,CAAA;SAC/C;QACD,OAAO,aAAK,CAAA;IAChB,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,OAA8B,EAAE,OAA0B;QAClF,IAAI,OAAO,CAAC,YAAY,KAAK,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE;YACnD,MAAM,oBAAoB,GAAI,OAA0B,CAAC,wBAAyB,CAAA;YAClF,MAAM,QAAQ,GAAG,IAAA,yCAA2B,EAAC,oBAAoB,CAAC,CAAA;YAClE,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,YAAY,CAAC,CAAA;SAC5D;QACD,OAAO,aAAK,CAAA;IAChB,CAAC;CACJ;AAzBD,4CAyBC"}
@@ -1,7 +1,7 @@
1
1
  import { RpcRemote } from '@streamr/dht';
2
2
  import { StreamMessage } from '../proto/packages/trackerless-network/protos/NetworkRpc';
3
- import { IDeliveryRpcClient } from '../proto/packages/trackerless-network/protos/NetworkRpc.client';
4
- export declare class DeliveryRpcRemote extends RpcRemote<IDeliveryRpcClient> {
3
+ import { DeliveryRpcClient } from '../proto/packages/trackerless-network/protos/NetworkRpc.client';
4
+ export declare class DeliveryRpcRemote extends RpcRemote<DeliveryRpcClient> {
5
5
  sendStreamMessage(msg: StreamMessage): Promise<void>;
6
- leaveStreamPartNotice(): void;
6
+ leaveStreamPartNotice(isLocalNodeEntryPoint: boolean): void;
7
7
  }
@@ -13,9 +13,10 @@ class DeliveryRpcRemote extends dht_1.RpcRemote {
13
13
  logger.trace('Failed to sendStreamMessage');
14
14
  });
15
15
  }
16
- leaveStreamPartNotice() {
16
+ leaveStreamPartNotice(isLocalNodeEntryPoint) {
17
17
  const notification = {
18
- streamPartId: this.getServiceId()
18
+ streamPartId: this.getServiceId(),
19
+ isEntryPoint: isLocalNodeEntryPoint
19
20
  };
20
21
  const options = this.formDhtRpcOptions({
21
22
  notification: true
@@ -1 +1 @@
1
- {"version":3,"file":"DeliveryRpcRemote.js","sourceRoot":"","sources":["../../../src/logic/DeliveryRpcRemote.ts"],"names":[],"mappings":";;;AAAA,sCAAwC;AACxC,0CAAuC;AAOvC,MAAM,MAAM,GAAG,IAAI,cAAM,CAAC,MAAM,CAAC,CAAA;AAEjC,MAAa,iBAAkB,SAAQ,eAA6B;IAEhE,KAAK,CAAC,iBAAiB,CAAC,GAAkB;QACtC,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC;YACnC,YAAY,EAAE,IAAI;SACrB,CAAC,CAAA;QACF,IAAI,CAAC,SAAS,EAAE,CAAC,iBAAiB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;YACxD,MAAM,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAA;QAC/C,CAAC,CAAC,CAAA;IACN,CAAC;IAED,qBAAqB;QACjB,MAAM,YAAY,GAA0B;YACxC,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE;SACpC,CAAA;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC;YACnC,YAAY,EAAE,IAAI;SACrB,CAAC,CAAA;QACF,IAAI,CAAC,SAAS,EAAE,CAAC,qBAAqB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;YACrE,MAAM,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAA;QACxD,CAAC,CAAC,CAAA;IACN,CAAC;CACJ;AAtBD,8CAsBC"}
1
+ {"version":3,"file":"DeliveryRpcRemote.js","sourceRoot":"","sources":["../../../src/logic/DeliveryRpcRemote.ts"],"names":[],"mappings":";;;AAAA,sCAAwC;AACxC,0CAAuC;AAOvC,MAAM,MAAM,GAAG,IAAI,cAAM,CAAC,MAAM,CAAC,CAAA;AAEjC,MAAa,iBAAkB,SAAQ,eAA4B;IAE/D,KAAK,CAAC,iBAAiB,CAAC,GAAkB;QACtC,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC;YACnC,YAAY,EAAE,IAAI;SACrB,CAAC,CAAA;QACF,IAAI,CAAC,SAAS,EAAE,CAAC,iBAAiB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;YACxD,MAAM,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAA;QAC/C,CAAC,CAAC,CAAA;IACN,CAAC;IAED,qBAAqB,CAAC,qBAA8B;QAChD,MAAM,YAAY,GAA0B;YACxC,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE;YACjC,YAAY,EAAE,qBAAqB;SACtC,CAAA;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC;YACnC,YAAY,EAAE,IAAI;SACrB,CAAC,CAAA;QACF,IAAI,CAAC,SAAS,EAAE,CAAC,qBAAqB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;YACrE,MAAM,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAA;QACxD,CAAC,CAAC,CAAA;IACN,CAAC;CACJ;AAvBD,8CAuBC"}
@@ -7,6 +7,7 @@ interface FindEntryPointsResult {
7
7
  entryPointsFromDht: boolean;
8
8
  discoveredEntryPoints: PeerDescriptor[];
9
9
  }
10
+ export declare const ENTRYPOINT_STORE_LIMIT = 8;
10
11
  export declare const NETWORK_SPLIT_AVOIDANCE_LIMIT = 4;
11
12
  interface EntryPointDiscoveryConfig {
12
13
  streamPartId: StreamPartID;
@@ -22,6 +23,7 @@ export declare class EntryPointDiscovery {
22
23
  private readonly config;
23
24
  private readonly storeInterval;
24
25
  private readonly networkSplitAvoidedNodes;
26
+ private isLocalNodeStoredAsEntryPoint;
25
27
  constructor(config: EntryPointDiscoveryConfig);
26
28
  discoverEntryPointsFromDht(knownEntryPointCount: number): Promise<FindEntryPointsResult>;
27
29
  private discoverEntryPoints;
@@ -30,6 +32,7 @@ export declare class EntryPointDiscovery {
30
32
  private storeSelfAsEntryPoint;
31
33
  private keepSelfAsEntryPoint;
32
34
  private avoidNetworkSplit;
35
+ isLocalNodeEntryPoint(): boolean;
33
36
  destroy(): Promise<void>;
34
37
  }
35
38
  export {};
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.EntryPointDiscovery = exports.NETWORK_SPLIT_AVOIDANCE_LIMIT = exports.streamPartIdToDataKey = void 0;
3
+ exports.EntryPointDiscovery = exports.NETWORK_SPLIT_AVOIDANCE_LIMIT = exports.ENTRYPOINT_STORE_LIMIT = exports.streamPartIdToDataKey = void 0;
4
4
  const dht_1 = require("@streamr/dht");
5
5
  const utils_1 = require("@streamr/utils");
6
6
  const crypto_1 = require("crypto");
@@ -35,11 +35,12 @@ const exponentialRunOff = async (task, description, abortSignal, baseDelay = 500
35
35
  }
36
36
  };
37
37
  const logger = new utils_1.Logger(module);
38
- const ENTRYPOINT_STORE_LIMIT = 8;
38
+ exports.ENTRYPOINT_STORE_LIMIT = 8;
39
39
  exports.NETWORK_SPLIT_AVOIDANCE_LIMIT = 4;
40
40
  class EntryPointDiscovery {
41
41
  constructor(config) {
42
42
  this.networkSplitAvoidedNodes = new Set();
43
+ this.isLocalNodeStoredAsEntryPoint = false;
43
44
  this.config = config;
44
45
  this.abortController = new AbortController();
45
46
  this.storeInterval = this.config.storeInterval ?? 60000;
@@ -87,7 +88,8 @@ class EntryPointDiscovery {
87
88
  return;
88
89
  }
89
90
  const possibleNetworkSplitDetected = this.config.layer1Node.getNumberOfNeighbors() < exports.NETWORK_SPLIT_AVOIDANCE_LIMIT;
90
- if ((currentEntrypointCount < ENTRYPOINT_STORE_LIMIT) || possibleNetworkSplitDetected) {
91
+ if ((currentEntrypointCount < exports.ENTRYPOINT_STORE_LIMIT) || possibleNetworkSplitDetected) {
92
+ this.isLocalNodeStoredAsEntryPoint = true;
91
93
  await this.storeSelfAsEntryPoint();
92
94
  await this.keepSelfAsEntryPoint();
93
95
  }
@@ -111,7 +113,7 @@ class EntryPointDiscovery {
111
113
  logger.trace(`Attempting to keep self as entrypoint for ${this.config.streamPartId}`);
112
114
  try {
113
115
  const discovered = await this.discoverEntryPoints();
114
- if (discovered.length < ENTRYPOINT_STORE_LIMIT
116
+ if (discovered.length < exports.ENTRYPOINT_STORE_LIMIT
115
117
  || discovered.some((peerDescriptor) => (0, dht_1.areEqualPeerDescriptors)(peerDescriptor, this.config.localPeerDescriptor))) {
116
118
  await this.storeSelfAsEntryPoint();
117
119
  }
@@ -128,7 +130,8 @@ class EntryPointDiscovery {
128
130
  if (this.config.layer1Node.getNumberOfNeighbors() < exports.NETWORK_SPLIT_AVOIDANCE_LIMIT) {
129
131
  // Filter out nodes that are not neighbors as those nodes are assumed to be offline
130
132
  const nodesToAvoid = rediscoveredEntrypoints
131
- .filter((peer) => !this.config.layer1Node.getAllNeighborPeerDescriptors().includes(peer))
133
+ .filter((peer) => !this.config.layer1Node.getAllNeighborPeerDescriptors()
134
+ .some((neighbor) => (0, dht_1.areEqualPeerDescriptors)(neighbor, peer)))
132
135
  .map((peer) => (0, identifiers_1.getNodeIdFromPeerDescriptor)(peer));
133
136
  nodesToAvoid.forEach((node) => this.networkSplitAvoidedNodes.add(node));
134
137
  throw new Error(`Network split is still possible`);
@@ -137,6 +140,9 @@ class EntryPointDiscovery {
137
140
  this.networkSplitAvoidedNodes.clear();
138
141
  logger.trace(`Network split avoided`);
139
142
  }
143
+ isLocalNodeEntryPoint() {
144
+ return this.isLocalNodeStoredAsEntryPoint;
145
+ }
140
146
  async destroy() {
141
147
  this.abortController.abort();
142
148
  await this.config.deleteEntryPointData((0, exports.streamPartIdToDataKey)(this.config.streamPartId));
@@ -1 +1 @@
1
- {"version":3,"file":"EntryPointDiscovery.js","sourceRoot":"","sources":["../../../src/logic/EntryPointDiscovery.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EntryPointDiscovery.js","sourceRoot":"","sources":["../../../src/logic/EntryPointDiscovery.ts"],"names":[],"mappings":"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"}
@@ -2,12 +2,12 @@ import { EventEmitter } from 'eventemitter3';
2
2
  import { PeerDescriptor, ListeningRpcCommunicator, ITransport, ConnectionLocker } from '@streamr/dht';
3
3
  import { StreamMessage } from '../proto/packages/trackerless-network/protos/NetworkRpc';
4
4
  import { NodeList } from './NodeList';
5
- import { IHandshaker } from './neighbor-discovery/Handshaker';
5
+ import { Handshaker } from './neighbor-discovery/Handshaker';
6
6
  import { Propagation } from './propagation/Propagation';
7
- import { INeighborFinder } from './neighbor-discovery/NeighborFinder';
8
- import { INeighborUpdateManager } from './neighbor-discovery/NeighborUpdateManager';
7
+ import { NeighborFinder } from './neighbor-discovery/NeighborFinder';
8
+ import { NeighborUpdateManager } from './neighbor-discovery/NeighborUpdateManager';
9
9
  import { ProxyConnectionRpcLocal } from './proxy/ProxyConnectionRpcLocal';
10
- import { IInspector } from './inspect/Inspector';
10
+ import { Inspector } from './inspect/Inspector';
11
11
  import { TemporaryConnectionRpcLocal } from './temporary-connection/TemporaryConnectionRpcLocal';
12
12
  import { NodeID } from '../identifiers';
13
13
  import { Layer1Node } from './Layer1Node';
@@ -15,6 +15,7 @@ import { StreamPartID } from '@streamr/protocol';
15
15
  export interface Events {
16
16
  message: (message: StreamMessage) => void;
17
17
  targetNeighborConnected: (nodeId: NodeID) => void;
18
+ entryPointLeaveDetected: () => void;
18
19
  }
19
20
  export interface StrictRandomGraphNodeConfig {
20
21
  streamPartId: StreamPartID;
@@ -26,14 +27,15 @@ export interface StrictRandomGraphNodeConfig {
26
27
  nearbyNodeView: NodeList;
27
28
  randomNodeView: NodeList;
28
29
  targetNeighbors: NodeList;
29
- handshaker: IHandshaker;
30
- neighborFinder: INeighborFinder;
31
- neighborUpdateManager: INeighborUpdateManager;
30
+ handshaker: Handshaker;
31
+ neighborFinder: NeighborFinder;
32
+ neighborUpdateManager: NeighborUpdateManager;
32
33
  propagation: Propagation;
33
34
  rpcCommunicator: ListeningRpcCommunicator;
34
35
  numOfTargetNeighbors: number;
35
- inspector: IInspector;
36
+ inspector: Inspector;
36
37
  temporaryConnectionRpcLocal: TemporaryConnectionRpcLocal;
38
+ isLocalNodeEntryPoint: () => boolean;
37
39
  proxyConnectionRpcLocal?: ProxyConnectionRpcLocal;
38
40
  rpcRequestTimeout?: number;
39
41
  }
@@ -6,10 +6,10 @@ const NetworkRpc_1 = require("../proto/packages/trackerless-network/protos/Netwo
6
6
  const NetworkRpc_client_1 = require("../proto/packages/trackerless-network/protos/NetworkRpc.client");
7
7
  const DeliveryRpcRemote_1 = require("./DeliveryRpcRemote");
8
8
  const utils_1 = require("@streamr/utils");
9
- const proto_rpc_1 = require("@streamr/proto-rpc");
10
9
  const DeliveryRpcLocal_1 = require("./DeliveryRpcLocal");
11
10
  const utils_2 = require("./utils");
12
11
  const identifiers_1 = require("../identifiers");
12
+ const lodash_1 = require("lodash");
13
13
  const logger = new utils_1.Logger(module);
14
14
  class RandomGraphNode extends eventemitter3_1.EventEmitter {
15
15
  constructor(config) {
@@ -24,19 +24,25 @@ class RandomGraphNode extends eventemitter3_1.EventEmitter {
24
24
  rpcCommunicator: this.config.rpcCommunicator,
25
25
  markAndCheckDuplicate: (msg, prev) => (0, utils_2.markAndCheckDuplicate)(this.duplicateDetectors, msg, prev),
26
26
  broadcast: (message, previousNode) => this.broadcast(message, previousNode),
27
- onLeaveNotice: (senderId) => {
28
- const contact = this.config.nearbyNodeView.get(senderId)
29
- || this.config.randomNodeView.get(senderId)
30
- || this.config.targetNeighbors.get(senderId)
31
- || this.config.proxyConnectionRpcLocal?.getConnection(senderId)?.remote;
27
+ onLeaveNotice: (sourceId, sourceIsStreamEntryPoint) => {
28
+ if (this.abortController.signal.aborted) {
29
+ return;
30
+ }
31
+ const contact = this.config.nearbyNodeView.get(sourceId)
32
+ || this.config.randomNodeView.get(sourceId)
33
+ || this.config.targetNeighbors.get(sourceId)
34
+ || this.config.proxyConnectionRpcLocal?.getConnection(sourceId)?.remote;
32
35
  // TODO: check integrity of notifier?
33
36
  if (contact) {
34
37
  this.config.layer1Node.removeContact(contact.getPeerDescriptor());
35
38
  this.config.targetNeighbors.remove(contact.getPeerDescriptor());
36
39
  this.config.nearbyNodeView.remove(contact.getPeerDescriptor());
37
40
  this.config.connectionLocker.unlockConnection(contact.getPeerDescriptor(), this.config.streamPartId);
38
- this.config.neighborFinder.start([senderId]);
39
- this.config.proxyConnectionRpcLocal?.removeConnection(senderId);
41
+ this.config.neighborFinder.start([sourceId]);
42
+ this.config.proxyConnectionRpcLocal?.removeConnection(sourceId);
43
+ }
44
+ if (sourceIsStreamEntryPoint) {
45
+ this.emit('entryPointLeaveDetected');
40
46
  }
41
47
  },
42
48
  markForInspection: (senderId, messageId) => this.config.inspector.markMessage(senderId, messageId)
@@ -87,19 +93,19 @@ class RandomGraphNode extends eventemitter3_1.EventEmitter {
87
93
  this.updateNearbyNodeView(closestNodes);
88
94
  }
89
95
  updateNearbyNodeView(nodes) {
90
- this.config.nearbyNodeView.replaceAll(Array.from(nodes).map((descriptor) => new DeliveryRpcRemote_1.DeliveryRpcRemote(this.config.localPeerDescriptor, descriptor, this.config.streamPartId, (0, proto_rpc_1.toProtoRpcClient)(new NetworkRpc_client_1.DeliveryRpcClient(this.config.rpcCommunicator.getRpcClientTransport())), this.config.rpcRequestTimeout)));
96
+ this.config.nearbyNodeView.replaceAll(Array.from(nodes).map((descriptor) => new DeliveryRpcRemote_1.DeliveryRpcRemote(this.config.localPeerDescriptor, descriptor, this.config.streamPartId, this.config.rpcCommunicator, NetworkRpc_client_1.DeliveryRpcClient, this.config.rpcRequestTimeout)));
91
97
  for (const descriptor of this.config.layer1Node.getAllNeighborPeerDescriptors()) {
92
98
  if (this.config.nearbyNodeView.size() >= this.config.nodeViewSize) {
93
99
  break;
94
100
  }
95
- this.config.nearbyNodeView.add(new DeliveryRpcRemote_1.DeliveryRpcRemote(this.config.localPeerDescriptor, descriptor, this.config.streamPartId, (0, proto_rpc_1.toProtoRpcClient)(new NetworkRpc_client_1.DeliveryRpcClient(this.config.rpcCommunicator.getRpcClientTransport())), this.config.rpcRequestTimeout));
101
+ this.config.nearbyNodeView.add(new DeliveryRpcRemote_1.DeliveryRpcRemote(this.config.localPeerDescriptor, descriptor, this.config.streamPartId, this.config.rpcCommunicator, NetworkRpc_client_1.DeliveryRpcClient, this.config.rpcRequestTimeout));
96
102
  }
97
103
  }
98
104
  newRandomContact(randomNodes) {
99
105
  if (this.isStopped()) {
100
106
  return;
101
107
  }
102
- this.config.randomNodeView.replaceAll(randomNodes.map((descriptor) => new DeliveryRpcRemote_1.DeliveryRpcRemote(this.config.localPeerDescriptor, descriptor, this.config.streamPartId, (0, proto_rpc_1.toProtoRpcClient)(new NetworkRpc_client_1.DeliveryRpcClient(this.config.rpcCommunicator.getRpcClientTransport())), this.config.rpcRequestTimeout)));
108
+ this.config.randomNodeView.replaceAll(randomNodes.map((descriptor) => new DeliveryRpcRemote_1.DeliveryRpcRemote(this.config.localPeerDescriptor, descriptor, this.config.streamPartId, this.config.rpcCommunicator, NetworkRpc_client_1.DeliveryRpcClient, this.config.rpcRequestTimeout)));
103
109
  if (this.config.targetNeighbors.size() < this.config.numOfTargetNeighbors) {
104
110
  this.config.neighborFinder.start();
105
111
  }
@@ -109,7 +115,7 @@ class RandomGraphNode extends eventemitter3_1.EventEmitter {
109
115
  if (this.isStopped()) {
110
116
  return;
111
117
  }
112
- this.config.randomNodeView.replaceAll(randomNodes.map((descriptor) => new DeliveryRpcRemote_1.DeliveryRpcRemote(this.config.localPeerDescriptor, descriptor, this.config.streamPartId, (0, proto_rpc_1.toProtoRpcClient)(new NetworkRpc_client_1.DeliveryRpcClient(this.config.rpcCommunicator.getRpcClientTransport())), this.config.rpcRequestTimeout)));
118
+ this.config.randomNodeView.replaceAll(randomNodes.map((descriptor) => new DeliveryRpcRemote_1.DeliveryRpcRemote(this.config.localPeerDescriptor, descriptor, this.config.streamPartId, this.config.rpcCommunicator, NetworkRpc_client_1.DeliveryRpcClient, this.config.rpcRequestTimeout)));
113
119
  }
114
120
  onNodeDisconnected(peerDescriptor) {
115
121
  if (this.config.targetNeighbors.hasNode(peerDescriptor)) {
@@ -120,14 +126,14 @@ class RandomGraphNode extends eventemitter3_1.EventEmitter {
120
126
  }
121
127
  }
122
128
  getNeighborCandidatesFromLayer1() {
123
- const uniqueNodes = new Set();
129
+ const nodes = [];
124
130
  this.config.layer1Node.getClosestContacts(this.config.nodeViewSize).forEach((peer) => {
125
- uniqueNodes.add(peer);
131
+ nodes.push(peer);
126
132
  });
127
133
  this.config.layer1Node.getAllNeighborPeerDescriptors().forEach((peer) => {
128
- uniqueNodes.add(peer);
134
+ nodes.push(peer);
129
135
  });
130
- return Array.from(uniqueNodes);
136
+ return (0, lodash_1.uniqBy)(nodes, (p) => (0, identifiers_1.getNodeIdFromPeerDescriptor)(p));
131
137
  }
132
138
  hasProxyConnection(nodeId) {
133
139
  if (this.config.proxyConnectionRpcLocal) {
@@ -141,7 +147,7 @@ class RandomGraphNode extends eventemitter3_1.EventEmitter {
141
147
  }
142
148
  this.abortController.abort();
143
149
  this.config.proxyConnectionRpcLocal?.stop();
144
- this.config.targetNeighbors.getAll().map((remote) => remote.leaveStreamPartNotice());
150
+ this.config.targetNeighbors.getAll().map((remote) => remote.leaveStreamPartNotice(this.config.isLocalNodeEntryPoint()));
145
151
  this.config.rpcCommunicator.destroy();
146
152
  this.removeAllListeners();
147
153
  this.config.nearbyNodeView.stop();
@@ -1 +1 @@
1
- {"version":3,"file":"RandomGraphNode.js","sourceRoot":"","sources":["../../../src/logic/RandomGraphNode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RandomGraphNode.js","sourceRoot":"","sources":["../../../src/logic/RandomGraphNode.ts"],"names":[],"mappings":"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"}
@@ -71,7 +71,6 @@ class StreamrNode extends eventemitter3_1.EventEmitter {
71
71
  return;
72
72
  }
73
73
  const layer1Node = this.createLayer1Node(streamPartId, this.knownStreamPartEntryPoints.get(streamPartId) ?? []);
74
- const node = this.createRandomGraphNode(streamPartId, layer1Node);
75
74
  const entryPointDiscovery = new EntryPointDiscovery_1.EntryPointDiscovery({
76
75
  streamPartId,
77
76
  localPeerDescriptor: this.getPeerDescriptor(),
@@ -80,6 +79,7 @@ class StreamrNode extends eventemitter3_1.EventEmitter {
80
79
  storeEntryPointData: (key, data) => this.layer0Node.storeDataToDht(key, data),
81
80
  deleteEntryPointData: async (key) => this.layer0Node.deleteDataFromDht(key, false)
82
81
  });
82
+ const node = this.createRandomGraphNode(streamPartId, layer1Node, () => entryPointDiscovery.isLocalNodeEntryPoint());
83
83
  streamPart = {
84
84
  proxied: false,
85
85
  layer1Node,
@@ -96,6 +96,14 @@ class StreamrNode extends eventemitter3_1.EventEmitter {
96
96
  node.on('message', (message) => {
97
97
  this.emit('newMessage', message);
98
98
  });
99
+ const handleEntryPointLeave = async () => {
100
+ if (this.destroyed || entryPointDiscovery.isLocalNodeEntryPoint() || this.knownStreamPartEntryPoints.has(streamPartId)) {
101
+ return;
102
+ }
103
+ const entryPoints = await entryPointDiscovery.discoverEntryPointsFromDht(0);
104
+ await entryPointDiscovery.storeSelfAsEntryPointIfNecessary(entryPoints.discoveredEntryPoints.length);
105
+ };
106
+ node.on('entryPointLeaveDetected', () => handleEntryPointLeave());
99
107
  setImmediate(async () => {
100
108
  try {
101
109
  await this.startLayersAndJoinDht(streamPartId, entryPointDiscovery);
@@ -130,10 +138,10 @@ class StreamrNode extends eventemitter3_1.EventEmitter {
130
138
  entryPoints,
131
139
  numberOfNodesPerKBucket: 4,
132
140
  rpcRequestTimeout: dht_1.EXISTING_CONNECTION_TIMEOUT,
133
- dhtJoinTimeout: 20000
141
+ dhtJoinTimeout: 20000 // TODO use config option or named constant?
134
142
  });
135
143
  }
136
- createRandomGraphNode(streamPartId, layer1Node) {
144
+ createRandomGraphNode(streamPartId, layer1Node, isLocalNodeEntryPoint) {
137
145
  return (0, createRandomGraphNode_1.createRandomGraphNode)({
138
146
  streamPartId,
139
147
  transport: this.transport,
@@ -143,7 +151,8 @@ class StreamrNode extends eventemitter3_1.EventEmitter {
143
151
  minPropagationTargets: this.config.streamPartitionMinPropagationTargets,
144
152
  numOfTargetNeighbors: this.config.streamPartitionNumOfNeighbors,
145
153
  acceptProxyConnections: this.config.acceptProxyConnections,
146
- rpcRequestTimeout: this.config.rpcRequestTimeout
154
+ rpcRequestTimeout: this.config.rpcRequestTimeout,
155
+ isLocalNodeEntryPoint
147
156
  });
148
157
  }
149
158
  async setProxies(streamPartId, nodes, direction, userId, connectionCount) {
@@ -1 +1 @@
1
- {"version":3,"file":"StreamrNode.js","sourceRoot":"","sources":["../../../src/logic/StreamrNode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"StreamrNode.js","sourceRoot":"","sources":["../../../src/logic/StreamrNode.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,3 @@
1
+ import { ServiceID } from '@streamr/dht';
1
2
  import { StreamPartID } from '@streamr/protocol';
2
- export declare const formStreamPartDeliveryServiceId: (streamPartId: StreamPartID) => string;
3
+ export declare const formStreamPartDeliveryServiceId: (streamPartId: StreamPartID) => ServiceID;
@@ -1 +1 @@
1
- {"version":3,"file":"formStreamPartDeliveryServiceId.js","sourceRoot":"","sources":["../../../src/logic/formStreamPartDeliveryServiceId.ts"],"names":[],"mappings":";;;AAEO,MAAM,+BAA+B,GAAG,CAAC,YAA0B,EAAU,EAAE;IAClF,OAAO,wBAAwB,YAAY,EAAE,CAAA;AACjD,CAAC,CAAA;AAFY,QAAA,+BAA+B,mCAE3C"}
1
+ {"version":3,"file":"formStreamPartDeliveryServiceId.js","sourceRoot":"","sources":["../../../src/logic/formStreamPartDeliveryServiceId.ts"],"names":[],"mappings":";;;AAGO,MAAM,+BAA+B,GAAG,CAAC,YAA0B,EAAa,EAAE;IACrF,OAAO,wBAAwB,YAAY,EAAE,CAAA;AACjD,CAAC,CAAA;AAFY,QAAA,+BAA+B,mCAE3C"}
@@ -1,4 +1,4 @@
1
- import { PeerDescriptor, ConnectionLocker } from '@streamr/dht';
1
+ import { PeerDescriptor, ConnectionLocker, LockID } from '@streamr/dht';
2
2
  import { MessageID } from '../../proto/packages/trackerless-network/protos/NetworkRpc';
3
3
  import { RpcCommunicator } from '@streamr/proto-rpc';
4
4
  import { NodeID } from '../../identifiers';
@@ -9,24 +9,18 @@ interface InspectorConfig {
9
9
  rpcCommunicator: RpcCommunicator;
10
10
  connectionLocker: ConnectionLocker;
11
11
  inspectionTimeout?: number;
12
- openInspectConnection?: (peerDescriptor: PeerDescriptor, lockId: string) => Promise<void>;
12
+ openInspectConnection?: (peerDescriptor: PeerDescriptor, lockId: LockID) => Promise<void>;
13
13
  }
14
- export interface IInspector {
15
- inspect(peerDescriptor: PeerDescriptor): Promise<boolean>;
16
- markMessage(sender: NodeID, messageId: MessageID): void;
17
- isInspected(nodeId: NodeID): boolean;
18
- stop(): void;
19
- }
20
- export declare class Inspector implements IInspector {
14
+ export declare class Inspector {
21
15
  private readonly sessions;
22
16
  private readonly streamPartId;
23
- private readonly client;
24
17
  private readonly localPeerDescriptor;
18
+ private readonly rpcCommunicator;
25
19
  private readonly connectionLocker;
26
20
  private readonly inspectionTimeout;
27
21
  private readonly openInspectConnection;
28
22
  constructor(config: InspectorConfig);
29
- defaultOpenInspectConnection(peerDescriptor: PeerDescriptor, lockId: string): Promise<void>;
23
+ defaultOpenInspectConnection(peerDescriptor: PeerDescriptor, lockId: LockID): Promise<void>;
30
24
  inspect(peerDescriptor: PeerDescriptor): Promise<boolean>;
31
25
  markMessage(sender: NodeID, messageId: MessageID): void;
32
26
  isInspected(nodeId: NodeID): boolean;