sqlite-executor 4.0.1 → 4.0.2
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/dist/cjs/index.cjs +24 -7
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/esm/index.mjs +24 -7
- package/dist/esm/index.mjs.map +1 -1
- package/package.json +4 -4
package/dist/cjs/index.cjs
CHANGED
|
@@ -465,6 +465,7 @@ function createRowStreamParser(onRow) {
|
|
|
465
465
|
}
|
|
466
466
|
var TOKEN_COLUMN = "__sqlite_executor_token__";
|
|
467
467
|
var DEFAULT_BATCH_SIZE = 10;
|
|
468
|
+
var DEFAULT_MAX_INFLIGHT = 50;
|
|
468
469
|
function stream_check_private_redeclaration(obj, privateCollection) {
|
|
469
470
|
if (privateCollection.has(obj)) throw new TypeError("Cannot initialize the same private elements twice on an object");
|
|
470
471
|
}
|
|
@@ -1703,9 +1704,13 @@ function buildPayload(sql, token) {
|
|
|
1703
1704
|
var suffix = normalized.endsWith(";") ? "" : ";";
|
|
1704
1705
|
return "".concat(normalized).concat(suffix, "\nSELECT '").concat(token, "' AS ").concat(TOKEN_COLUMN, ";\n");
|
|
1705
1706
|
}
|
|
1707
|
+
function isTransactionControl(sql) {
|
|
1708
|
+
var s = sql.trim().toUpperCase();
|
|
1709
|
+
return "BEGIN" === s || "BEGIN TRANSACTION" === s || "COMMIT" === s || "COMMIT TRANSACTION" === s || "ROLLBACK" === s || "ROLLBACK TRANSACTION" === s || s.startsWith("BEGIN ") || s.startsWith("COMMIT ") || s.startsWith("ROLLBACK ");
|
|
1710
|
+
}
|
|
1706
1711
|
function buildBatchPayload(batch) {
|
|
1707
1712
|
var useWalBatch = batch.length > 1 && batch.every(function(t) {
|
|
1708
|
-
return "execute" === t.kind;
|
|
1713
|
+
return "execute" === t.kind && !isTransactionControl(t.sql);
|
|
1709
1714
|
});
|
|
1710
1715
|
if (useWalBatch) {
|
|
1711
1716
|
var parts = [
|
|
@@ -1924,12 +1929,12 @@ function taskWorker_unsupported_iterable_to_array(o, minLen) {
|
|
|
1924
1929
|
if ("Map" === n || "Set" === n) return Array.from(n);
|
|
1925
1930
|
if ("Arguments" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return taskWorker_array_like_to_array(o, minLen);
|
|
1926
1931
|
}
|
|
1927
|
-
var _processManager = /*#__PURE__*/ new WeakMap(), _pendingQueue = /*#__PURE__*/ new WeakMap(), _inflightTasks = /*#__PURE__*/ new WeakMap(), _pendingFinalizeTasks = /*#__PURE__*/ new WeakMap(), _scheduledFinalize = /*#__PURE__*/ new WeakMap(), _valueParser = /*#__PURE__*/ new WeakMap(), _statementTimeout = /*#__PURE__*/ new WeakMap(), _logger = /*#__PURE__*/ new WeakMap(), _name = /*#__PURE__*/ new WeakMap(), _batchSize = /*#__PURE__*/ new WeakMap(), _metrics = /*#__PURE__*/ new WeakMap(), _startProcess = /*#__PURE__*/ new WeakSet(), _pumpQueue = /*#__PURE__*/ new WeakSet(), _handleParsedValue = /*#__PURE__*/ new WeakSet(), _scheduleFinalizeCheck = /*#__PURE__*/ new WeakSet(), _handleStderrChunk = /*#__PURE__*/ new WeakSet(), _handleTaskTimeout = /*#__PURE__*/ new WeakSet(), _settleTask = /*#__PURE__*/ new WeakSet(), _rejectAll = /*#__PURE__*/ new WeakSet();
|
|
1932
|
+
var _processManager = /*#__PURE__*/ new WeakMap(), _pendingQueue = /*#__PURE__*/ new WeakMap(), _inflightTasks = /*#__PURE__*/ new WeakMap(), _pendingFinalizeTasks = /*#__PURE__*/ new WeakMap(), _scheduledFinalize = /*#__PURE__*/ new WeakMap(), _valueParser = /*#__PURE__*/ new WeakMap(), _statementTimeout = /*#__PURE__*/ new WeakMap(), _logger = /*#__PURE__*/ new WeakMap(), _name = /*#__PURE__*/ new WeakMap(), _batchSize = /*#__PURE__*/ new WeakMap(), _maxInflight = /*#__PURE__*/ new WeakMap(), _metrics = /*#__PURE__*/ new WeakMap(), _startProcess = /*#__PURE__*/ new WeakSet(), _pumpQueue = /*#__PURE__*/ new WeakSet(), _handleParsedValue = /*#__PURE__*/ new WeakSet(), _scheduleFinalizeCheck = /*#__PURE__*/ new WeakSet(), _handleStderrChunk = /*#__PURE__*/ new WeakSet(), _handleTaskTimeout = /*#__PURE__*/ new WeakSet(), _settleTask = /*#__PURE__*/ new WeakSet(), _rejectAll = /*#__PURE__*/ new WeakSet();
|
|
1928
1933
|
var taskWorker_TaskWorker = /*#__PURE__*/ function() {
|
|
1929
1934
|
"use strict";
|
|
1930
1935
|
function TaskWorker(param) {
|
|
1931
1936
|
var _this = this;
|
|
1932
|
-
var binary = param.binary, database = param.database, statementTimeout = param.statementTimeout, logger = param.logger, name = param.name, initMode = param.initMode, _param_batchSize = param.batchSize, batchSize = void 0 === _param_batchSize ? DEFAULT_BATCH_SIZE : _param_batchSize, metrics = param.metrics;
|
|
1937
|
+
var binary = param.binary, database = param.database, statementTimeout = param.statementTimeout, logger = param.logger, name = param.name, initMode = param.initMode, _param_batchSize = param.batchSize, batchSize = void 0 === _param_batchSize ? DEFAULT_BATCH_SIZE : _param_batchSize, _param_maxInflight = param.maxInflight, maxInflight = void 0 === _param_maxInflight ? DEFAULT_MAX_INFLIGHT : _param_maxInflight, metrics = param.metrics;
|
|
1933
1938
|
taskWorker_class_call_check(this, TaskWorker);
|
|
1934
1939
|
taskWorker_class_private_method_init(this, _startProcess);
|
|
1935
1940
|
taskWorker_class_private_method_init(this, _pumpQueue);
|
|
@@ -1979,6 +1984,10 @@ var taskWorker_TaskWorker = /*#__PURE__*/ function() {
|
|
|
1979
1984
|
writable: true,
|
|
1980
1985
|
value: void 0
|
|
1981
1986
|
});
|
|
1987
|
+
taskWorker_class_private_field_init(this, _maxInflight, {
|
|
1988
|
+
writable: true,
|
|
1989
|
+
value: void 0
|
|
1990
|
+
});
|
|
1982
1991
|
taskWorker_class_private_field_init(this, _metrics, {
|
|
1983
1992
|
writable: true,
|
|
1984
1993
|
value: void 0
|
|
@@ -1987,6 +1996,7 @@ var taskWorker_TaskWorker = /*#__PURE__*/ function() {
|
|
|
1987
1996
|
taskWorker_class_private_field_set(this, _statementTimeout, statementTimeout);
|
|
1988
1997
|
taskWorker_class_private_field_set(this, _logger, logger);
|
|
1989
1998
|
taskWorker_class_private_field_set(this, _batchSize, batchSize);
|
|
1999
|
+
taskWorker_class_private_field_set(this, _maxInflight, maxInflight);
|
|
1990
2000
|
taskWorker_class_private_field_set(this, _metrics, metrics);
|
|
1991
2001
|
taskWorker_class_private_field_set(this, _processManager, new process_ProcessManager({
|
|
1992
2002
|
binary: binary,
|
|
@@ -2076,8 +2086,9 @@ function startProcess() {
|
|
|
2076
2086
|
function pumpQueue() {
|
|
2077
2087
|
var _this = this;
|
|
2078
2088
|
var _$_class_private_field_get;
|
|
2089
|
+
if (taskWorker_class_private_field_get(this, _inflightTasks).length >= taskWorker_class_private_field_get(this, _maxInflight)) return;
|
|
2079
2090
|
var batch = [];
|
|
2080
|
-
while(batch.length < taskWorker_class_private_field_get(this, _batchSize) && !taskWorker_class_private_field_get(this, _pendingQueue).isEmpty()){
|
|
2091
|
+
while(batch.length < taskWorker_class_private_field_get(this, _batchSize) && !taskWorker_class_private_field_get(this, _pendingQueue).isEmpty() && taskWorker_class_private_field_get(this, _inflightTasks).length + batch.length < taskWorker_class_private_field_get(this, _maxInflight)){
|
|
2081
2092
|
var task = taskWorker_class_private_field_get(this, _pendingQueue).peek();
|
|
2082
2093
|
if ("stream" === task.kind && (batch.length > 0 || taskWorker_class_private_field_get(this, _inflightTasks).length > 0)) break;
|
|
2083
2094
|
taskWorker_class_private_field_get(this, _pendingQueue).dequeue();
|
|
@@ -2958,12 +2969,12 @@ function pipelineEngine_unsupported_iterable_to_array(o, minLen) {
|
|
|
2958
2969
|
if ("Map" === n || "Set" === n) return Array.from(n);
|
|
2959
2970
|
if ("Arguments" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return pipelineEngine_array_like_to_array(o, minLen);
|
|
2960
2971
|
}
|
|
2961
|
-
var _queue = /*#__PURE__*/ new WeakMap(), pipelineEngine_inflightTasks = /*#__PURE__*/ new WeakMap(), pipelineEngine_pendingFinalizeTasks = /*#__PURE__*/ new WeakMap(), pipelineEngine_scheduledFinalize = /*#__PURE__*/ new WeakMap(), _sharedValueParser = /*#__PURE__*/ new WeakMap(), pipelineEngine_processManager = /*#__PURE__*/ new WeakMap(), pipelineEngine_metrics = /*#__PURE__*/ new WeakMap(), pipelineEngine_statementTimeout = /*#__PURE__*/ new WeakMap(), pipelineEngine_logger = /*#__PURE__*/ new WeakMap(), pipelineEngine_batchSize = /*#__PURE__*/ new WeakMap(), _onTaskTimeout = /*#__PURE__*/ new WeakMap(), _active = /*#__PURE__*/ new WeakMap(), core_pipelineEngine_pumpQueue = /*#__PURE__*/ new WeakSet(), pipelineEngine_handleParsedValue = /*#__PURE__*/ new WeakSet(), core_pipelineEngine_scheduleFinalizeCheck = /*#__PURE__*/ new WeakSet(), pipelineEngine_settleTask = /*#__PURE__*/ new WeakSet();
|
|
2972
|
+
var _queue = /*#__PURE__*/ new WeakMap(), pipelineEngine_inflightTasks = /*#__PURE__*/ new WeakMap(), pipelineEngine_pendingFinalizeTasks = /*#__PURE__*/ new WeakMap(), pipelineEngine_scheduledFinalize = /*#__PURE__*/ new WeakMap(), _sharedValueParser = /*#__PURE__*/ new WeakMap(), pipelineEngine_processManager = /*#__PURE__*/ new WeakMap(), pipelineEngine_metrics = /*#__PURE__*/ new WeakMap(), pipelineEngine_statementTimeout = /*#__PURE__*/ new WeakMap(), pipelineEngine_logger = /*#__PURE__*/ new WeakMap(), pipelineEngine_batchSize = /*#__PURE__*/ new WeakMap(), pipelineEngine_maxInflight = /*#__PURE__*/ new WeakMap(), _onTaskTimeout = /*#__PURE__*/ new WeakMap(), _active = /*#__PURE__*/ new WeakMap(), core_pipelineEngine_pumpQueue = /*#__PURE__*/ new WeakSet(), pipelineEngine_handleParsedValue = /*#__PURE__*/ new WeakSet(), core_pipelineEngine_scheduleFinalizeCheck = /*#__PURE__*/ new WeakSet(), pipelineEngine_settleTask = /*#__PURE__*/ new WeakSet();
|
|
2962
2973
|
var pipelineEngine_PipelineEngine = /*#__PURE__*/ function() {
|
|
2963
2974
|
"use strict";
|
|
2964
2975
|
function PipelineEngine(processManager, param) {
|
|
2965
2976
|
var _this = this;
|
|
2966
|
-
var metrics = param.metrics, statementTimeout = param.statementTimeout, logger = param.logger, _param_batchSize = param.batchSize, batchSize = void 0 === _param_batchSize ? DEFAULT_BATCH_SIZE : _param_batchSize, onTaskTimeout = param.onTaskTimeout;
|
|
2977
|
+
var metrics = param.metrics, statementTimeout = param.statementTimeout, logger = param.logger, _param_batchSize = param.batchSize, batchSize = void 0 === _param_batchSize ? DEFAULT_BATCH_SIZE : _param_batchSize, _param_maxInflight = param.maxInflight, maxInflight = void 0 === _param_maxInflight ? DEFAULT_MAX_INFLIGHT : _param_maxInflight, onTaskTimeout = param.onTaskTimeout;
|
|
2967
2978
|
pipelineEngine_class_call_check(this, PipelineEngine);
|
|
2968
2979
|
pipelineEngine_class_private_method_init(this, core_pipelineEngine_pumpQueue);
|
|
2969
2980
|
pipelineEngine_class_private_method_init(this, pipelineEngine_handleParsedValue);
|
|
@@ -3009,6 +3020,10 @@ var pipelineEngine_PipelineEngine = /*#__PURE__*/ function() {
|
|
|
3009
3020
|
writable: true,
|
|
3010
3021
|
value: void 0
|
|
3011
3022
|
});
|
|
3023
|
+
pipelineEngine_class_private_field_init(this, pipelineEngine_maxInflight, {
|
|
3024
|
+
writable: true,
|
|
3025
|
+
value: void 0
|
|
3026
|
+
});
|
|
3012
3027
|
pipelineEngine_class_private_field_init(this, _onTaskTimeout, {
|
|
3013
3028
|
writable: true,
|
|
3014
3029
|
value: void 0
|
|
@@ -3022,6 +3037,7 @@ var pipelineEngine_PipelineEngine = /*#__PURE__*/ function() {
|
|
|
3022
3037
|
pipelineEngine_class_private_field_set(this, pipelineEngine_statementTimeout, statementTimeout);
|
|
3023
3038
|
pipelineEngine_class_private_field_set(this, pipelineEngine_logger, logger);
|
|
3024
3039
|
pipelineEngine_class_private_field_set(this, pipelineEngine_batchSize, batchSize);
|
|
3040
|
+
pipelineEngine_class_private_field_set(this, pipelineEngine_maxInflight, maxInflight);
|
|
3025
3041
|
pipelineEngine_class_private_field_set(this, _onTaskTimeout, null != onTaskTimeout ? onTaskTimeout : function() {});
|
|
3026
3042
|
pipelineEngine_class_private_field_set(this, _sharedValueParser, createJsonValueParser(function(raw) {
|
|
3027
3043
|
return pipelineEngine_class_private_method_get(_this, pipelineEngine_handleParsedValue, core_pipelineEngine_handleParsedValue).call(_this, raw);
|
|
@@ -3158,8 +3174,9 @@ function pipelineEngine_pumpQueue() {
|
|
|
3158
3174
|
var _this = this;
|
|
3159
3175
|
var _$_class_private_field_get;
|
|
3160
3176
|
if (!pipelineEngine_class_private_field_get(this, _active)) return;
|
|
3177
|
+
if (pipelineEngine_class_private_field_get(this, pipelineEngine_inflightTasks).length >= pipelineEngine_class_private_field_get(this, pipelineEngine_maxInflight)) return;
|
|
3161
3178
|
var batch = [];
|
|
3162
|
-
while(batch.length < pipelineEngine_class_private_field_get(this, pipelineEngine_batchSize) && !pipelineEngine_class_private_field_get(this, _queue).isEmpty()){
|
|
3179
|
+
while(batch.length < pipelineEngine_class_private_field_get(this, pipelineEngine_batchSize) && !pipelineEngine_class_private_field_get(this, _queue).isEmpty() && pipelineEngine_class_private_field_get(this, pipelineEngine_inflightTasks).length + batch.length < pipelineEngine_class_private_field_get(this, pipelineEngine_maxInflight)){
|
|
3163
3180
|
var task = pipelineEngine_class_private_field_get(this, _queue).peek();
|
|
3164
3181
|
if ("stream" === task.kind && (batch.length > 0 || pipelineEngine_class_private_field_get(this, pipelineEngine_inflightTasks).length > 0)) break;
|
|
3165
3182
|
pipelineEngine_class_private_field_get(this, _queue).dequeue();
|