@clickhouse/client 0.0.11 → 0.0.12
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/LICENSE +2 -2
- package/dist/client.d.ts +4 -3
- package/dist/client.js +7 -6
- package/dist/client.js.map +1 -1
- package/dist/connection/adapter/base_http_adapter.d.ts +5 -4
- package/dist/connection/adapter/base_http_adapter.js +50 -4
- package/dist/connection/adapter/base_http_adapter.js.map +1 -1
- package/dist/connection/adapter/http_search_params.d.ts +2 -1
- package/dist/connection/adapter/http_search_params.js +4 -1
- package/dist/connection/adapter/http_search_params.js.map +1 -1
- package/dist/connection/connection.d.ts +11 -3
- package/dist/connection/connection.js.map +1 -1
- package/dist/data_formatter/formatter.d.ts +3 -3
- package/dist/result.d.ts +2 -1
- package/dist/result.js +7 -1
- package/dist/result.js.map +1 -1
- package/dist/schema/table.js +4 -3
- package/dist/schema/table.js.map +1 -1
- package/dist/utils/process.d.ts +1 -0
- package/dist/utils/process.js +9 -0
- package/dist/utils/process.js.map +1 -0
- package/dist/utils/user_agent.d.ts +7 -0
- package/dist/utils/user_agent.js +46 -0
- package/dist/utils/user_agent.js.map +1 -0
- package/dist/version.d.ts +2 -0
- package/dist/version.js +4 -0
- package/dist/version.js.map +1 -0
- package/package.json +15 -15
package/LICENSE
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
Copyright 2016-
|
|
1
|
+
Copyright 2016-2023 ClickHouse, Inc.
|
|
2
2
|
|
|
3
3
|
Apache License
|
|
4
4
|
Version 2.0, January 2004
|
|
@@ -188,7 +188,7 @@ Copyright 2016-2022 ClickHouse, Inc.
|
|
|
188
188
|
same "printed page" as the copyright notice for easier
|
|
189
189
|
identification within third-party archives.
|
|
190
190
|
|
|
191
|
-
Copyright 2016-
|
|
191
|
+
Copyright 2016-2023 ClickHouse, Inc.
|
|
192
192
|
|
|
193
193
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
194
194
|
you may not use this file except in compliance with the License.
|
package/dist/client.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
/// <reference types="node" />
|
|
3
3
|
import Stream from 'stream';
|
|
4
|
+
import type { InsertResult, QueryResult } from './connection';
|
|
4
5
|
import type { Logger } from './logger';
|
|
5
6
|
import { type DataFormat } from './data_formatter';
|
|
6
7
|
import { ResultSet } from './result';
|
|
@@ -25,7 +26,7 @@ export interface ClickHouseClientConfigOptions {
|
|
|
25
26
|
username?: string;
|
|
26
27
|
/** The user password. Default: ''. */
|
|
27
28
|
password?: string;
|
|
28
|
-
/** The name of the application using the nodejs client. Default:
|
|
29
|
+
/** The name of the application using the nodejs client. Default: empty. */
|
|
29
30
|
application?: string;
|
|
30
31
|
/** Database name to use. Default value: `default`. */
|
|
31
32
|
database?: string;
|
|
@@ -80,8 +81,8 @@ export declare class ClickHouseClient {
|
|
|
80
81
|
constructor(config?: ClickHouseClientConfigOptions);
|
|
81
82
|
private getBaseParams;
|
|
82
83
|
query(params: QueryParams): Promise<ResultSet>;
|
|
83
|
-
exec(params: ExecParams): Promise<
|
|
84
|
-
insert<T>(params: InsertParams<T>): Promise<
|
|
84
|
+
exec(params: ExecParams): Promise<QueryResult>;
|
|
85
|
+
insert<T>(params: InsertParams<T>): Promise<InsertResult>;
|
|
85
86
|
ping(): Promise<boolean>;
|
|
86
87
|
close(): Promise<void>;
|
|
87
88
|
}
|
package/dist/client.js
CHANGED
|
@@ -42,6 +42,7 @@ function normalizeConfig(config) {
|
|
|
42
42
|
}
|
|
43
43
|
}
|
|
44
44
|
return {
|
|
45
|
+
application_id: config.application,
|
|
45
46
|
url: createUrl((_a = config.host) !== null && _a !== void 0 ? _a : 'http://localhost:8123'),
|
|
46
47
|
connect_timeout: (_b = config.connect_timeout) !== null && _b !== void 0 ? _b : 10000,
|
|
47
48
|
request_timeout: (_c = config.request_timeout) !== null && _c !== void 0 ? _c : 300000,
|
|
@@ -102,15 +103,15 @@ class ClickHouseClient {
|
|
|
102
103
|
var _a;
|
|
103
104
|
const format = (_a = params.format) !== null && _a !== void 0 ? _a : 'JSON';
|
|
104
105
|
const query = formatQuery(params.query, format);
|
|
105
|
-
const stream = await this.connection.query({
|
|
106
|
+
const { stream, query_id } = await this.connection.query({
|
|
106
107
|
query,
|
|
107
108
|
...this.getBaseParams(params),
|
|
108
109
|
});
|
|
109
|
-
return new result_1.ResultSet(stream, format);
|
|
110
|
+
return new result_1.ResultSet(stream, format, query_id);
|
|
110
111
|
}
|
|
111
|
-
exec(params) {
|
|
112
|
+
async exec(params) {
|
|
112
113
|
const query = removeTrailingSemi(params.query.trim());
|
|
113
|
-
return this.connection.exec({
|
|
114
|
+
return await this.connection.exec({
|
|
114
115
|
query,
|
|
115
116
|
...this.getBaseParams(params),
|
|
116
117
|
});
|
|
@@ -118,8 +119,8 @@ class ClickHouseClient {
|
|
|
118
119
|
async insert(params) {
|
|
119
120
|
const format = params.format || 'JSONCompactEachRow';
|
|
120
121
|
validateInsertValues(params.values, format);
|
|
121
|
-
const query = `INSERT
|
|
122
|
-
await this.connection.insert({
|
|
122
|
+
const query = `INSERT INTO ${params.table.trim()} FORMAT ${format}`;
|
|
123
|
+
return await this.connection.insert({
|
|
123
124
|
query,
|
|
124
125
|
values: encodeValues(params.values, format),
|
|
125
126
|
...this.getBaseParams(params),
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
import Stream from 'stream';
|
|
4
4
|
import type Http from 'http';
|
|
5
5
|
import type { Logger } from '../../logger';
|
|
6
|
-
import type { BaseParams, Connection, ConnectionParams, InsertParams } from '../connection';
|
|
6
|
+
import type { BaseParams, Connection, ConnectionParams, InsertParams, InsertResult, QueryResult } from '../connection';
|
|
7
7
|
export interface RequestParams {
|
|
8
8
|
method: 'GET' | 'POST';
|
|
9
9
|
url: URL;
|
|
@@ -22,10 +22,11 @@ export declare abstract class BaseHttpAdapter implements Connection {
|
|
|
22
22
|
protected abstract createClientRequest(url: URL, params: RequestParams): Http.ClientRequest;
|
|
23
23
|
protected request(params: RequestParams): Promise<Stream.Readable>;
|
|
24
24
|
ping(): Promise<boolean>;
|
|
25
|
-
query(params: BaseParams): Promise<
|
|
26
|
-
exec(params: BaseParams): Promise<
|
|
27
|
-
insert(params: InsertParams): Promise<
|
|
25
|
+
query(params: BaseParams): Promise<QueryResult>;
|
|
26
|
+
exec(params: BaseParams): Promise<QueryResult>;
|
|
27
|
+
insert(params: InsertParams): Promise<InsertResult>;
|
|
28
28
|
close(): Promise<void>;
|
|
29
|
+
private generateQueryId;
|
|
29
30
|
private logResponse;
|
|
30
31
|
protected getHeaders(params: RequestParams): {
|
|
31
32
|
'Content-Encoding'?: string | undefined;
|
|
@@ -1,4 +1,27 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
2
25
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
26
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
27
|
};
|
|
@@ -10,6 +33,8 @@ const error_1 = require("../../error");
|
|
|
10
33
|
const http_search_params_1 = require("./http_search_params");
|
|
11
34
|
const transform_url_1 = require("./transform_url");
|
|
12
35
|
const utils_1 = require("../../utils");
|
|
36
|
+
const user_agent_1 = require("../../utils/user_agent");
|
|
37
|
+
const uuid = __importStar(require("uuid"));
|
|
13
38
|
function isSuccessfulResponse(statusCode) {
|
|
14
39
|
return Boolean(statusCode && 200 <= statusCode && statusCode < 300);
|
|
15
40
|
}
|
|
@@ -78,6 +103,7 @@ class BaseHttpAdapter {
|
|
|
78
103
|
buildDefaultHeaders(username, password) {
|
|
79
104
|
return {
|
|
80
105
|
Authorization: `Basic ${Buffer.from(`${username}:${password}`).toString('base64')}`,
|
|
106
|
+
'User-Agent': (0, user_agent_1.getUserAgent)(this.config.application_id),
|
|
81
107
|
};
|
|
82
108
|
}
|
|
83
109
|
async request(params) {
|
|
@@ -185,50 +211,64 @@ class BaseHttpAdapter {
|
|
|
185
211
|
}
|
|
186
212
|
async ping() {
|
|
187
213
|
// TODO add status code check
|
|
188
|
-
const
|
|
214
|
+
const stream = await this.request({
|
|
189
215
|
method: 'GET',
|
|
190
216
|
url: (0, transform_url_1.transformUrl)({ url: this.config.url, pathname: '/ping' }),
|
|
191
217
|
});
|
|
192
|
-
|
|
218
|
+
stream.destroy();
|
|
193
219
|
return true;
|
|
194
220
|
}
|
|
195
221
|
async query(params) {
|
|
222
|
+
const query_id = this.generateQueryId();
|
|
196
223
|
const clickhouse_settings = withHttpSettings(params.clickhouse_settings, this.config.compression.decompress_response);
|
|
197
224
|
const searchParams = (0, http_search_params_1.toSearchParams)({
|
|
198
225
|
database: this.config.database,
|
|
199
226
|
clickhouse_settings,
|
|
200
227
|
query_params: params.query_params,
|
|
201
228
|
session_id: params.session_id,
|
|
229
|
+
query_id,
|
|
202
230
|
});
|
|
203
|
-
|
|
231
|
+
const stream = await this.request({
|
|
204
232
|
method: 'POST',
|
|
205
233
|
url: (0, transform_url_1.transformUrl)({ url: this.config.url, pathname: '/', searchParams }),
|
|
206
234
|
body: params.query,
|
|
207
235
|
abort_signal: params.abort_signal,
|
|
208
236
|
decompress_response: clickhouse_settings.enable_http_compression === 1,
|
|
209
237
|
});
|
|
238
|
+
return {
|
|
239
|
+
stream,
|
|
240
|
+
query_id,
|
|
241
|
+
};
|
|
210
242
|
}
|
|
211
243
|
async exec(params) {
|
|
244
|
+
const query_id = this.generateQueryId();
|
|
212
245
|
const searchParams = (0, http_search_params_1.toSearchParams)({
|
|
213
246
|
database: this.config.database,
|
|
214
247
|
clickhouse_settings: params.clickhouse_settings,
|
|
215
248
|
query_params: params.query_params,
|
|
216
249
|
session_id: params.session_id,
|
|
250
|
+
query_id,
|
|
217
251
|
});
|
|
218
|
-
|
|
252
|
+
const stream = await this.request({
|
|
219
253
|
method: 'POST',
|
|
220
254
|
url: (0, transform_url_1.transformUrl)({ url: this.config.url, pathname: '/', searchParams }),
|
|
221
255
|
body: params.query,
|
|
222
256
|
abort_signal: params.abort_signal,
|
|
223
257
|
});
|
|
258
|
+
return {
|
|
259
|
+
stream,
|
|
260
|
+
query_id,
|
|
261
|
+
};
|
|
224
262
|
}
|
|
225
263
|
async insert(params) {
|
|
264
|
+
const query_id = this.generateQueryId();
|
|
226
265
|
const searchParams = (0, http_search_params_1.toSearchParams)({
|
|
227
266
|
database: this.config.database,
|
|
228
267
|
clickhouse_settings: params.clickhouse_settings,
|
|
229
268
|
query_params: params.query_params,
|
|
230
269
|
query: params.query,
|
|
231
270
|
session_id: params.session_id,
|
|
271
|
+
query_id,
|
|
232
272
|
});
|
|
233
273
|
await this.request({
|
|
234
274
|
method: 'POST',
|
|
@@ -237,12 +277,18 @@ class BaseHttpAdapter {
|
|
|
237
277
|
abort_signal: params.abort_signal,
|
|
238
278
|
compress_request: this.config.compression.compress_request,
|
|
239
279
|
});
|
|
280
|
+
return { query_id };
|
|
240
281
|
}
|
|
241
282
|
async close() {
|
|
242
283
|
if (this.agent !== undefined && this.agent.destroy !== undefined) {
|
|
243
284
|
this.agent.destroy();
|
|
244
285
|
}
|
|
245
286
|
}
|
|
287
|
+
// needed for insert queries as the query_id is not generated automatically
|
|
288
|
+
// we will use it for `exec` and `insert` methods, but not `select`
|
|
289
|
+
generateQueryId() {
|
|
290
|
+
return uuid.v4();
|
|
291
|
+
}
|
|
246
292
|
logResponse(request, params, response, startTimestamp) {
|
|
247
293
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
248
294
|
const { authorization, host, ...headers } = request.getHeaders();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base_http_adapter.js","sourceRoot":"","sources":["../../../src/connection/adapter/base_http_adapter.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"base_http_adapter.js","sourceRoot":"","sources":["../../../src/connection/adapter/base_http_adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,7 @@ type ToSearchParamsOptions = {
|
|
|
5
5
|
query_params?: Record<string, unknown>;
|
|
6
6
|
query?: string;
|
|
7
7
|
session_id?: string;
|
|
8
|
+
query_id?: string;
|
|
8
9
|
};
|
|
9
|
-
export declare function toSearchParams({ database, query, query_params, clickhouse_settings, session_id, }: ToSearchParamsOptions): URLSearchParams | undefined;
|
|
10
|
+
export declare function toSearchParams({ database, query, query_params, clickhouse_settings, session_id, query_id, }: ToSearchParamsOptions): URLSearchParams | undefined;
|
|
10
11
|
export {};
|
|
@@ -4,7 +4,7 @@ exports.toSearchParams = void 0;
|
|
|
4
4
|
const data_formatter_1 = require("../../data_formatter/");
|
|
5
5
|
// TODO validate max length of the resulting query
|
|
6
6
|
// https://stackoverflow.com/questions/812925/what-is-the-maximum-possible-length-of-a-query-string
|
|
7
|
-
function toSearchParams({ database, query, query_params, clickhouse_settings, session_id, }) {
|
|
7
|
+
function toSearchParams({ database, query, query_params, clickhouse_settings, session_id, query_id, }) {
|
|
8
8
|
if (clickhouse_settings === undefined &&
|
|
9
9
|
query_params === undefined &&
|
|
10
10
|
query === undefined &&
|
|
@@ -33,6 +33,9 @@ function toSearchParams({ database, query, query_params, clickhouse_settings, se
|
|
|
33
33
|
if (session_id) {
|
|
34
34
|
params.set('session_id', session_id);
|
|
35
35
|
}
|
|
36
|
+
if (query_id) {
|
|
37
|
+
params.set('query_id', query_id);
|
|
38
|
+
}
|
|
36
39
|
return params;
|
|
37
40
|
}
|
|
38
41
|
exports.toSearchParams = toSearchParams;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http_search_params.js","sourceRoot":"","sources":["../../../src/connection/adapter/http_search_params.ts"],"names":[],"mappings":";;;AAAA,0DAA8E;
|
|
1
|
+
{"version":3,"file":"http_search_params.js","sourceRoot":"","sources":["../../../src/connection/adapter/http_search_params.ts"],"names":[],"mappings":";;;AAAA,0DAA8E;AAY9E,kDAAkD;AAClD,mGAAmG;AACnG,SAAgB,cAAc,CAAC,EAC7B,QAAQ,EACR,KAAK,EACL,YAAY,EACZ,mBAAmB,EACnB,UAAU,EACV,QAAQ,GACc;IACtB,IACE,mBAAmB,KAAK,SAAS;QACjC,YAAY,KAAK,SAAS;QAC1B,KAAK,KAAK,SAAS;QACnB,QAAQ,KAAK,SAAS,EACtB;QACA,OAAM;KACP;IAED,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAA;IAEpC,IAAI,YAAY,KAAK,SAAS,EAAE;QAC9B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;YACvD,MAAM,CAAC,GAAG,CAAC,SAAS,GAAG,EAAE,EAAE,IAAA,kCAAiB,EAAC,KAAK,CAAC,CAAC,CAAA;SACrD;KACF;IAED,IAAI,mBAAmB,KAAK,SAAS,EAAE;QACrC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,mBAAmB,CAAC,EAAE;YAC9D,IAAI,KAAK,KAAK,SAAS,EAAE;gBACvB,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,IAAA,oCAAmB,EAAC,KAAK,CAAC,CAAC,CAAA;aAC5C;SACF;KACF;IAED,IAAI,QAAQ,KAAK,SAAS,EAAE;QAC1B,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;KACjC;IAED,IAAI,KAAK,EAAE;QACT,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;KAC3B;IAED,IAAI,UAAU,EAAE;QACd,MAAM,CAAC,GAAG,CAAC,YAAY,EAAE,UAAU,CAAC,CAAA;KACrC;IAED,IAAI,QAAQ,EAAE;QACZ,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;KACjC;IAED,OAAO,MAAM,CAAA;AACf,CAAC;AAlDD,wCAkDC"}
|
|
@@ -5,6 +5,7 @@ import type { LogWriter } from '../logger';
|
|
|
5
5
|
import type { ClickHouseSettings } from '../settings';
|
|
6
6
|
export interface ConnectionParams {
|
|
7
7
|
url: URL;
|
|
8
|
+
application_id?: string;
|
|
8
9
|
connect_timeout: number;
|
|
9
10
|
request_timeout: number;
|
|
10
11
|
max_open_connections: number;
|
|
@@ -36,11 +37,18 @@ export interface BaseParams {
|
|
|
36
37
|
export interface InsertParams extends BaseParams {
|
|
37
38
|
values: string | Stream.Readable;
|
|
38
39
|
}
|
|
40
|
+
export interface QueryResult {
|
|
41
|
+
stream: Stream.Readable;
|
|
42
|
+
query_id: string;
|
|
43
|
+
}
|
|
44
|
+
export interface InsertResult {
|
|
45
|
+
query_id: string;
|
|
46
|
+
}
|
|
39
47
|
export interface Connection {
|
|
40
48
|
ping(): Promise<boolean>;
|
|
41
49
|
close(): Promise<void>;
|
|
42
|
-
query(params: BaseParams): Promise<
|
|
43
|
-
exec(params: BaseParams): Promise<
|
|
44
|
-
insert(params: InsertParams): Promise<
|
|
50
|
+
query(params: BaseParams): Promise<QueryResult>;
|
|
51
|
+
exec(params: BaseParams): Promise<QueryResult>;
|
|
52
|
+
insert(params: InsertParams): Promise<InsertResult>;
|
|
45
53
|
}
|
|
46
54
|
export declare function createConnection(params: ConnectionParams, logger: LogWriter): Connection;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection.js","sourceRoot":"","sources":["../../src/connection/connection.ts"],"names":[],"mappings":";;;AAEA,uCAAqD;
|
|
1
|
+
{"version":3,"file":"connection.js","sourceRoot":"","sources":["../../src/connection/connection.ts"],"names":[],"mappings":";;;AAEA,uCAAqD;AAiErD,SAAgB,gBAAgB,CAC9B,MAAwB,EACxB,MAAiB;IAEjB,oCAAoC;IACpC,QAAQ,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE;QAC3B,KAAK,OAAO;YACV,OAAO,IAAI,qBAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QACxC,KAAK,QAAQ;YACX,OAAO,IAAI,sBAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QACzC;YACE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;KACzD;AACH,CAAC;AAbD,4CAaC"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
declare const supportedJSONFormats: readonly ["JSON", "JSONObjectEachRow", "JSONEachRow", "JSONStringsEachRow", "JSONCompactEachRow", "JSONCompactStringsEachRow", "JSONCompactEachRowWithNames", "JSONCompactEachRowWithNamesAndTypes", "JSONCompactStringsEachRowWithNames", "JSONCompactStringsEachRowWithNamesAndTypes"];
|
|
2
2
|
declare const supportedRawFormats: readonly ["CSV", "CSVWithNames", "CSVWithNamesAndTypes", "TabSeparated", "TabSeparatedRaw", "TabSeparatedWithNames", "TabSeparatedWithNamesAndTypes", "CustomSeparated", "CustomSeparatedWithNames", "CustomSeparatedWithNamesAndTypes"];
|
|
3
|
-
export type JSONDataFormat = typeof supportedJSONFormats[number];
|
|
4
|
-
export type RawDataFormat = typeof supportedRawFormats[number];
|
|
3
|
+
export type JSONDataFormat = (typeof supportedJSONFormats)[number];
|
|
4
|
+
export type RawDataFormat = (typeof supportedRawFormats)[number];
|
|
5
5
|
export type DataFormat = JSONDataFormat | RawDataFormat;
|
|
6
6
|
declare const streamableFormat: readonly ["JSONEachRow", "JSONStringsEachRow", "JSONCompactEachRow", "JSONCompactStringsEachRow", "JSONCompactEachRowWithNames", "JSONCompactEachRowWithNamesAndTypes", "JSONCompactStringsEachRowWithNames", "JSONCompactStringsEachRowWithNamesAndTypes", "CSV", "CSVWithNames", "CSVWithNamesAndTypes", "TabSeparated", "TabSeparatedRaw", "TabSeparatedWithNames", "TabSeparatedWithNamesAndTypes", "CustomSeparated", "CustomSeparatedWithNames", "CustomSeparatedWithNamesAndTypes"];
|
|
7
|
-
type StreamableDataFormat = typeof streamableFormat[number];
|
|
7
|
+
type StreamableDataFormat = (typeof streamableFormat)[number];
|
|
8
8
|
export declare function isSupportedRawFormat(dataFormat: DataFormat): boolean;
|
|
9
9
|
export declare function validateStreamFormat(format: any): format is StreamableDataFormat;
|
|
10
10
|
/**
|
package/dist/result.d.ts
CHANGED
|
@@ -4,7 +4,8 @@ import { type DataFormat } from './data_formatter';
|
|
|
4
4
|
export declare class ResultSet {
|
|
5
5
|
private _stream;
|
|
6
6
|
private readonly format;
|
|
7
|
-
|
|
7
|
+
readonly query_id: string;
|
|
8
|
+
constructor(_stream: Stream.Readable, format: DataFormat, query_id: string);
|
|
8
9
|
/**
|
|
9
10
|
* The method waits for all the rows to be fully loaded
|
|
10
11
|
* and returns the result as a string.
|
package/dist/result.js
CHANGED
|
@@ -28,7 +28,7 @@ const stream_1 = __importStar(require("stream"));
|
|
|
28
28
|
const utils_1 = require("./utils");
|
|
29
29
|
const data_formatter_1 = require("./data_formatter");
|
|
30
30
|
class ResultSet {
|
|
31
|
-
constructor(_stream, format) {
|
|
31
|
+
constructor(_stream, format, query_id) {
|
|
32
32
|
Object.defineProperty(this, "_stream", {
|
|
33
33
|
enumerable: true,
|
|
34
34
|
configurable: true,
|
|
@@ -41,6 +41,12 @@ class ResultSet {
|
|
|
41
41
|
writable: true,
|
|
42
42
|
value: format
|
|
43
43
|
});
|
|
44
|
+
Object.defineProperty(this, "query_id", {
|
|
45
|
+
enumerable: true,
|
|
46
|
+
configurable: true,
|
|
47
|
+
writable: true,
|
|
48
|
+
value: query_id
|
|
49
|
+
});
|
|
44
50
|
}
|
|
45
51
|
/**
|
|
46
52
|
* The method waits for all the rows to be fully loaded
|
package/dist/result.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"result.js","sourceRoot":"","sources":["../src/result.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,iDAA0C;AAE1C,mCAAmC;AACnC,qDAAgF;AAEhF,MAAa,SAAS;IACpB,YACU,OAAwB,EACf,MAAkB;;;;;
|
|
1
|
+
{"version":3,"file":"result.js","sourceRoot":"","sources":["../src/result.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,iDAA0C;AAE1C,mCAAmC;AACnC,qDAAgF;AAEhF,MAAa,SAAS;IACpB,YACU,OAAwB,EACf,MAAkB,EACnB,QAAgB;;;;;mBAFxB;;;;;;mBACS;;;;;;mBACD;;IACf,CAAC;IAEJ;;;;;;OAMG;IACH,KAAK,CAAC,IAAI;QACR,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE;YAC9B,MAAM,KAAK,CAAC,4BAA4B,CAAC,CAAA;SAC1C;QACD,OAAO,CAAC,MAAM,IAAA,iBAAS,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;IACnD,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,IAAI;QACR,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE;YAC9B,MAAM,KAAK,CAAC,4BAA4B,CAAC,CAAA;SAC1C;QACD,OAAO,IAAA,uBAAM,EAAC,MAAM,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;IAC/C,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,MAAM;QACJ,0EAA0E;QAC1E,iDAAiD;QACjD,+CAA+C;QAC/C,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE;YAC9B,MAAM,KAAK,CAAC,4BAA4B,CAAC,CAAA;SAC1C;QAED,IAAA,qCAAoB,EAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAEjC,IAAI,YAAY,GAAG,EAAE,CAAA;QACrB,MAAM,MAAM,GAAG,IAAI,kBAAS,CAAC;YAC3B,SAAS,CACP,KAAa,EACb,QAAwB,EACxB,QAA2B;gBAE3B,YAAY,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAA;gBAChC,MAAM,IAAI,GAAU,EAAE,CAAA;gBACtB,iDAAiD;gBACjD,OAAO,IAAI,EAAE;oBACX,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;oBACtC,IAAI,GAAG,KAAK,CAAC,CAAC,EAAE;wBACd,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;wBACvC,YAAY,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAA;wBAC1C,IAAI,CAAC,IAAI,CAAC;4BACR,IAAI;4BACJ,IAAI;gCACF,OAAO,IAAA,uBAAM,EAAC,IAAI,EAAE,MAAM,CAAC,CAAA;4BAC7B,CAAC;yBACF,CAAC,CAAA;qBACH;yBAAM;wBACL,IAAI,IAAI,CAAC,MAAM,EAAE;4BACf,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;yBAChB;wBACD,MAAK;qBACN;iBACF;gBACD,QAAQ,EAAE,CAAA;YACZ,CAAC;YACD,WAAW,EAAE,IAAI;YACjB,UAAU,EAAE,IAAI;SACjB,CAAC,CAAA;QAEF,OAAO,gBAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,UAAU,CAAC,GAAG;YAClE,IAAI,GAAG,EAAE;gBACP,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;aACnB;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,KAAK;QACH,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAA;IACxB,CAAC;CACF;AAtGD,8BAsGC;AAgBD,MAAM,4BAA4B,GAAG,kCAAkC,CAAA"}
|
package/dist/schema/table.js
CHANGED
|
@@ -20,13 +20,14 @@ class Table {
|
|
|
20
20
|
// TODO: better types
|
|
21
21
|
async create(options) {
|
|
22
22
|
const query = query_formatter_1.QueryFormatter.createTable(this.options, options);
|
|
23
|
-
|
|
23
|
+
const { stream } = await this.client.exec({
|
|
24
24
|
query,
|
|
25
25
|
clickhouse_settings: options.clickhouse_settings,
|
|
26
26
|
});
|
|
27
|
+
return stream;
|
|
27
28
|
}
|
|
28
|
-
insert({ abort_signal, clickhouse_settings, values, }) {
|
|
29
|
-
|
|
29
|
+
async insert({ abort_signal, clickhouse_settings, values, }) {
|
|
30
|
+
await this.client.insert({
|
|
30
31
|
clickhouse_settings,
|
|
31
32
|
abort_signal,
|
|
32
33
|
table: (0, query_formatter_1.getTableName)(this.options),
|
package/dist/schema/table.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.js","sourceRoot":"","sources":["../../src/schema/table.ts"],"names":[],"mappings":";;;AAGA,uDAAgE;AA4ChE,MAAa,KAAK;IAChB,YACmB,MAAwB,EACxB,OAAwB;;;;;mBADxB;;;;;;mBACA;;IAChB,CAAC;IAEJ,qBAAqB;IACrB,KAAK,CAAC,MAAM,CAAC,OAA8B;QACzC,MAAM,KAAK,GAAG,gCAAc,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QAC/D,
|
|
1
|
+
{"version":3,"file":"table.js","sourceRoot":"","sources":["../../src/schema/table.ts"],"names":[],"mappings":";;;AAGA,uDAAgE;AA4ChE,MAAa,KAAK;IAChB,YACmB,MAAwB,EACxB,OAAwB;;;;;mBADxB;;;;;;mBACA;;IAChB,CAAC;IAEJ,qBAAqB;IACrB,KAAK,CAAC,MAAM,CAAC,OAA8B;QACzC,MAAM,KAAK,GAAG,gCAAc,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QAC/D,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;YACxC,KAAK;YACL,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;SACjD,CAAC,CAAA;QACF,OAAO,MAAM,CAAA;IACf,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EACX,YAAY,EACZ,mBAAmB,EACnB,MAAM,GACW;QACjB,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;YACvB,mBAAmB;YACnB,YAAY;YACZ,KAAK,EAAE,IAAA,8BAAY,EAAC,IAAI,CAAC,OAAO,CAAC;YACjC,MAAM,EAAE,aAAa;YACrB,MAAM;SACP,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EACX,YAAY,EACZ,mBAAmB,EACnB,OAAO,EACP,QAAQ,EACR,KAAK,MACe,EAAE;QACtB,MAAM,KAAK,GAAG,gCAAc,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAA;QAC3E,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;YACjC,KAAK;YACL,mBAAmB;YACnB,YAAY;YACZ,MAAM,EAAE,aAAa;SACtB,CAAC,CAAA;QAEF,MAAM,MAAM,GAAG,EAAE,CAAC,MAAM,EAAE,CAAA;QAC1B,KAAK,SAAS,CAAC,CAAC,cAAc;YAC5B,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,MAAM,EAAE;gBAC/B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;oBACtB,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,EAAe,CAAA;oBACrC,MAAM,KAAiB,CAAA;iBACxB;aACF;QACH,CAAC;QAED,OAAO;YACL,cAAc;YACd,IAAI,EAAE,KAAK,IAAI,EAAE;gBACf,MAAM,MAAM,GAAG,EAAE,CAAA;gBACjB,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,cAAc,EAAE,EAAE;oBAC1C,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;wBACxB,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAA;qBACtB;yBAAM;wBACL,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;qBACnB;iBACF;gBACD,OAAO,MAAM,CAAA;YACf,CAAC;SACF,CAAA;IACH,CAAC;CACF;AAtED,sBAsEC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function getProcessVersion(): string;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getProcessVersion = void 0;
|
|
4
|
+
// for easy mocking in the tests
|
|
5
|
+
function getProcessVersion() {
|
|
6
|
+
return process.version;
|
|
7
|
+
}
|
|
8
|
+
exports.getProcessVersion = getProcessVersion;
|
|
9
|
+
//# sourceMappingURL=process.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"process.js","sourceRoot":"","sources":["../../src/utils/process.ts"],"names":[],"mappings":";;;AAAA,gCAAgC;AAChC,SAAgB,iBAAiB;IAC/B,OAAO,OAAO,CAAC,OAAO,CAAA;AACxB,CAAC;AAFD,8CAEC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
+
};
|
|
28
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
exports.getUserAgent = void 0;
|
|
30
|
+
const os = __importStar(require("os"));
|
|
31
|
+
const version_1 = __importDefault(require("../version"));
|
|
32
|
+
const process_1 = require("./process");
|
|
33
|
+
/**
|
|
34
|
+
* Generate a user agent string like
|
|
35
|
+
* clickhouse-js/0.0.11 (lv:nodejs/19.0.4; os:linux)
|
|
36
|
+
* or
|
|
37
|
+
* MyApplicationName clickhouse-js/0.0.11 (lv:nodejs/19.0.4; os:linux)
|
|
38
|
+
*/
|
|
39
|
+
function getUserAgent(application_id) {
|
|
40
|
+
const defaultUserAgent = `clickhouse-js/${version_1.default} (lv:nodejs/${(0, process_1.getProcessVersion)()}; os:${os.platform()})`;
|
|
41
|
+
return application_id
|
|
42
|
+
? `${application_id} ${defaultUserAgent}`
|
|
43
|
+
: defaultUserAgent;
|
|
44
|
+
}
|
|
45
|
+
exports.getUserAgent = getUserAgent;
|
|
46
|
+
//# sourceMappingURL=user_agent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user_agent.js","sourceRoot":"","sources":["../../src/utils/user_agent.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAwB;AACxB,yDAAuC;AACvC,uCAA6C;AAE7C;;;;;GAKG;AACH,SAAgB,YAAY,CAAC,cAAuB;IAClD,MAAM,gBAAgB,GAAG,iBAAiB,iBAAc,eAAe,IAAA,2BAAiB,GAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,GAAG,CAAA;IAClH,OAAO,cAAc;QACnB,CAAC,CAAC,GAAG,cAAc,IAAI,gBAAgB,EAAE;QACzC,CAAC,CAAC,gBAAgB,CAAA;AACtB,CAAC;AALD,oCAKC"}
|
package/dist/version.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":";;AAAA,kBAAe,QAAQ,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@clickhouse/client",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.12",
|
|
4
4
|
"description": "Official JS client for ClickHouse DB",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"keywords": [
|
|
@@ -37,29 +37,29 @@
|
|
|
37
37
|
"dist"
|
|
38
38
|
],
|
|
39
39
|
"dependencies": {
|
|
40
|
-
"node-abort-controller": "^3.0.1"
|
|
40
|
+
"node-abort-controller": "^3.0.1",
|
|
41
|
+
"uuid": "^9.0.0"
|
|
41
42
|
},
|
|
42
43
|
"devDependencies": {
|
|
43
|
-
"@jest/reporters": "^29.
|
|
44
|
-
"@types/jest": "^29.
|
|
45
|
-
"@types/node": "^18.11.
|
|
44
|
+
"@jest/reporters": "^29.4.0",
|
|
45
|
+
"@types/jest": "^29.4.0",
|
|
46
|
+
"@types/node": "^18.11.18",
|
|
46
47
|
"@types/split2": "^3.2.1",
|
|
47
48
|
"@types/uuid": "^9.0.0",
|
|
48
|
-
"@typescript-eslint/eslint-plugin": "^5.
|
|
49
|
-
"@typescript-eslint/parser": "^5.
|
|
50
|
-
"eslint": "^8.
|
|
51
|
-
"eslint-config-prettier": "^8.
|
|
49
|
+
"@typescript-eslint/eslint-plugin": "^5.49.0",
|
|
50
|
+
"@typescript-eslint/parser": "^5.49.0",
|
|
51
|
+
"eslint": "^8.32.0",
|
|
52
|
+
"eslint-config-prettier": "^8.6.0",
|
|
52
53
|
"eslint-plugin-prettier": "^4.2.1",
|
|
53
54
|
"husky": "^8.0.2",
|
|
54
|
-
"jest": "^29.
|
|
55
|
+
"jest": "^29.4.0",
|
|
55
56
|
"lint-staged": "^13.1.0",
|
|
56
|
-
"prettier": "2.8.
|
|
57
|
+
"prettier": "2.8.3",
|
|
57
58
|
"split2": "^4.1.0",
|
|
58
|
-
"ts-jest": "^29.0.
|
|
59
|
+
"ts-jest": "^29.0.5",
|
|
59
60
|
"ts-node": "^10.9.1",
|
|
60
|
-
"tsconfig-paths": "^4.1.
|
|
61
|
-
"typescript": "^4.9.4"
|
|
62
|
-
"uuid": "^9.0.0"
|
|
61
|
+
"tsconfig-paths": "^4.1.2",
|
|
62
|
+
"typescript": "^4.9.4"
|
|
63
63
|
},
|
|
64
64
|
"lint-staged": {
|
|
65
65
|
"*.ts": [
|