@peerbit/document 13.1.25 → 13.1.26
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/package.json +18 -17
- package/dist/benchmark/document-put.d.ts +0 -2
- package/dist/benchmark/document-put.d.ts.map +0 -1
- package/dist/benchmark/document-put.js +0 -1362
- package/dist/benchmark/document-put.js.map +0 -1
- package/dist/benchmark/file-ingest.d.ts +0 -2
- package/dist/benchmark/file-ingest.d.ts.map +0 -1
- package/dist/benchmark/file-ingest.js +0 -682
- package/dist/benchmark/file-ingest.js.map +0 -1
- package/dist/benchmark/index.d.ts +0 -2
- package/dist/benchmark/index.d.ts.map +0 -1
- package/dist/benchmark/index.js +0 -160
- package/dist/benchmark/index.js.map +0 -1
- package/dist/benchmark/iterate-replicate-2.d.ts +0 -2
- package/dist/benchmark/iterate-replicate-2.d.ts.map +0 -1
- package/dist/benchmark/iterate-replicate-2.js +0 -200
- package/dist/benchmark/iterate-replicate-2.js.map +0 -1
- package/dist/benchmark/iterate-replicate.d.ts +0 -2
- package/dist/benchmark/iterate-replicate.d.ts.map +0 -1
- package/dist/benchmark/iterate-replicate.js +0 -212
- package/dist/benchmark/iterate-replicate.js.map +0 -1
- package/dist/benchmark/memory/child.d.ts +0 -2
- package/dist/benchmark/memory/child.d.ts.map +0 -1
- package/dist/benchmark/memory/child.js +0 -187
- package/dist/benchmark/memory/child.js.map +0 -1
- package/dist/benchmark/memory/index.d.ts +0 -2
- package/dist/benchmark/memory/index.d.ts.map +0 -1
- package/dist/benchmark/memory/index.js +0 -81
- package/dist/benchmark/memory/index.js.map +0 -1
- package/dist/benchmark/memory/utils.d.ts +0 -13
- package/dist/benchmark/memory/utils.d.ts.map +0 -1
- package/dist/benchmark/memory/utils.js +0 -2
- package/dist/benchmark/memory/utils.js.map +0 -1
- package/dist/benchmark/replication-network.d.ts +0 -2
- package/dist/benchmark/replication-network.d.ts.map +0 -1
- package/dist/benchmark/replication-network.js +0 -872
- package/dist/benchmark/replication-network.js.map +0 -1
- package/dist/benchmark/replication.d.ts +0 -2
- package/dist/benchmark/replication.d.ts.map +0 -1
- package/dist/benchmark/replication.js +0 -207
- package/dist/benchmark/replication.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"replication-network.js","sourceRoot":"","sources":["../../benchmark/replication-network.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"replication.d.ts","sourceRoot":"","sources":["../../benchmark/replication.ts"],"names":[],"mappings":""}
|
|
@@ -1,207 +0,0 @@
|
|
|
1
|
-
var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
|
|
2
|
-
function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
|
|
3
|
-
var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
|
|
4
|
-
var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
|
|
5
|
-
var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
|
|
6
|
-
var _, done = false;
|
|
7
|
-
for (var i = decorators.length - 1; i >= 0; i--) {
|
|
8
|
-
var context = {};
|
|
9
|
-
for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
|
|
10
|
-
for (var p in contextIn.access) context.access[p] = contextIn.access[p];
|
|
11
|
-
context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
|
|
12
|
-
var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
|
|
13
|
-
if (kind === "accessor") {
|
|
14
|
-
if (result === void 0) continue;
|
|
15
|
-
if (result === null || typeof result !== "object") throw new TypeError("Object expected");
|
|
16
|
-
if (_ = accept(result.get)) descriptor.get = _;
|
|
17
|
-
if (_ = accept(result.set)) descriptor.set = _;
|
|
18
|
-
if (_ = accept(result.init)) initializers.unshift(_);
|
|
19
|
-
}
|
|
20
|
-
else if (_ = accept(result)) {
|
|
21
|
-
if (kind === "field") initializers.unshift(_);
|
|
22
|
-
else descriptor[key] = _;
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
if (target) Object.defineProperty(target, contextIn.name, descriptor);
|
|
26
|
-
done = true;
|
|
27
|
-
};
|
|
28
|
-
var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
|
|
29
|
-
var useValue = arguments.length > 2;
|
|
30
|
-
for (var i = 0; i < initializers.length; i++) {
|
|
31
|
-
value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
|
|
32
|
-
}
|
|
33
|
-
return useValue ? value : void 0;
|
|
34
|
-
};
|
|
35
|
-
import { yamux } from "@chainsafe/libp2p-yamux";
|
|
36
|
-
import { field, option, variant } from "@dao-xyz/borsh";
|
|
37
|
-
import { tcp } from "@libp2p/tcp";
|
|
38
|
-
import { Program } from "@peerbit/program";
|
|
39
|
-
import { delay } from "@peerbit/time";
|
|
40
|
-
import B from "benchmark";
|
|
41
|
-
import { Peerbit, createLibp2pExtended } from "peerbit";
|
|
42
|
-
import { v4 as uuid } from "uuid";
|
|
43
|
-
import { Documents } from "../src/program.js";
|
|
44
|
-
// Run with "node --loader ts-node/esm ./benchmark/replication.ts"
|
|
45
|
-
// put x 862 ops/sec ±4.75% (75 runs sampled)
|
|
46
|
-
let Document = (() => {
|
|
47
|
-
let _classDecorators = [variant("document")];
|
|
48
|
-
let _classDescriptor;
|
|
49
|
-
let _classExtraInitializers = [];
|
|
50
|
-
let _classThis;
|
|
51
|
-
let _id_decorators;
|
|
52
|
-
let _id_initializers = [];
|
|
53
|
-
let _id_extraInitializers = [];
|
|
54
|
-
let _name_decorators;
|
|
55
|
-
let _name_initializers = [];
|
|
56
|
-
let _name_extraInitializers = [];
|
|
57
|
-
let _number_decorators;
|
|
58
|
-
let _number_initializers = [];
|
|
59
|
-
let _number_extraInitializers = [];
|
|
60
|
-
var Document = class {
|
|
61
|
-
static { _classThis = this; }
|
|
62
|
-
static {
|
|
63
|
-
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
|
|
64
|
-
_id_decorators = [field({ type: "string" })];
|
|
65
|
-
_name_decorators = [field({ type: option("string") })];
|
|
66
|
-
_number_decorators = [field({ type: option("u64") })];
|
|
67
|
-
__esDecorate(null, null, _id_decorators, { kind: "field", name: "id", static: false, private: false, access: { has: obj => "id" in obj, get: obj => obj.id, set: (obj, value) => { obj.id = value; } }, metadata: _metadata }, _id_initializers, _id_extraInitializers);
|
|
68
|
-
__esDecorate(null, null, _name_decorators, { kind: "field", name: "name", static: false, private: false, access: { has: obj => "name" in obj, get: obj => obj.name, set: (obj, value) => { obj.name = value; } }, metadata: _metadata }, _name_initializers, _name_extraInitializers);
|
|
69
|
-
__esDecorate(null, null, _number_decorators, { kind: "field", name: "number", static: false, private: false, access: { has: obj => "number" in obj, get: obj => obj.number, set: (obj, value) => { obj.number = value; } }, metadata: _metadata }, _number_initializers, _number_extraInitializers);
|
|
70
|
-
__esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
|
|
71
|
-
Document = _classThis = _classDescriptor.value;
|
|
72
|
-
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
73
|
-
__runInitializers(_classThis, _classExtraInitializers);
|
|
74
|
-
}
|
|
75
|
-
id = __runInitializers(this, _id_initializers, void 0);
|
|
76
|
-
name = (__runInitializers(this, _id_extraInitializers), __runInitializers(this, _name_initializers, void 0));
|
|
77
|
-
number = (__runInitializers(this, _name_extraInitializers), __runInitializers(this, _number_initializers, void 0));
|
|
78
|
-
constructor(opts) {
|
|
79
|
-
__runInitializers(this, _number_extraInitializers);
|
|
80
|
-
if (opts) {
|
|
81
|
-
this.id = opts.id;
|
|
82
|
-
this.name = opts.name;
|
|
83
|
-
this.number = opts.number;
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
};
|
|
87
|
-
return Document = _classThis;
|
|
88
|
-
})();
|
|
89
|
-
let TestStore = (() => {
|
|
90
|
-
let _classDecorators = [variant("test_documents")];
|
|
91
|
-
let _classDescriptor;
|
|
92
|
-
let _classExtraInitializers = [];
|
|
93
|
-
let _classThis;
|
|
94
|
-
let _classSuper = Program;
|
|
95
|
-
let _docs_decorators;
|
|
96
|
-
let _docs_initializers = [];
|
|
97
|
-
let _docs_extraInitializers = [];
|
|
98
|
-
var TestStore = class extends _classSuper {
|
|
99
|
-
static { _classThis = this; }
|
|
100
|
-
static {
|
|
101
|
-
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
102
|
-
_docs_decorators = [field({ type: Documents })];
|
|
103
|
-
__esDecorate(null, null, _docs_decorators, { kind: "field", name: "docs", static: false, private: false, access: { has: obj => "docs" in obj, get: obj => obj.docs, set: (obj, value) => { obj.docs = value; } }, metadata: _metadata }, _docs_initializers, _docs_extraInitializers);
|
|
104
|
-
__esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
|
|
105
|
-
TestStore = _classThis = _classDescriptor.value;
|
|
106
|
-
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
107
|
-
__runInitializers(_classThis, _classExtraInitializers);
|
|
108
|
-
}
|
|
109
|
-
docs = __runInitializers(this, _docs_initializers, void 0);
|
|
110
|
-
constructor() {
|
|
111
|
-
super();
|
|
112
|
-
__runInitializers(this, _docs_extraInitializers);
|
|
113
|
-
this.docs = new Documents();
|
|
114
|
-
}
|
|
115
|
-
async open(options) {
|
|
116
|
-
await this.docs.open({ ...options, type: Document });
|
|
117
|
-
}
|
|
118
|
-
};
|
|
119
|
-
return TestStore = _classThis;
|
|
120
|
-
})();
|
|
121
|
-
const peers = await Promise.all([
|
|
122
|
-
await createLibp2pExtended({
|
|
123
|
-
transports: [tcp()],
|
|
124
|
-
streamMuxers: [yamux()],
|
|
125
|
-
}),
|
|
126
|
-
await createLibp2pExtended({
|
|
127
|
-
connectionManager: {},
|
|
128
|
-
transports: [tcp()],
|
|
129
|
-
streamMuxers: [yamux()],
|
|
130
|
-
}),
|
|
131
|
-
await createLibp2pExtended({
|
|
132
|
-
transports: [tcp()],
|
|
133
|
-
streamMuxers: [yamux()],
|
|
134
|
-
}),
|
|
135
|
-
].map((x) => Peerbit.create({ libp2p: x })));
|
|
136
|
-
await peers[0].dial(peers[1].getMultiaddrs());
|
|
137
|
-
await peers[1].dial(peers[2].getMultiaddrs());
|
|
138
|
-
const stores = [];
|
|
139
|
-
// Create store
|
|
140
|
-
let address = undefined;
|
|
141
|
-
const readerResolver = new Map();
|
|
142
|
-
for (const [i, client] of peers.entries()) {
|
|
143
|
-
let store;
|
|
144
|
-
if (address) {
|
|
145
|
-
store = await client.open(address, {
|
|
146
|
-
args: {
|
|
147
|
-
replicate: {
|
|
148
|
-
factor: 1,
|
|
149
|
-
},
|
|
150
|
-
},
|
|
151
|
-
});
|
|
152
|
-
}
|
|
153
|
-
else {
|
|
154
|
-
store = await client.open(new TestStore(), {
|
|
155
|
-
args: {
|
|
156
|
-
replicate: {
|
|
157
|
-
factor: 1,
|
|
158
|
-
},
|
|
159
|
-
},
|
|
160
|
-
});
|
|
161
|
-
address = store.address;
|
|
162
|
-
}
|
|
163
|
-
if (i === 1) {
|
|
164
|
-
store.docs.events.addEventListener("change", (event) => {
|
|
165
|
-
event.detail.added.forEach((e) => {
|
|
166
|
-
readerResolver.get(e.id)?.();
|
|
167
|
-
readerResolver.delete(e.id);
|
|
168
|
-
});
|
|
169
|
-
});
|
|
170
|
-
}
|
|
171
|
-
stores.push(store);
|
|
172
|
-
}
|
|
173
|
-
const createDoc = () => new Document({
|
|
174
|
-
id: uuid(),
|
|
175
|
-
name: uuid(),
|
|
176
|
-
number: 2341n,
|
|
177
|
-
});
|
|
178
|
-
// warmup
|
|
179
|
-
for (let i = 0; i < 10; i++) {
|
|
180
|
-
await stores[0].docs.put(createDoc(), { unique: true });
|
|
181
|
-
await delay(1000);
|
|
182
|
-
}
|
|
183
|
-
await delay(5000);
|
|
184
|
-
const suite = new B.Suite();
|
|
185
|
-
suite
|
|
186
|
-
.add("put", {
|
|
187
|
-
fn: async (deferred) => {
|
|
188
|
-
const writeStore = stores[0];
|
|
189
|
-
const doc = createDoc();
|
|
190
|
-
// wait for reading
|
|
191
|
-
readerResolver.set(doc.id, deferred.resolve.bind(deferred));
|
|
192
|
-
await writeStore.docs.put(doc, { unique: true });
|
|
193
|
-
},
|
|
194
|
-
defer: true,
|
|
195
|
-
})
|
|
196
|
-
.on("cycle", (event) => {
|
|
197
|
-
console.log(String(event.target));
|
|
198
|
-
})
|
|
199
|
-
.on("error", (err) => {
|
|
200
|
-
throw err;
|
|
201
|
-
})
|
|
202
|
-
.on("complete", async function (...args) {
|
|
203
|
-
await Promise.all(peers.map((x) => x.stop()));
|
|
204
|
-
await Promise.all(peers.map((x) => x["libp2p"].stop()));
|
|
205
|
-
})
|
|
206
|
-
.run();
|
|
207
|
-
//# sourceMappingURL=replication.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"replication.js","sourceRoot":"","sources":["../../benchmark/replication.ts"],"names":[],"mappings":"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"}
|