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/esm/index.mjs
CHANGED
|
@@ -412,6 +412,7 @@ function createRowStreamParser(onRow) {
|
|
|
412
412
|
}
|
|
413
413
|
var TOKEN_COLUMN = "__sqlite_executor_token__";
|
|
414
414
|
var DEFAULT_BATCH_SIZE = 10;
|
|
415
|
+
var DEFAULT_MAX_INFLIGHT = 50;
|
|
415
416
|
function stream_check_private_redeclaration(obj, privateCollection) {
|
|
416
417
|
if (privateCollection.has(obj)) throw new TypeError("Cannot initialize the same private elements twice on an object");
|
|
417
418
|
}
|
|
@@ -1643,9 +1644,13 @@ function buildPayload(sql, token) {
|
|
|
1643
1644
|
var suffix = normalized.endsWith(";") ? "" : ";";
|
|
1644
1645
|
return "".concat(normalized).concat(suffix, "\nSELECT '").concat(token, "' AS ").concat(TOKEN_COLUMN, ";\n");
|
|
1645
1646
|
}
|
|
1647
|
+
function isTransactionControl(sql) {
|
|
1648
|
+
var s = sql.trim().toUpperCase();
|
|
1649
|
+
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 ");
|
|
1650
|
+
}
|
|
1646
1651
|
function buildBatchPayload(batch) {
|
|
1647
1652
|
var useWalBatch = batch.length > 1 && batch.every(function(t) {
|
|
1648
|
-
return "execute" === t.kind;
|
|
1653
|
+
return "execute" === t.kind && !isTransactionControl(t.sql);
|
|
1649
1654
|
});
|
|
1650
1655
|
if (useWalBatch) {
|
|
1651
1656
|
var parts = [
|
|
@@ -1864,12 +1869,12 @@ function taskWorker_unsupported_iterable_to_array(o, minLen) {
|
|
|
1864
1869
|
if ("Map" === n || "Set" === n) return Array.from(n);
|
|
1865
1870
|
if ("Arguments" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return taskWorker_array_like_to_array(o, minLen);
|
|
1866
1871
|
}
|
|
1867
|
-
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();
|
|
1872
|
+
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();
|
|
1868
1873
|
var taskWorker_TaskWorker = /*#__PURE__*/ function() {
|
|
1869
1874
|
"use strict";
|
|
1870
1875
|
function TaskWorker(param) {
|
|
1871
1876
|
var _this = this;
|
|
1872
|
-
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;
|
|
1877
|
+
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;
|
|
1873
1878
|
taskWorker_class_call_check(this, TaskWorker);
|
|
1874
1879
|
taskWorker_class_private_method_init(this, _startProcess);
|
|
1875
1880
|
taskWorker_class_private_method_init(this, _pumpQueue);
|
|
@@ -1919,6 +1924,10 @@ var taskWorker_TaskWorker = /*#__PURE__*/ function() {
|
|
|
1919
1924
|
writable: true,
|
|
1920
1925
|
value: void 0
|
|
1921
1926
|
});
|
|
1927
|
+
taskWorker_class_private_field_init(this, _maxInflight, {
|
|
1928
|
+
writable: true,
|
|
1929
|
+
value: void 0
|
|
1930
|
+
});
|
|
1922
1931
|
taskWorker_class_private_field_init(this, _metrics, {
|
|
1923
1932
|
writable: true,
|
|
1924
1933
|
value: void 0
|
|
@@ -1927,6 +1936,7 @@ var taskWorker_TaskWorker = /*#__PURE__*/ function() {
|
|
|
1927
1936
|
taskWorker_class_private_field_set(this, _statementTimeout, statementTimeout);
|
|
1928
1937
|
taskWorker_class_private_field_set(this, _logger, logger);
|
|
1929
1938
|
taskWorker_class_private_field_set(this, _batchSize, batchSize);
|
|
1939
|
+
taskWorker_class_private_field_set(this, _maxInflight, maxInflight);
|
|
1930
1940
|
taskWorker_class_private_field_set(this, _metrics, metrics);
|
|
1931
1941
|
taskWorker_class_private_field_set(this, _processManager, new process_ProcessManager({
|
|
1932
1942
|
binary: binary,
|
|
@@ -2016,8 +2026,9 @@ function startProcess() {
|
|
|
2016
2026
|
function pumpQueue() {
|
|
2017
2027
|
var _this = this;
|
|
2018
2028
|
var _$_class_private_field_get;
|
|
2029
|
+
if (taskWorker_class_private_field_get(this, _inflightTasks).length >= taskWorker_class_private_field_get(this, _maxInflight)) return;
|
|
2019
2030
|
var batch = [];
|
|
2020
|
-
while(batch.length < taskWorker_class_private_field_get(this, _batchSize) && !taskWorker_class_private_field_get(this, _pendingQueue).isEmpty()){
|
|
2031
|
+
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)){
|
|
2021
2032
|
var task = taskWorker_class_private_field_get(this, _pendingQueue).peek();
|
|
2022
2033
|
if ("stream" === task.kind && (batch.length > 0 || taskWorker_class_private_field_get(this, _inflightTasks).length > 0)) break;
|
|
2023
2034
|
taskWorker_class_private_field_get(this, _pendingQueue).dequeue();
|
|
@@ -2898,12 +2909,12 @@ function pipelineEngine_unsupported_iterable_to_array(o, minLen) {
|
|
|
2898
2909
|
if ("Map" === n || "Set" === n) return Array.from(n);
|
|
2899
2910
|
if ("Arguments" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return pipelineEngine_array_like_to_array(o, minLen);
|
|
2900
2911
|
}
|
|
2901
|
-
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();
|
|
2912
|
+
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();
|
|
2902
2913
|
var pipelineEngine_PipelineEngine = /*#__PURE__*/ function() {
|
|
2903
2914
|
"use strict";
|
|
2904
2915
|
function PipelineEngine(processManager, param) {
|
|
2905
2916
|
var _this = this;
|
|
2906
|
-
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;
|
|
2917
|
+
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;
|
|
2907
2918
|
pipelineEngine_class_call_check(this, PipelineEngine);
|
|
2908
2919
|
pipelineEngine_class_private_method_init(this, core_pipelineEngine_pumpQueue);
|
|
2909
2920
|
pipelineEngine_class_private_method_init(this, pipelineEngine_handleParsedValue);
|
|
@@ -2949,6 +2960,10 @@ var pipelineEngine_PipelineEngine = /*#__PURE__*/ function() {
|
|
|
2949
2960
|
writable: true,
|
|
2950
2961
|
value: void 0
|
|
2951
2962
|
});
|
|
2963
|
+
pipelineEngine_class_private_field_init(this, pipelineEngine_maxInflight, {
|
|
2964
|
+
writable: true,
|
|
2965
|
+
value: void 0
|
|
2966
|
+
});
|
|
2952
2967
|
pipelineEngine_class_private_field_init(this, _onTaskTimeout, {
|
|
2953
2968
|
writable: true,
|
|
2954
2969
|
value: void 0
|
|
@@ -2962,6 +2977,7 @@ var pipelineEngine_PipelineEngine = /*#__PURE__*/ function() {
|
|
|
2962
2977
|
pipelineEngine_class_private_field_set(this, pipelineEngine_statementTimeout, statementTimeout);
|
|
2963
2978
|
pipelineEngine_class_private_field_set(this, pipelineEngine_logger, logger);
|
|
2964
2979
|
pipelineEngine_class_private_field_set(this, pipelineEngine_batchSize, batchSize);
|
|
2980
|
+
pipelineEngine_class_private_field_set(this, pipelineEngine_maxInflight, maxInflight);
|
|
2965
2981
|
pipelineEngine_class_private_field_set(this, _onTaskTimeout, null != onTaskTimeout ? onTaskTimeout : function() {});
|
|
2966
2982
|
pipelineEngine_class_private_field_set(this, _sharedValueParser, createJsonValueParser(function(raw) {
|
|
2967
2983
|
return pipelineEngine_class_private_method_get(_this, pipelineEngine_handleParsedValue, core_pipelineEngine_handleParsedValue).call(_this, raw);
|
|
@@ -3098,8 +3114,9 @@ function pipelineEngine_pumpQueue() {
|
|
|
3098
3114
|
var _this = this;
|
|
3099
3115
|
var _$_class_private_field_get;
|
|
3100
3116
|
if (!pipelineEngine_class_private_field_get(this, _active)) return;
|
|
3117
|
+
if (pipelineEngine_class_private_field_get(this, pipelineEngine_inflightTasks).length >= pipelineEngine_class_private_field_get(this, pipelineEngine_maxInflight)) return;
|
|
3101
3118
|
var batch = [];
|
|
3102
|
-
while(batch.length < pipelineEngine_class_private_field_get(this, pipelineEngine_batchSize) && !pipelineEngine_class_private_field_get(this, _queue).isEmpty()){
|
|
3119
|
+
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)){
|
|
3103
3120
|
var task = pipelineEngine_class_private_field_get(this, _queue).peek();
|
|
3104
3121
|
if ("stream" === task.kind && (batch.length > 0 || pipelineEngine_class_private_field_get(this, pipelineEngine_inflightTasks).length > 0)) break;
|
|
3105
3122
|
pipelineEngine_class_private_field_get(this, _queue).dequeue();
|