falkordb 6.0.2 → 6.2.0-beta.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.
- package/README.md +4 -3
- package/dist/src/commands/CONFIG_GET.js +2 -2
- package/dist/src/commands/CONFIG_SET.js +1 -2
- package/dist/src/commands/CONSTRAINT_CREATE.js +2 -2
- package/dist/src/commands/CONSTRAINT_DROP.js +1 -2
- package/dist/src/commands/COPY.js +1 -2
- package/dist/src/commands/DELETE.js +2 -2
- package/dist/src/commands/EXPLAIN.js +2 -2
- package/dist/src/commands/INFO.js +2 -2
- package/dist/src/commands/LIST.js +2 -2
- package/dist/src/commands/PROFILE.js +2 -2
- package/dist/src/commands/QUERY.js +3 -3
- package/dist/src/commands/RO_QUERY.js +2 -2
- package/dist/src/commands/SENTINEL_MASTER.js +2 -3
- package/dist/src/commands/SENTINEL_MASTERS.js +2 -3
- package/dist/src/commands/SLOWLOG.js +3 -3
- package/dist/src/commands/index.d.ts +6 -0
- package/dist/src/commands/index.js +8 -3
- package/dist/src/falkordb.d.ts +6 -3
- package/dist/src/falkordb.js +64 -0
- package/dist/src/graph.js +36 -2
- package/package.json +8 -6
- package/dist/index.js.map +0 -1
- package/dist/src/commands/CONFIG_GET.js.map +0 -1
- package/dist/src/commands/CONFIG_SET.js.map +0 -1
- package/dist/src/commands/CONSTRAINT_CREATE.js.map +0 -1
- package/dist/src/commands/CONSTRAINT_DROP.js.map +0 -1
- package/dist/src/commands/COPY.js.map +0 -1
- package/dist/src/commands/DELETE.js.map +0 -1
- package/dist/src/commands/EXPLAIN.js.map +0 -1
- package/dist/src/commands/INFO.js.map +0 -1
- package/dist/src/commands/LIST.js.map +0 -1
- package/dist/src/commands/PROFILE.js.map +0 -1
- package/dist/src/commands/QUERY.js.map +0 -1
- package/dist/src/commands/RO_QUERY.js.map +0 -1
- package/dist/src/commands/SENTINEL_MASTER.js.map +0 -1
- package/dist/src/commands/SENTINEL_MASTERS.js.map +0 -1
- package/dist/src/commands/SLOWLOG.js.map +0 -1
- package/dist/src/commands/index.js.map +0 -1
- package/dist/src/edge.d.ts +0 -24
- package/dist/src/edge.js +0 -48
- package/dist/src/falkordb.js.map +0 -1
- package/dist/src/graph.js.map +0 -1
- package/dist/src/label.d.ts +0 -18
- package/dist/src/label.js +0 -20
- package/dist/src/node.d.ts +0 -22
- package/dist/src/node.js +0 -38
- package/dist/src/parser.js +0 -167
- package/dist/src/path.d.ts +0 -57
- package/dist/src/path.js +0 -80
- package/dist/src/record.d.ts +0 -43
- package/dist/src/record.js +0 -68
- package/dist/src/resultset.d.ts +0 -43
- package/dist/src/resultset.js +0 -40
- package/dist/src/statistics.d.ts +0 -71
- package/dist/src/statistics.js +0 -115
package/README.md
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
# falkordb-ts
|
|
2
|
-
|
|
3
1
|
[](https://github.com/falkordb/falkordb-ts/actions/workflows/node.js.yml)
|
|
4
2
|
[](https://codecov.io/gh/falkordb/falkordb-ts)
|
|
5
3
|
[](https://github.com/falkordb/falkordb-ts/blob/main/LICENSE)
|
|
6
|
-
|
|
7
4
|
[](https://discord.com/invite/99y2Ubh6tg)
|
|
8
5
|
[](https://twitter.com/falkordb)
|
|
9
6
|
|
|
7
|
+
# falkordb-ts
|
|
8
|
+
|
|
9
|
+
[](https://app.falkordb.cloud)
|
|
10
|
+
|
|
10
11
|
`falkordb` is a [FalkorDB](https://www.falkordb.com) client for Node.js.
|
|
11
12
|
|
|
12
13
|
## Installation
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.IS_READ_ONLY = void 0;
|
|
4
|
+
exports.transformArguments = transformArguments;
|
|
4
5
|
exports.IS_READ_ONLY = true;
|
|
5
6
|
function transformArguments(configKey) {
|
|
6
7
|
return ['GRAPH.CONFIG', 'GET', configKey];
|
|
7
8
|
}
|
|
8
|
-
exports.transformArguments = transformArguments;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.transformArguments =
|
|
3
|
+
exports.transformArguments = transformArguments;
|
|
4
4
|
function transformArguments(configKey, value) {
|
|
5
5
|
return [
|
|
6
6
|
'GRAPH.CONFIG',
|
|
@@ -9,4 +9,3 @@ function transformArguments(configKey, value) {
|
|
|
9
9
|
value.toString()
|
|
10
10
|
];
|
|
11
11
|
}
|
|
12
|
-
exports.transformArguments = transformArguments;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.EntityType = exports.ConstraintType = void 0;
|
|
4
|
+
exports.transformArguments = transformArguments;
|
|
4
5
|
var ConstraintType;
|
|
5
6
|
(function (ConstraintType) {
|
|
6
7
|
ConstraintType["MANDATORY"] = "MANDATORY";
|
|
@@ -19,4 +20,3 @@ function transformArguments(key, constraintType, entityType, label, ...propertie
|
|
|
19
20
|
'PROPERTIES', properties.length.toString(), ...properties
|
|
20
21
|
];
|
|
21
22
|
}
|
|
22
|
-
exports.transformArguments = transformArguments;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.transformArguments =
|
|
3
|
+
exports.transformArguments = transformArguments;
|
|
4
4
|
// GRAPH.CONSTRAINT DROP key constraintType {NODE label | RELATIONSHIP reltype} PROPERTIES propCount prop [prop...]
|
|
5
5
|
function transformArguments(key, constraintType, entityType, label, ...properties) {
|
|
6
6
|
return [
|
|
@@ -9,4 +9,3 @@ function transformArguments(key, constraintType, entityType, label, ...propertie
|
|
|
9
9
|
'PROPERTIES', properties.length.toString(), ...properties
|
|
10
10
|
];
|
|
11
11
|
}
|
|
12
|
-
exports.transformArguments = transformArguments;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.transformArguments =
|
|
3
|
+
exports.transformArguments = transformArguments;
|
|
4
4
|
function transformArguments(srcGraph, destGraph) {
|
|
5
5
|
return [
|
|
6
6
|
'GRAPH.COPY',
|
|
@@ -8,4 +8,3 @@ function transformArguments(srcGraph, destGraph) {
|
|
|
8
8
|
destGraph
|
|
9
9
|
];
|
|
10
10
|
}
|
|
11
|
-
exports.transformArguments = transformArguments;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.FIRST_KEY_INDEX = void 0;
|
|
4
|
+
exports.transformArguments = transformArguments;
|
|
4
5
|
exports.FIRST_KEY_INDEX = 1;
|
|
5
6
|
function transformArguments(key) {
|
|
6
7
|
return ['GRAPH.DELETE', key];
|
|
7
8
|
}
|
|
8
|
-
exports.transformArguments = transformArguments;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.IS_READ_ONLY = exports.FIRST_KEY_INDEX = void 0;
|
|
4
|
+
exports.transformArguments = transformArguments;
|
|
4
5
|
exports.FIRST_KEY_INDEX = 1;
|
|
5
6
|
exports.IS_READ_ONLY = true;
|
|
6
7
|
function transformArguments(key, query) {
|
|
7
8
|
return ['GRAPH.EXPLAIN', key, query];
|
|
8
9
|
}
|
|
9
|
-
exports.transformArguments = transformArguments;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.IS_READ_ONLY = void 0;
|
|
4
|
+
exports.transformArguments = transformArguments;
|
|
4
5
|
exports.IS_READ_ONLY = true;
|
|
5
6
|
function transformArguments(section) {
|
|
6
7
|
const args = ['GRAPH.INFO'];
|
|
@@ -9,4 +10,3 @@ function transformArguments(section) {
|
|
|
9
10
|
}
|
|
10
11
|
return args;
|
|
11
12
|
}
|
|
12
|
-
exports.transformArguments = transformArguments;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.IS_READ_ONLY = void 0;
|
|
4
|
+
exports.transformArguments = transformArguments;
|
|
4
5
|
exports.IS_READ_ONLY = true;
|
|
5
6
|
function transformArguments() {
|
|
6
7
|
return ['GRAPH.LIST'];
|
|
7
8
|
}
|
|
8
|
-
exports.transformArguments = transformArguments;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.IS_READ_ONLY = exports.FIRST_KEY_INDEX = void 0;
|
|
4
|
+
exports.transformArguments = transformArguments;
|
|
4
5
|
exports.FIRST_KEY_INDEX = 1;
|
|
5
6
|
exports.IS_READ_ONLY = true;
|
|
6
7
|
function transformArguments(key, query) {
|
|
7
8
|
return ['GRAPH.PROFILE', key, query];
|
|
8
9
|
}
|
|
9
|
-
exports.transformArguments = transformArguments;
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.FIRST_KEY_INDEX = void 0;
|
|
4
|
+
exports.transformArguments = transformArguments;
|
|
5
|
+
exports.transformReply = transformReply;
|
|
4
6
|
const _1 = require(".");
|
|
5
7
|
exports.FIRST_KEY_INDEX = 1;
|
|
6
8
|
function transformArguments(graph, query, options, compact) {
|
|
7
9
|
return (0, _1.pushQueryArguments)(['GRAPH.QUERY'], graph, query, options, compact);
|
|
8
10
|
}
|
|
9
|
-
exports.transformArguments = transformArguments;
|
|
10
11
|
function transformReply(reply) {
|
|
11
12
|
return reply.length === 1 ? {
|
|
12
13
|
headers: undefined,
|
|
@@ -18,4 +19,3 @@ function transformReply(reply) {
|
|
|
18
19
|
metadata: reply[2]
|
|
19
20
|
};
|
|
20
21
|
}
|
|
21
|
-
exports.transformReply = transformReply;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.transformReply = exports.
|
|
3
|
+
exports.transformReply = exports.IS_READ_ONLY = exports.FIRST_KEY_INDEX = void 0;
|
|
4
|
+
exports.transformArguments = transformArguments;
|
|
4
5
|
const _1 = require(".");
|
|
5
6
|
var QUERY_1 = require("./QUERY");
|
|
6
7
|
Object.defineProperty(exports, "FIRST_KEY_INDEX", { enumerable: true, get: function () { return QUERY_1.FIRST_KEY_INDEX; } });
|
|
@@ -8,6 +9,5 @@ exports.IS_READ_ONLY = true;
|
|
|
8
9
|
function transformArguments(graph, query, options, compact) {
|
|
9
10
|
return (0, _1.pushQueryArguments)(['GRAPH.RO_QUERY'], graph, query, options, compact);
|
|
10
11
|
}
|
|
11
|
-
exports.transformArguments = transformArguments;
|
|
12
12
|
var QUERY_2 = require("./QUERY");
|
|
13
13
|
Object.defineProperty(exports, "transformReply", { enumerable: true, get: function () { return QUERY_2.transformReply; } });
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.IS_READ_ONLY = void 0;
|
|
4
|
+
exports.transformArguments = transformArguments;
|
|
4
5
|
exports.IS_READ_ONLY = true;
|
|
5
6
|
function transformArguments(dbname) {
|
|
6
7
|
return ['SENTINEL', 'MASTER', dbname];
|
|
7
8
|
}
|
|
8
|
-
exports.transformArguments = transformArguments;
|
|
9
|
-
//# sourceMappingURL=SENTINEL_MASTER.js.map
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.IS_READ_ONLY = void 0;
|
|
4
|
+
exports.transformArguments = transformArguments;
|
|
4
5
|
exports.IS_READ_ONLY = true;
|
|
5
6
|
function transformArguments() {
|
|
6
7
|
return ['SENTINEL', 'MASTERS'];
|
|
7
8
|
}
|
|
8
|
-
exports.transformArguments = transformArguments;
|
|
9
|
-
//# sourceMappingURL=SENTINEL_MASTERS.js.map
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.FIRST_KEY_INDEX = exports.IS_READ_ONLY = void 0;
|
|
4
|
+
exports.transformArguments = transformArguments;
|
|
5
|
+
exports.transformReply = transformReply;
|
|
4
6
|
exports.IS_READ_ONLY = true;
|
|
5
7
|
exports.FIRST_KEY_INDEX = 1;
|
|
6
8
|
function transformArguments(key) {
|
|
7
9
|
return ['GRAPH.SLOWLOG', key];
|
|
8
10
|
}
|
|
9
|
-
exports.transformArguments = transformArguments;
|
|
10
11
|
function transformReply(logs) {
|
|
11
12
|
return logs.map(([timestamp, command, query, took]) => ({
|
|
12
13
|
timestamp: new Date(Number(timestamp) * 1000),
|
|
@@ -15,4 +16,3 @@ function transformReply(logs) {
|
|
|
15
16
|
took: Number(took)
|
|
16
17
|
}));
|
|
17
18
|
}
|
|
18
|
-
exports.transformReply = transformReply;
|
|
@@ -11,6 +11,8 @@ import * as SLOWLOG from './SLOWLOG';
|
|
|
11
11
|
import * as CONSTRAINT_CREATE from './CONSTRAINT_CREATE';
|
|
12
12
|
import * as CONSTRAINT_DROP from './CONSTRAINT_DROP';
|
|
13
13
|
import * as COPY from './COPY';
|
|
14
|
+
import * as SENTINEL_MASTER from './SENTINEL_MASTER';
|
|
15
|
+
import * as SENTINEL_MASTERS from './SENTINEL_MASTERS';
|
|
14
16
|
import { RedisCommandArgument, RedisCommandArguments } from '@redis/client/dist/lib/commands';
|
|
15
17
|
declare const _default: {
|
|
16
18
|
CONFIG_GET: typeof CONFIG_GET;
|
|
@@ -39,6 +41,10 @@ declare const _default: {
|
|
|
39
41
|
constraintDrop: typeof CONSTRAINT_DROP;
|
|
40
42
|
COPY: typeof COPY;
|
|
41
43
|
copy: typeof COPY;
|
|
44
|
+
SENTINEL_MASTER: typeof SENTINEL_MASTER;
|
|
45
|
+
sentinelMaster: typeof SENTINEL_MASTER;
|
|
46
|
+
SENTINEL_MASTERS: typeof SENTINEL_MASTERS;
|
|
47
|
+
sentinelMasters: typeof SENTINEL_MASTERS;
|
|
42
48
|
};
|
|
43
49
|
export default _default;
|
|
44
50
|
type QueryParam = null | string | number | boolean | QueryParams | Array<QueryParam>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.pushQueryArguments =
|
|
3
|
+
exports.pushQueryArguments = pushQueryArguments;
|
|
4
4
|
const CONFIG_GET = require("./CONFIG_GET");
|
|
5
5
|
const CONFIG_SET = require("./CONFIG_SET");
|
|
6
6
|
const DELETE = require("./DELETE");
|
|
@@ -14,6 +14,8 @@ const SLOWLOG = require("./SLOWLOG");
|
|
|
14
14
|
const CONSTRAINT_CREATE = require("./CONSTRAINT_CREATE");
|
|
15
15
|
const CONSTRAINT_DROP = require("./CONSTRAINT_DROP");
|
|
16
16
|
const COPY = require("./COPY");
|
|
17
|
+
const SENTINEL_MASTER = require("./SENTINEL_MASTER");
|
|
18
|
+
const SENTINEL_MASTERS = require("./SENTINEL_MASTERS");
|
|
17
19
|
exports.default = {
|
|
18
20
|
CONFIG_GET,
|
|
19
21
|
configGet: CONFIG_GET,
|
|
@@ -40,7 +42,11 @@ exports.default = {
|
|
|
40
42
|
CONSTRAINT_DROP,
|
|
41
43
|
constraintDrop: CONSTRAINT_DROP,
|
|
42
44
|
COPY,
|
|
43
|
-
copy: COPY
|
|
45
|
+
copy: COPY,
|
|
46
|
+
SENTINEL_MASTER,
|
|
47
|
+
sentinelMaster: SENTINEL_MASTER,
|
|
48
|
+
SENTINEL_MASTERS,
|
|
49
|
+
sentinelMasters: SENTINEL_MASTERS
|
|
44
50
|
};
|
|
45
51
|
function pushQueryArguments(args, graph, query, options, compact) {
|
|
46
52
|
args.push(graph);
|
|
@@ -61,7 +67,6 @@ function pushQueryArguments(args, graph, query, options, compact) {
|
|
|
61
67
|
}
|
|
62
68
|
return args;
|
|
63
69
|
}
|
|
64
|
-
exports.pushQueryArguments = pushQueryArguments;
|
|
65
70
|
function pushTimeout(args, timeout) {
|
|
66
71
|
args.push('TIMEOUT', timeout.toString());
|
|
67
72
|
}
|
package/dist/src/falkordb.d.ts
CHANGED
|
@@ -1,10 +1,8 @@
|
|
|
1
|
-
/// <reference types="node" />
|
|
2
|
-
/// <reference types="node" />
|
|
3
|
-
/// <reference types="node" />
|
|
4
1
|
import * as tls from 'tls';
|
|
5
2
|
import * as net from 'net';
|
|
6
3
|
import { EventEmitter } from 'events';
|
|
7
4
|
import Graph, { GraphConnection } from './graph';
|
|
5
|
+
import { Options as PoolOptions } from 'generic-pool';
|
|
8
6
|
type NetSocketOptions = Partial<net.SocketConnectOpts> & {
|
|
9
7
|
tls?: false;
|
|
10
8
|
};
|
|
@@ -68,10 +66,15 @@ export interface FalkorDBOptions {
|
|
|
68
66
|
* Tag to append to library name that is sent to the Redis server
|
|
69
67
|
*/
|
|
70
68
|
clientInfoTag?: string;
|
|
69
|
+
/**
|
|
70
|
+
* Connection pool options
|
|
71
|
+
*/
|
|
72
|
+
poolOptions?: PoolOptions;
|
|
71
73
|
}
|
|
72
74
|
export default class FalkorDB extends EventEmitter {
|
|
73
75
|
#private;
|
|
74
76
|
private constructor();
|
|
77
|
+
private connectServer;
|
|
75
78
|
static connect(options?: FalkorDBOptions): Promise<FalkorDB>;
|
|
76
79
|
selectGraph(graphId: string): Graph;
|
|
77
80
|
get connection(): GraphConnection;
|
package/dist/src/falkordb.js
CHANGED
|
@@ -4,12 +4,66 @@ const events_1 = require("events");
|
|
|
4
4
|
const redis_1 = require("redis");
|
|
5
5
|
const graph_1 = require("./graph");
|
|
6
6
|
const commands_1 = require("./commands");
|
|
7
|
+
function extractDetails(masters) {
|
|
8
|
+
const allDetails = [];
|
|
9
|
+
for (const master of masters) {
|
|
10
|
+
const details = {};
|
|
11
|
+
for (let i = 0; i < master.length; i += 2) {
|
|
12
|
+
details[master[i]] = master[i + 1];
|
|
13
|
+
}
|
|
14
|
+
allDetails.push(details);
|
|
15
|
+
}
|
|
16
|
+
return allDetails;
|
|
17
|
+
}
|
|
7
18
|
class FalkorDB extends events_1.EventEmitter {
|
|
8
19
|
#client;
|
|
20
|
+
#sentinel;
|
|
9
21
|
constructor(client) {
|
|
10
22
|
super();
|
|
11
23
|
this.#client = client;
|
|
12
24
|
}
|
|
25
|
+
async connectServer(client, redisOption) {
|
|
26
|
+
// If not connected to sentinel, throws an error on missing command
|
|
27
|
+
const masters = await client.falkordb.sentinelMasters();
|
|
28
|
+
const details = extractDetails(masters);
|
|
29
|
+
if (details.length > 1) {
|
|
30
|
+
throw new Error('Multiple masters are not supported');
|
|
31
|
+
}
|
|
32
|
+
// Connect to the server with the details from sentinel
|
|
33
|
+
const socketOptions = {
|
|
34
|
+
...redisOption.socket,
|
|
35
|
+
host: details[0]['ip'],
|
|
36
|
+
port: parseInt(details[0]['port'])
|
|
37
|
+
};
|
|
38
|
+
const serverOptions = {
|
|
39
|
+
...redisOption,
|
|
40
|
+
socket: socketOptions
|
|
41
|
+
};
|
|
42
|
+
const realClient = (0, redis_1.createClient)(serverOptions);
|
|
43
|
+
// Set original client as sentinel and server client as client
|
|
44
|
+
this.#sentinel = client;
|
|
45
|
+
this.#client = realClient;
|
|
46
|
+
await realClient
|
|
47
|
+
.on('error', async (err) => {
|
|
48
|
+
console.debug('Error on server connection', err);
|
|
49
|
+
// Disconnect the client to avoid further errors and retries
|
|
50
|
+
realClient.disconnect();
|
|
51
|
+
// If error occurs on previous server connection, no need to reconnect
|
|
52
|
+
if (this.#client !== realClient) {
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
try {
|
|
56
|
+
await this.connectServer(client, redisOption);
|
|
57
|
+
console.debug('Connected to server');
|
|
58
|
+
}
|
|
59
|
+
catch (e) {
|
|
60
|
+
console.debug('Error on server reconnect', e);
|
|
61
|
+
// Forward errors if reconnection fails
|
|
62
|
+
this.emit('error', err);
|
|
63
|
+
}
|
|
64
|
+
})
|
|
65
|
+
.connect();
|
|
66
|
+
}
|
|
13
67
|
static async connect(options) {
|
|
14
68
|
const redisOption = (options ?? {});
|
|
15
69
|
// If the URL is provided, and the protocol is `falkor` replaces it with `redis` for the underline redis client
|
|
@@ -17,6 +71,10 @@ class FalkorDB extends events_1.EventEmitter {
|
|
|
17
71
|
if (redisOption.url && redisOption.url.startsWith('falkor')) {
|
|
18
72
|
redisOption.url = redisOption.url.replace('falkor', 'redis');
|
|
19
73
|
}
|
|
74
|
+
// Just copy the pool options to the isolation pool options as expected by the redis client
|
|
75
|
+
if (options?.poolOptions) {
|
|
76
|
+
redisOption.isolationPoolOptions = options.poolOptions;
|
|
77
|
+
}
|
|
20
78
|
redisOption.modules = {
|
|
21
79
|
falkordb: commands_1.default
|
|
22
80
|
};
|
|
@@ -25,6 +83,12 @@ class FalkorDB extends events_1.EventEmitter {
|
|
|
25
83
|
await client
|
|
26
84
|
.on('error', err => falkordb.emit('error', err)) // Forward errors
|
|
27
85
|
.connect();
|
|
86
|
+
try {
|
|
87
|
+
await falkordb.connectServer(client, redisOption);
|
|
88
|
+
}
|
|
89
|
+
catch (e) {
|
|
90
|
+
console.debug('Error in connecting to sentinel, connecting to server directly');
|
|
91
|
+
}
|
|
28
92
|
return falkordb;
|
|
29
93
|
}
|
|
30
94
|
selectGraph(graphId) {
|
package/dist/src/graph.js
CHANGED
|
@@ -24,26 +24,60 @@ class Graph {
|
|
|
24
24
|
#client;
|
|
25
25
|
#name;
|
|
26
26
|
#metadata;
|
|
27
|
+
#usePool;
|
|
27
28
|
constructor(client, name) {
|
|
28
29
|
this.#client = client;
|
|
29
30
|
this.#name = name;
|
|
31
|
+
this.#usePool = !!(this.#client.options?.isolationPoolOptions);
|
|
30
32
|
}
|
|
31
33
|
async query(query, options) {
|
|
32
|
-
|
|
34
|
+
const reply = this.#usePool ?
|
|
35
|
+
await this.#client.executeIsolated(async (isolatedClient) => {
|
|
36
|
+
return isolatedClient.falkordb.query(this.#name, query, options, true);
|
|
37
|
+
})
|
|
38
|
+
:
|
|
39
|
+
await this.#client.falkordb.query(this.#name, query, options, true);
|
|
40
|
+
return this.#parseReply(reply);
|
|
33
41
|
}
|
|
34
42
|
async roQuery(query, options) {
|
|
35
|
-
|
|
43
|
+
const reply = this.#usePool ?
|
|
44
|
+
await this.#client.executeIsolated(async (isolatedClient) => {
|
|
45
|
+
return isolatedClient.falkordb.roQuery(this.#name, query, options, true);
|
|
46
|
+
})
|
|
47
|
+
:
|
|
48
|
+
await this.#client.falkordb.roQuery(this.#name, query, options, true);
|
|
49
|
+
return this.#parseReply(reply);
|
|
36
50
|
}
|
|
37
51
|
async delete() {
|
|
52
|
+
if (this.#usePool) {
|
|
53
|
+
return this.#client.executeIsolated(async (isolatedClient) => {
|
|
54
|
+
return isolatedClient.falkordb.delete(this.#name);
|
|
55
|
+
});
|
|
56
|
+
}
|
|
38
57
|
return this.#client.falkordb.delete(this.#name);
|
|
39
58
|
}
|
|
40
59
|
async explain(query) {
|
|
60
|
+
if (this.#usePool) {
|
|
61
|
+
return this.#client.executeIsolated(async (isolatedClient) => {
|
|
62
|
+
return isolatedClient.falkordb.explain(this.#name, query);
|
|
63
|
+
});
|
|
64
|
+
}
|
|
41
65
|
return this.#client.falkordb.explain(this.#name, query);
|
|
42
66
|
}
|
|
43
67
|
async profile(query) {
|
|
68
|
+
if (this.#usePool) {
|
|
69
|
+
return this.#client.executeIsolated(async (isolatedClient) => {
|
|
70
|
+
return isolatedClient.falkordb.profile(this.#name, query);
|
|
71
|
+
});
|
|
72
|
+
}
|
|
44
73
|
return this.#client.falkordb.profile(this.#name, query);
|
|
45
74
|
}
|
|
46
75
|
async slowLog() {
|
|
76
|
+
if (this.#usePool) {
|
|
77
|
+
return this.#client.executeIsolated(async (isolatedClient) => {
|
|
78
|
+
return isolatedClient.falkordb.slowLog(this.#name);
|
|
79
|
+
});
|
|
80
|
+
}
|
|
47
81
|
return this.#client.falkordb.slowLog(this.#name);
|
|
48
82
|
}
|
|
49
83
|
async constraintCreate(constraintType, entityType, label, ...properties) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "falkordb",
|
|
3
|
-
"version": "6.0.
|
|
3
|
+
"version": "6.2.0-beta.1",
|
|
4
4
|
"description": "A FalkorDB javascript library",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -34,16 +34,18 @@
|
|
|
34
34
|
],
|
|
35
35
|
"devDependencies": {
|
|
36
36
|
"@tsconfig/node14": "^14.1.0",
|
|
37
|
+
"@types/jest": "^29.5.12",
|
|
37
38
|
"@types/node": "^20.11.28",
|
|
38
|
-
"@typescript-eslint/eslint-plugin": "^7.
|
|
39
|
-
"@typescript-eslint/parser": "^7.
|
|
39
|
+
"@typescript-eslint/eslint-plugin": "^7.16.0",
|
|
40
|
+
"@typescript-eslint/parser": "^7.18.0",
|
|
40
41
|
"eslint": "^8.57.0",
|
|
41
42
|
"gh-pages": "^6.0.0",
|
|
42
|
-
"release-it": "^17.
|
|
43
|
+
"release-it": "^17.6.0",
|
|
43
44
|
"typescript": "^5.4.2"
|
|
44
45
|
},
|
|
45
46
|
"dependencies": {
|
|
46
|
-
"redis": "^
|
|
47
|
-
"
|
|
47
|
+
"@redis/client": "^1.6.0",
|
|
48
|
+
"generic-pool": "^3.9.0",
|
|
49
|
+
"redis": "^4.7.0"
|
|
48
50
|
}
|
|
49
51
|
}
|
package/dist/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;AAAA,qCAA+C;AAAtC,8FAAA,OAAO,OAAS;AACzB,qCAAyD;AAAhD,uGAAA,cAAc,OAAA;AAAE,mGAAA,UAAU,OAAA;AACnC,2CAAqD;AAA5C,oGAAA,OAAO,OAAY"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CONFIG_GET.js","sourceRoot":"","sources":["../../../src/commands/CONFIG_GET.ts"],"names":[],"mappings":";;;AAAa,QAAA,YAAY,GAAG,IAAI,CAAC;AAEjC,SAAgB,kBAAkB,CAAC,SAAiB;IAChD,OAAO,CAAC,cAAc,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;AAC9C,CAAC;AAFD,gDAEC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CONFIG_SET.js","sourceRoot":"","sources":["../../../src/commands/CONFIG_SET.ts"],"names":[],"mappings":";;;AAAA,SAAgB,kBAAkB,CAAC,SAAiB,EAAE,KAAa;IAC/D,OAAO;QACH,cAAc;QACd,KAAK;QACL,SAAS;QACT,KAAK,CAAC,QAAQ,EAAE;KACnB,CAAC;AACN,CAAC;AAPD,gDAOC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CONSTRAINT_CREATE.js","sourceRoot":"","sources":["../../../src/commands/CONSTRAINT_CREATE.ts"],"names":[],"mappings":";;;AACA,IAAY,cAGX;AAHD,WAAY,cAAc;IACtB,yCAAuB,CAAA;IACvB,mCAAiB,CAAA;AACrB,CAAC,EAHW,cAAc,8BAAd,cAAc,QAGzB;AAED,IAAY,UAGX;AAHD,WAAY,UAAU;IAClB,2BAAa,CAAA;IACb,2CAA6B,CAAA;AACjC,CAAC,EAHW,UAAU,0BAAV,UAAU,QAGrB;AAED,qHAAqH;AACrH,SAAgB,kBAAkB,CAC9B,GAAW,EACX,cAA8B,EAC9B,UAAsB,EACtB,KAAa,EACb,GAAG,UAAoB;IACvB,OAAO;QACC,kBAAkB,EAAE,QAAQ;QAC5B,GAAG,EAAE,cAAc,EAAE,UAAU,EAAE,KAAK;QACtC,YAAY,EAAE,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,GAAG,UAAU;KAChE,CAAC;AACN,CAAC;AAXD,gDAWC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CONSTRAINT_DROP.js","sourceRoot":"","sources":["../../../src/commands/CONSTRAINT_DROP.ts"],"names":[],"mappings":";;;AAEA,mHAAmH;AACnH,SAAgB,kBAAkB,CAC9B,GAAW,EACX,cAA8B,EAC9B,UAAsB,EACtB,KAAa,EACb,GAAG,UAAoB;IACvB,OAAO;QACC,kBAAkB,EAAE,MAAM;QAC1B,GAAG,EAAE,cAAc,EAAE,UAAU,EAAE,KAAK;QACtC,YAAY,EAAE,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,GAAG,UAAU;KAChE,CAAC;AACN,CAAC;AAXD,gDAWC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"COPY.js","sourceRoot":"","sources":["../../../src/commands/COPY.ts"],"names":[],"mappings":";;;AACA,SAAgB,kBAAkB,CAAE,QAAgB,EAAE,SAAiB;IACnE,OAAO;QACH,YAAY;QACZ,QAAQ;QACR,SAAS;KACZ,CAAC;AACN,CAAC;AAND,gDAMC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"DELETE.js","sourceRoot":"","sources":["../../../src/commands/DELETE.ts"],"names":[],"mappings":";;;AAAa,QAAA,eAAe,GAAG,CAAC,CAAC;AAEjC,SAAgB,kBAAkB,CAAC,GAAW;IAC1C,OAAO,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;AACjC,CAAC;AAFD,gDAEC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"EXPLAIN.js","sourceRoot":"","sources":["../../../src/commands/EXPLAIN.ts"],"names":[],"mappings":";;;AAAa,QAAA,eAAe,GAAG,CAAC,CAAC;AAEpB,QAAA,YAAY,GAAG,IAAI,CAAC;AAEjC,SAAgB,kBAAkB,CAAC,GAAW,EAAE,KAAa;IACzD,OAAO,CAAC,eAAe,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;AACzC,CAAC;AAFD,gDAEC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"INFO.js","sourceRoot":"","sources":["../../../src/commands/INFO.ts"],"names":[],"mappings":";;;AAAa,QAAA,YAAY,GAAG,IAAI,CAAC;AAEjC,SAAgB,kBAAkB,CAAC,OAAgB;IAC/C,MAAM,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;IAE5B,IAAI,OAAO,EAAE,CAAC;QACV,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACvB,CAAC;IAED,OAAO,IAAI,CAAC;AAChB,CAAC;AARD,gDAQC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"LIST.js","sourceRoot":"","sources":["../../../src/commands/LIST.ts"],"names":[],"mappings":";;;AAAa,QAAA,YAAY,GAAG,IAAI,CAAC;AAEjC,SAAgB,kBAAkB;IAC9B,OAAO,CAAC,YAAY,CAAC,CAAC;AAC1B,CAAC;AAFD,gDAEC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PROFILE.js","sourceRoot":"","sources":["../../../src/commands/PROFILE.ts"],"names":[],"mappings":";;;AAAa,QAAA,eAAe,GAAG,CAAC,CAAC;AAEpB,QAAA,YAAY,GAAG,IAAI,CAAC;AAEjC,SAAgB,kBAAkB,CAAC,GAAW,EAAE,KAAa;IACzD,OAAO,CAAC,eAAe,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;AACzC,CAAC;AAFD,gDAEC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"QUERY.js","sourceRoot":"","sources":["../../../src/commands/QUERY.ts"],"names":[],"mappings":";;;AACA,wBAAuE;AAE1D,QAAA,eAAe,GAAG,CAAC,CAAC;AAEjC,SAAgB,kBAAkB,CAC9B,KAA2B,EAC3B,KAA2B,EAC3B,OAAwC,EACxC,OAAiB;IAEjB,OAAO,IAAA,qBAAkB,EACrB,CAAC,aAAa,CAAC,EACf,KAAK,EACL,KAAK,EACL,OAAO,EACP,OAAO,CACV,CAAC;AACN,CAAC;AAbD,gDAaC;AA0BD,SAAgB,cAAc,CAAC,KAAoB;IAC/C,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC;QACxB,OAAO,EAAE,SAAS;QAClB,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;KACrB,CAAC,CAAC,CAAC;QACA,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;QACjB,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;QACd,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;KACrB,CAAC;AACN,CAAC;AAVD,wCAUC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RO_QUERY.js","sourceRoot":"","sources":["../../../src/commands/RO_QUERY.ts"],"names":[],"mappings":";;;AACA,wBAAuE;AAEvE,iCAA0C;AAAjC,wGAAA,eAAe,OAAA;AAEX,QAAA,YAAY,GAAG,IAAI,CAAC;AAEjC,SAAgB,kBAAkB,CAC9B,KAA2B,EAC3B,KAA2B,EAC3B,OAAwC,EACxC,OAAiB;IAEjB,OAAO,IAAA,qBAAkB,EACrB,CAAC,gBAAgB,CAAC,EAClB,KAAK,EACL,KAAK,EACL,OAAO,EACP,OAAO,CACV,CAAC;AACN,CAAC;AAbD,gDAaC;AAED,iCAAyC;AAAhC,uGAAA,cAAc,OAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SENTINEL_MASTER.js","sourceRoot":"","sources":["../../../src/commands/SENTINEL_MASTER.ts"],"names":[],"mappings":";;;AAAa,QAAA,YAAY,GAAG,IAAI,CAAC;AAEjC,SAAgB,kBAAkB,CAAC,MAAc;IACzC,OAAO,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;AAC9C,CAAC;AAFD,gDAEC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SENTINEL_MASTERS.js","sourceRoot":"","sources":["../../../src/commands/SENTINEL_MASTERS.ts"],"names":[],"mappings":";;;AAAa,QAAA,YAAY,GAAG,IAAI,CAAC;AAEjC,SAAgB,kBAAkB;IAC1B,OAAO,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;AACvC,CAAC;AAFD,gDAEC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SLOWLOG.js","sourceRoot":"","sources":["../../../src/commands/SLOWLOG.ts"],"names":[],"mappings":";;;AAAa,QAAA,YAAY,GAAG,IAAI,CAAC;AAEpB,QAAA,eAAe,GAAG,CAAC,CAAC;AAEjC,SAAgB,kBAAkB,CAAC,GAAW;IAC1C,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC;AAClC,CAAC;AAFD,gDAEC;AAgBD,SAAgB,cAAc,CAAC,IAAqB;IAChD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QACpD,SAAS,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;QAC7C,OAAO;QACP,KAAK;QACL,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC;KACrB,CAAC,CAAC,CAAC;AACR,CAAC;AAPD,wCAOC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/index.ts"],"names":[],"mappings":"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"}
|
package/dist/src/edge.d.ts
DELETED
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { GraphEntityProperties } from "./parser";
|
|
2
|
-
/**
|
|
3
|
-
* An edge connecting two nodes.
|
|
4
|
-
*/
|
|
5
|
-
export default class Edge {
|
|
6
|
-
#private;
|
|
7
|
-
/**
|
|
8
|
-
* Builds an Edge object.
|
|
9
|
-
* @param {number} srcId - Source node of the edge.
|
|
10
|
-
* @param {string} relationshipType - Relationship type of the edge.
|
|
11
|
-
* @param {number} destId - Destination node of the edge.
|
|
12
|
-
* @param {GraphEntityProperties} properties - Properties map of the edge.
|
|
13
|
-
*/
|
|
14
|
-
constructor(id: number, srcId: number, relationshipType: string, destId: number, properties: GraphEntityProperties);
|
|
15
|
-
get id(): number;
|
|
16
|
-
get relationshipId(): string;
|
|
17
|
-
get srcId(): number;
|
|
18
|
-
get destId(): number;
|
|
19
|
-
get properties(): GraphEntityProperties;
|
|
20
|
-
/**
|
|
21
|
-
* @returns The string representation of the edge.
|
|
22
|
-
*/
|
|
23
|
-
toString(): string;
|
|
24
|
-
}
|