@harperfast/harper 5.0.25 → 5.1.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 +11 -10
- package/agent/agent.ts +203 -0
- package/agent/loop.ts +205 -0
- package/agent/operations.ts +148 -0
- package/agent/session.ts +187 -0
- package/agent/tools/fsTools.ts +276 -0
- package/agent/tools/httpFetchTool.ts +112 -0
- package/agent/tools/scheduleTool.ts +68 -0
- package/agent/toolset.ts +43 -0
- package/agent/types.ts +85 -0
- package/bin/{BinObjects.js → BinObjects.ts} +4 -5
- package/bin/cliCredentials.ts +133 -0
- package/bin/cliOperations.ts +339 -0
- package/bin/copyDb.ts +10 -10
- package/bin/deployRenderer.ts +196 -0
- package/bin/{harper.js → harper.ts} +43 -19
- package/bin/{install.js → install.ts} +3 -3
- package/bin/lite.ts +2 -0
- package/bin/login.ts +168 -0
- package/bin/logout.ts +11 -0
- package/bin/mcp/client.ts +407 -0
- package/bin/mcp/doctor.ts +189 -0
- package/bin/mcp/index.ts +80 -0
- package/bin/mcp/options.ts +122 -0
- package/bin/mcp/printConfig.ts +89 -0
- package/bin/multipartBuilder.ts +74 -0
- package/bin/{restart.js → restart.ts} +27 -28
- package/bin/{run.js → run.ts} +41 -30
- package/bin/sseConsumer.ts +126 -0
- package/bin/{status.js → status.ts} +10 -10
- package/bin/{stop.js → stop.ts} +5 -5
- package/bin/upgrade.js +6 -6
- package/components/Application.ts +144 -18
- package/components/ApplicationScope.ts +2 -2
- package/components/ComponentV1.ts +2 -2
- package/components/EntryHandler.ts +159 -9
- package/components/OptionsWatcher.ts +75 -11
- package/components/Scope.ts +125 -15
- package/components/anthropic/index.ts +547 -0
- package/components/bedrock/index.ts +823 -0
- package/components/componentLoader.ts +63 -32
- package/components/deployLifecycle.ts +161 -0
- package/components/deploymentOperations.ts +173 -0
- package/components/deploymentRecorder.ts +402 -0
- package/components/deriveURLPath.ts +4 -4
- package/components/mcp/adapters/fastify.ts +87 -0
- package/components/mcp/adapters/harperHttp.ts +103 -0
- package/components/mcp/audit.ts +75 -0
- package/components/mcp/index.ts +134 -0
- package/components/mcp/jsonrpc.ts +134 -0
- package/components/mcp/lifecycle.ts +105 -0
- package/components/mcp/listChanged.ts +270 -0
- package/components/mcp/rateLimit.ts +217 -0
- package/components/mcp/resources.ts +593 -0
- package/components/mcp/session.ts +151 -0
- package/components/mcp/sessionRegistry.ts +140 -0
- package/components/mcp/toolRegistry.ts +292 -0
- package/components/mcp/tools/application.ts +603 -0
- package/components/mcp/tools/operations.ts +283 -0
- package/components/mcp/tools/schemas/derive.ts +256 -0
- package/components/mcp/tools/schemas/operations.ts +245 -0
- package/components/mcp/transport.ts +517 -0
- package/components/ollama/index.ts +316 -0
- package/components/openai/index.ts +563 -0
- package/components/operations.js +211 -60
- package/components/operationsValidation.js +3 -3
- package/components/packageComponent.ts +97 -29
- package/components/requestRestart.ts +17 -2
- package/components/status/crossThread.ts +14 -5
- package/components/status/errors.ts +1 -1
- package/config/RootConfigWatcher.ts +56 -2
- package/config/configUtils.js +29 -8
- package/config/harperConfigEnvVars.ts +1 -1
- package/config-root.schema.json +74 -0
- package/dataLayer/{CreateAttributeObject.js → CreateAttributeObject.ts} +4 -3
- package/dataLayer/{CreateTableObject.js → CreateTableObject.ts} +2 -1
- package/dataLayer/{DataLayerObjects.js → DataLayerObjects.ts} +17 -9
- package/dataLayer/{DeleteBeforeObject.js → DeleteBeforeObject.ts} +2 -1
- package/dataLayer/{DeleteObject.js → DeleteObject.ts} +3 -2
- package/dataLayer/{DropAttributeObject.js → DropAttributeObject.ts} +2 -1
- package/dataLayer/{GetBackupObject.js → GetBackupObject.ts} +3 -2
- package/dataLayer/{InsertObject.js → InsertObject.ts} +3 -2
- package/dataLayer/{ReadAuditLogObject.js → ReadAuditLogObject.ts} +3 -2
- package/dataLayer/{SQLSearch.js → SQLSearch.ts} +97 -43
- package/dataLayer/{SearchByConditionsObject.js → SearchByConditionsObject.ts} +5 -6
- package/dataLayer/{SearchByHashObject.js → SearchByHashObject.ts} +2 -1
- package/dataLayer/{SearchObject.js → SearchObject.ts} +2 -1
- package/dataLayer/{SqlSearchObject.js → SqlSearchObject.ts} +2 -1
- package/dataLayer/{UpdateObject.js → UpdateObject.ts} +3 -2
- package/dataLayer/{UpsertObject.js → UpsertObject.ts} +3 -2
- package/dataLayer/{bulkLoad.js → bulkLoad.ts} +40 -49
- package/dataLayer/{delete.js → delete.ts} +21 -26
- package/dataLayer/{export.js → export.ts} +22 -26
- package/dataLayer/{getBackup.js → getBackup.ts} +7 -9
- package/dataLayer/harperBridge/BridgeMethods.ts +102 -0
- package/dataLayer/harperBridge/ResourceBridge.ts +27 -26
- package/dataLayer/harperBridge/TableSizeObject.ts +1 -0
- package/dataLayer/harperBridge/bridgeUtility/insertUpdateValidate.js +4 -4
- package/dataLayer/harperBridge/{harperBridge.js → harperBridge.ts} +3 -3
- package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateAttribute.js +8 -6
- package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateRecords.js +4 -4
- package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateSchema.js +1 -1
- package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateTable.js +6 -4
- package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDeleteAuditLogsBefore.js +5 -4
- package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDeleteRecords.js +4 -4
- package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDropAttribute.js +6 -5
- package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDropSchema.js +5 -4
- package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDropTable.js +5 -5
- package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbFlush.js +1 -1
- package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbGetBackup.js +3 -3
- package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbGetDataByHash.js +1 -1
- package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbGetDataByValue.js +3 -2
- package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbReadAuditLog.js +5 -5
- package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbSearchByConditions.js +10 -8
- package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbSearchByHash.js +1 -1
- package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbSearchByValue.js +4 -3
- package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbUpdateRecords.js +3 -3
- package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbUpsertRecords.js +6 -5
- package/dataLayer/harperBridge/lmdbBridge/lmdbUtility/LMDBCreateAttributeObject.js +2 -1
- package/dataLayer/harperBridge/lmdbBridge/lmdbUtility/initializeHashSearch.js +3 -2
- package/dataLayer/harperBridge/lmdbBridge/lmdbUtility/initializePaths.js +2 -2
- package/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbCheckForNewAttributes.js +5 -4
- package/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbCreateTransactionsAuditEnvironment.js +6 -3
- package/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbGetTableSize.ts +1 -1
- package/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbProcessRows.js +4 -4
- package/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbSearch.js +5 -5
- package/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbWriteTransaction.js +4 -4
- package/dataLayer/{hdbInfoController.js → hdbInfoController.ts} +20 -26
- package/dataLayer/{insert.js → insert.ts} +24 -24
- package/dataLayer/{readAuditLog.js → readAuditLog.ts} +8 -10
- package/dataLayer/{schema.js → schema.ts} +32 -44
- package/dataLayer/{schemaDescribe.js → schemaDescribe.ts} +23 -26
- package/dataLayer/{search.js → search.ts} +9 -15
- package/dataLayer/{transaction.js → transaction.ts} +2 -5
- package/dataLayer/{update.js → update.ts} +19 -22
- package/dist/agent/agent.d.ts +35 -0
- package/dist/agent/agent.js +175 -0
- package/dist/agent/agent.js.map +1 -0
- package/dist/agent/loop.d.ts +34 -0
- package/dist/agent/loop.js +176 -0
- package/dist/agent/loop.js.map +1 -0
- package/dist/agent/operations.d.ts +17 -0
- package/dist/agent/operations.js +137 -0
- package/dist/agent/operations.js.map +1 -0
- package/dist/agent/session.d.ts +36 -0
- package/dist/agent/session.js +182 -0
- package/dist/agent/session.js.map +1 -0
- package/dist/agent/tools/fsTools.d.ts +19 -0
- package/dist/agent/tools/fsTools.js +286 -0
- package/dist/agent/tools/fsTools.js.map +1 -0
- package/dist/agent/tools/httpFetchTool.d.ts +9 -0
- package/dist/agent/tools/httpFetchTool.js +116 -0
- package/dist/agent/tools/httpFetchTool.js.map +1 -0
- package/dist/agent/tools/scheduleTool.d.ts +22 -0
- package/dist/agent/tools/scheduleTool.js +54 -0
- package/dist/agent/tools/scheduleTool.js.map +1 -0
- package/dist/agent/toolset.d.ts +24 -0
- package/dist/agent/toolset.js +33 -0
- package/dist/agent/toolset.js.map +1 -0
- package/dist/agent/types.d.ts +75 -0
- package/dist/agent/types.js +10 -0
- package/dist/agent/types.js.map +1 -0
- package/dist/bin/BinObjects.d.ts +2 -2
- package/dist/bin/BinObjects.js +6 -3
- package/dist/bin/BinObjects.js.map +1 -1
- package/dist/bin/cliCredentials.d.ts +27 -0
- package/dist/bin/cliCredentials.js +130 -0
- package/dist/bin/cliCredentials.js.map +1 -0
- package/dist/bin/cliOperations.d.ts +7 -7
- package/dist/bin/cliOperations.js +251 -37
- package/dist/bin/cliOperations.js.map +1 -1
- package/dist/bin/copyDb.js +16 -16
- package/dist/bin/copyDb.js.map +1 -1
- package/dist/bin/deployRenderer.d.ts +47 -0
- package/dist/bin/deployRenderer.js +185 -0
- package/dist/bin/deployRenderer.js.map +1 -0
- package/dist/bin/harper.d.ts +2 -1
- package/dist/bin/harper.js +87 -26
- package/dist/bin/harper.js.map +1 -1
- package/dist/bin/install.d.ts +1 -1
- package/dist/bin/install.js +41 -4
- package/dist/bin/install.js.map +1 -1
- package/dist/bin/lite.js +3 -4
- package/dist/bin/lite.js.map +1 -1
- package/dist/bin/login.d.ts +4 -0
- package/dist/bin/login.js +158 -0
- package/dist/bin/login.js.map +1 -0
- package/dist/bin/logout.d.ts +4 -0
- package/dist/bin/logout.js +16 -0
- package/dist/bin/logout.js.map +1 -0
- package/dist/bin/mcp/client.d.ts +34 -0
- package/dist/bin/mcp/client.js +395 -0
- package/dist/bin/mcp/client.js.map +1 -0
- package/dist/bin/mcp/doctor.d.ts +11 -0
- package/dist/bin/mcp/doctor.js +193 -0
- package/dist/bin/mcp/doctor.js.map +1 -0
- package/dist/bin/mcp/index.d.ts +10 -0
- package/dist/bin/mcp/index.js +81 -0
- package/dist/bin/mcp/index.js.map +1 -0
- package/dist/bin/mcp/options.d.ts +33 -0
- package/dist/bin/mcp/options.js +113 -0
- package/dist/bin/mcp/options.js.map +1 -0
- package/dist/bin/mcp/printConfig.d.ts +14 -0
- package/dist/bin/mcp/printConfig.js +85 -0
- package/dist/bin/mcp/printConfig.js.map +1 -0
- package/dist/bin/multipartBuilder.d.ts +26 -0
- package/dist/bin/multipartBuilder.js +55 -0
- package/dist/bin/multipartBuilder.js.map +1 -0
- package/dist/bin/restart.d.ts +3 -2
- package/dist/bin/restart.js +82 -45
- package/dist/bin/restart.js.map +1 -1
- package/dist/bin/run.d.ts +13 -9
- package/dist/bin/run.js +111 -65
- package/dist/bin/run.js.map +1 -1
- package/dist/bin/sseConsumer.d.ts +24 -0
- package/dist/bin/sseConsumer.js +127 -0
- package/dist/bin/sseConsumer.js.map +1 -0
- package/dist/bin/status.d.ts +1 -1
- package/dist/bin/status.js +48 -11
- package/dist/bin/status.js.map +1 -1
- package/dist/bin/stop.d.ts +1 -1
- package/dist/bin/stop.js +43 -6
- package/dist/bin/stop.js.map +1 -1
- package/dist/bin/upgrade.js +6 -6
- package/dist/components/Application.d.ts +29 -17
- package/dist/components/Application.js +134 -28
- package/dist/components/Application.js.map +1 -1
- package/dist/components/ApplicationScope.js +2 -2
- package/dist/components/ComponentV1.d.ts +1 -1
- package/dist/components/ComponentV1.js +5 -5
- package/dist/components/ComponentV1.js.map +1 -1
- package/dist/components/EntryHandler.d.ts +26 -3
- package/dist/components/EntryHandler.js +153 -13
- package/dist/components/EntryHandler.js.map +1 -1
- package/dist/components/OptionsWatcher.d.ts +7 -2
- package/dist/components/OptionsWatcher.js +72 -10
- package/dist/components/OptionsWatcher.js.map +1 -1
- package/dist/components/Scope.d.ts +11 -6
- package/dist/components/Scope.js +105 -9
- package/dist/components/Scope.js.map +1 -1
- package/dist/components/anthropic/index.d.ts +40 -0
- package/dist/components/anthropic/index.js +428 -0
- package/dist/components/anthropic/index.js.map +1 -0
- package/dist/components/bedrock/index.d.ts +79 -0
- package/dist/components/bedrock/index.js +734 -0
- package/dist/components/bedrock/index.js.map +1 -0
- package/dist/components/componentLoader.d.ts +29 -0
- package/dist/components/componentLoader.js +63 -38
- package/dist/components/componentLoader.js.map +1 -1
- package/dist/components/deployLifecycle.d.ts +39 -0
- package/dist/components/deployLifecycle.js +156 -0
- package/dist/components/deployLifecycle.js.map +1 -0
- package/dist/components/deploymentOperations.d.ts +19 -0
- package/dist/components/deploymentOperations.js +185 -0
- package/dist/components/deploymentOperations.js.map +1 -0
- package/dist/components/deploymentRecorder.d.ts +81 -0
- package/dist/components/deploymentRecorder.js +401 -0
- package/dist/components/deploymentRecorder.js.map +1 -0
- package/dist/components/deriveURLPath.d.ts +2 -2
- package/dist/components/deriveURLPath.js +2 -2
- package/dist/components/deriveURLPath.js.map +1 -1
- package/dist/components/mcp/adapters/fastify.d.ts +35 -0
- package/dist/components/mcp/adapters/fastify.js +66 -0
- package/dist/components/mcp/adapters/fastify.js.map +1 -0
- package/dist/components/mcp/adapters/harperHttp.d.ts +38 -0
- package/dist/components/mcp/adapters/harperHttp.js +78 -0
- package/dist/components/mcp/adapters/harperHttp.js.map +1 -0
- package/dist/components/mcp/audit.d.ts +27 -0
- package/dist/components/mcp/audit.js +73 -0
- package/dist/components/mcp/audit.js.map +1 -0
- package/dist/components/mcp/index.d.ts +47 -0
- package/dist/components/mcp/index.js +109 -0
- package/dist/components/mcp/index.js.map +1 -0
- package/dist/components/mcp/jsonrpc.d.ts +71 -0
- package/dist/components/mcp/jsonrpc.js +93 -0
- package/dist/components/mcp/jsonrpc.js.map +1 -0
- package/dist/components/mcp/lifecycle.d.ts +69 -0
- package/dist/components/mcp/lifecycle.js +79 -0
- package/dist/components/mcp/lifecycle.js.map +1 -0
- package/dist/components/mcp/listChanged.d.ts +24 -0
- package/dist/components/mcp/listChanged.js +257 -0
- package/dist/components/mcp/listChanged.js.map +1 -0
- package/dist/components/mcp/rateLimit.d.ts +25 -0
- package/dist/components/mcp/rateLimit.js +226 -0
- package/dist/components/mcp/rateLimit.js.map +1 -0
- package/dist/components/mcp/resources.d.ts +90 -0
- package/dist/components/mcp/resources.js +515 -0
- package/dist/components/mcp/resources.js.map +1 -0
- package/dist/components/mcp/session.d.ts +36 -0
- package/dist/components/mcp/session.js +170 -0
- package/dist/components/mcp/session.js.map +1 -0
- package/dist/components/mcp/sessionRegistry.d.ts +63 -0
- package/dist/components/mcp/sessionRegistry.js +124 -0
- package/dist/components/mcp/sessionRegistry.js.map +1 -0
- package/dist/components/mcp/toolRegistry.d.ts +150 -0
- package/dist/components/mcp/toolRegistry.js +176 -0
- package/dist/components/mcp/toolRegistry.js.map +1 -0
- package/dist/components/mcp/tools/application.d.ts +58 -0
- package/dist/components/mcp/tools/application.js +549 -0
- package/dist/components/mcp/tools/application.js.map +1 -0
- package/dist/components/mcp/tools/operations.d.ts +23 -0
- package/dist/components/mcp/tools/operations.js +303 -0
- package/dist/components/mcp/tools/operations.js.map +1 -0
- package/dist/components/mcp/tools/schemas/derive.d.ts +36 -0
- package/dist/components/mcp/tools/schemas/derive.js +216 -0
- package/dist/components/mcp/tools/schemas/derive.js.map +1 -0
- package/dist/components/mcp/tools/schemas/operations.d.ts +27 -0
- package/dist/components/mcp/tools/schemas/operations.js +243 -0
- package/dist/components/mcp/tools/schemas/operations.js.map +1 -0
- package/dist/components/mcp/transport.d.ts +38 -0
- package/dist/components/mcp/transport.js +467 -0
- package/dist/components/mcp/transport.js.map +1 -0
- package/dist/components/ollama/index.d.ts +46 -0
- package/dist/components/ollama/index.js +239 -0
- package/dist/components/ollama/index.js.map +1 -0
- package/dist/components/openai/index.d.ts +51 -0
- package/dist/components/openai/index.js +475 -0
- package/dist/components/openai/index.js.map +1 -0
- package/dist/components/operations.d.ts +6 -6
- package/dist/components/operations.js +198 -52
- package/dist/components/operations.js.map +1 -1
- package/dist/components/operationsValidation.d.ts +2 -2
- package/dist/components/operationsValidation.js +3 -3
- package/dist/components/packageComponent.d.ts +28 -6
- package/dist/components/packageComponent.js +87 -26
- package/dist/components/packageComponent.js.map +1 -1
- package/dist/components/requestRestart.d.ts +1 -0
- package/dist/components/requestRestart.js +12 -1
- package/dist/components/requestRestart.js.map +1 -1
- package/dist/components/status/crossThread.d.ts +5 -1
- package/dist/components/status/crossThread.js +12 -5
- package/dist/components/status/crossThread.js.map +1 -1
- package/dist/components/status/errors.js +7 -7
- package/dist/config/RootConfigWatcher.d.ts +3 -0
- package/dist/config/RootConfigWatcher.js +52 -1
- package/dist/config/RootConfigWatcher.js.map +1 -1
- package/dist/config/configUtils.js +31 -8
- package/dist/config/configUtils.js.map +1 -1
- package/dist/config/harperConfigEnvVars.js +1 -1
- package/dist/config/harperConfigEnvVars.js.map +1 -1
- package/dist/dataLayer/CreateAttributeObject.d.ts +3 -7
- package/dist/dataLayer/CreateAttributeObject.js +4 -3
- package/dist/dataLayer/CreateAttributeObject.js.map +1 -1
- package/dist/dataLayer/CreateTableObject.d.ts +2 -4
- package/dist/dataLayer/CreateTableObject.js +2 -1
- package/dist/dataLayer/CreateTableObject.js.map +1 -1
- package/dist/dataLayer/DataLayerObjects.d.ts +17 -16
- package/dist/dataLayer/DataLayerObjects.js +19 -5
- package/dist/dataLayer/DataLayerObjects.js.map +1 -1
- package/dist/dataLayer/DeleteBeforeObject.d.ts +3 -5
- package/dist/dataLayer/DeleteBeforeObject.js +2 -1
- package/dist/dataLayer/DeleteBeforeObject.js.map +1 -1
- package/dist/dataLayer/DeleteObject.d.ts +3 -7
- package/dist/dataLayer/DeleteObject.js +4 -3
- package/dist/dataLayer/DeleteObject.js.map +1 -1
- package/dist/dataLayer/DropAttributeObject.d.ts +2 -4
- package/dist/dataLayer/DropAttributeObject.js +2 -1
- package/dist/dataLayer/DropAttributeObject.js.map +1 -1
- package/dist/dataLayer/GetBackupObject.d.ts +3 -5
- package/dist/dataLayer/GetBackupObject.js +4 -3
- package/dist/dataLayer/GetBackupObject.js.map +1 -1
- package/dist/dataLayer/InsertObject.d.ts +3 -8
- package/dist/dataLayer/InsertObject.js +4 -3
- package/dist/dataLayer/InsertObject.js.map +1 -1
- package/dist/dataLayer/ReadAuditLogObject.d.ts +3 -7
- package/dist/dataLayer/ReadAuditLogObject.js +4 -3
- package/dist/dataLayer/ReadAuditLogObject.js.map +1 -1
- package/dist/dataLayer/SQLSearch.d.ts +68 -38
- package/dist/dataLayer/SQLSearch.js +140 -78
- package/dist/dataLayer/SQLSearch.js.map +1 -1
- package/dist/dataLayer/SearchByConditionsObject.d.ts +10 -58
- package/dist/dataLayer/SearchByConditionsObject.js +5 -7
- package/dist/dataLayer/SearchByConditionsObject.js.map +1 -1
- package/dist/dataLayer/SearchByHashObject.d.ts +3 -6
- package/dist/dataLayer/SearchByHashObject.js +2 -1
- package/dist/dataLayer/SearchByHashObject.js.map +1 -1
- package/dist/dataLayer/SearchObject.d.ts +3 -12
- package/dist/dataLayer/SearchObject.js +2 -1
- package/dist/dataLayer/SearchObject.js.map +1 -1
- package/dist/dataLayer/SqlSearchObject.d.ts +2 -4
- package/dist/dataLayer/SqlSearchObject.js +2 -1
- package/dist/dataLayer/SqlSearchObject.js.map +1 -1
- package/dist/dataLayer/UpdateObject.d.ts +3 -7
- package/dist/dataLayer/UpdateObject.js +4 -3
- package/dist/dataLayer/UpdateObject.js.map +1 -1
- package/dist/dataLayer/UpsertObject.d.ts +3 -7
- package/dist/dataLayer/UpsertObject.js +4 -3
- package/dist/dataLayer/UpsertObject.js.map +1 -1
- package/dist/dataLayer/bulkLoad.d.ts +4 -4
- package/dist/dataLayer/bulkLoad.js +122 -88
- package/dist/dataLayer/bulkLoad.js.map +1 -1
- package/dist/dataLayer/delete.d.ts +10 -11
- package/dist/dataLayer/delete.js +74 -39
- package/dist/dataLayer/delete.js.map +1 -1
- package/dist/dataLayer/export.d.ts +8 -8
- package/dist/dataLayer/export.js +90 -55
- package/dist/dataLayer/export.js.map +1 -1
- package/dist/dataLayer/getBackup.d.ts +4 -3
- package/dist/dataLayer/getBackup.js +43 -11
- package/dist/dataLayer/getBackup.js.map +1 -1
- package/dist/dataLayer/harperBridge/BridgeMethods.d.ts +39 -21
- package/dist/dataLayer/harperBridge/BridgeMethods.js +41 -20
- package/dist/dataLayer/harperBridge/BridgeMethods.js.map +1 -1
- package/dist/dataLayer/harperBridge/ResourceBridge.d.ts +2 -2
- package/dist/dataLayer/harperBridge/ResourceBridge.js +26 -25
- package/dist/dataLayer/harperBridge/ResourceBridge.js.map +1 -1
- package/dist/dataLayer/harperBridge/TableSizeObject.d.ts +1 -0
- package/dist/dataLayer/harperBridge/TableSizeObject.js.map +1 -1
- package/dist/dataLayer/harperBridge/bridgeUtility/insertUpdateValidate.d.ts +4 -4
- package/dist/dataLayer/harperBridge/bridgeUtility/insertUpdateValidate.js +4 -4
- package/dist/dataLayer/harperBridge/harperBridge.d.ts +2 -3
- package/dist/dataLayer/harperBridge/harperBridge.js +38 -4
- package/dist/dataLayer/harperBridge/harperBridge.js.map +1 -1
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateAttribute.d.ts +1 -2
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateAttribute.js +7 -6
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateAttribute.js.map +1 -1
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateRecords.d.ts +1 -2
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateRecords.js +4 -4
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateRecords.js.map +1 -1
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateSchema.js +1 -1
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateSchema.js.map +1 -1
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateTable.js +5 -4
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateTable.js.map +1 -1
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDeleteAuditLogsBefore.d.ts +1 -2
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDeleteAuditLogsBefore.js +4 -4
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDeleteAuditLogsBefore.js.map +1 -1
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDeleteRecords.js +4 -4
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDropAttribute.d.ts +1 -2
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDropAttribute.js +5 -5
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDropAttribute.js.map +1 -1
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDropSchema.js +4 -4
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDropSchema.js.map +1 -1
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDropTable.js +5 -5
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDropTable.js.map +1 -1
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbFlush.js +1 -1
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbGetBackup.js +3 -3
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbGetDataByHash.js +1 -1
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbGetDataByValue.js +2 -2
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbGetDataByValue.js.map +1 -1
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbReadAuditLog.js +5 -5
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbSearchByConditions.d.ts +1 -2
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbSearchByConditions.js +8 -8
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbSearchByConditions.js.map +1 -1
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbSearchByHash.d.ts +1 -1
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbSearchByHash.js +1 -1
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbSearchByValue.d.ts +1 -2
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbSearchByValue.js +3 -3
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbSearchByValue.js.map +1 -1
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbUpdateRecords.js +3 -3
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbUpsertRecords.d.ts +1 -2
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbUpsertRecords.js +5 -5
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbUpsertRecords.js.map +1 -1
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/LMDBCreateAttributeObject.d.ts +1 -2
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/LMDBCreateAttributeObject.js +1 -1
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/LMDBCreateAttributeObject.js.map +1 -1
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/initializeHashSearch.js +2 -2
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/initializeHashSearch.js.map +1 -1
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/initializePaths.js +2 -2
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbCheckForNewAttributes.js +4 -4
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbCheckForNewAttributes.js.map +1 -1
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbCreateTransactionsAuditEnvironment.d.ts +1 -2
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbCreateTransactionsAuditEnvironment.js +5 -3
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbCreateTransactionsAuditEnvironment.js.map +1 -1
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbGetTableSize.js +2 -2
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbProcessRows.d.ts +1 -2
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbProcessRows.js +4 -4
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbProcessRows.js.map +1 -1
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbSearch.js +5 -5
- package/dist/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbWriteTransaction.js +4 -4
- package/dist/dataLayer/hdbInfoController.d.ts +4 -8
- package/dist/dataLayer/hdbInfoController.js +66 -31
- package/dist/dataLayer/hdbInfoController.js.map +1 -1
- package/dist/dataLayer/insert.d.ts +14 -26
- package/dist/dataLayer/insert.js +63 -28
- package/dist/dataLayer/insert.js.map +1 -1
- package/dist/dataLayer/readAuditLog.d.ts +1 -3
- package/dist/dataLayer/readAuditLog.js +45 -13
- package/dist/dataLayer/readAuditLog.js.map +1 -1
- package/dist/dataLayer/schema.d.ts +10 -10
- package/dist/dataLayer/schema.js +124 -89
- package/dist/dataLayer/schema.js.map +1 -1
- package/dist/dataLayer/schemaDescribe.d.ts +4 -4
- package/dist/dataLayer/schemaDescribe.js +78 -41
- package/dist/dataLayer/schemaDescribe.js.map +1 -1
- package/dist/dataLayer/search.d.ts +4 -4
- package/dist/dataLayer/search.js +12 -13
- package/dist/dataLayer/search.js.map +1 -1
- package/dist/dataLayer/transaction.d.ts +1 -1
- package/dist/dataLayer/transaction.js +3 -4
- package/dist/dataLayer/transaction.js.map +1 -1
- package/dist/dataLayer/update.d.ts +2 -8
- package/dist/dataLayer/update.js +53 -18
- package/dist/dataLayer/update.js.map +1 -1
- package/dist/globals.d.ts +1 -1
- package/dist/globals.js +1 -0
- package/dist/globals.js.map +1 -1
- package/dist/index.d.ts +4 -0
- package/dist/index.js +4 -1
- package/dist/index.js.map +1 -1
- package/dist/json/systemSchema.json +65 -0
- package/dist/launchServiceScripts/launchHarperDB.d.ts +1 -0
- package/dist/launchServiceScripts/launchHarperDB.js +3 -0
- package/dist/launchServiceScripts/launchHarperDB.js.map +1 -0
- package/dist/launchServiceScripts/utility/checkNodeVersion.js +3 -0
- package/dist/launchServiceScripts/utility/checkNodeVersion.js.map +1 -1
- package/dist/resources/DatabaseTransaction.d.ts +14 -6
- package/dist/resources/DatabaseTransaction.js +39 -15
- package/dist/resources/DatabaseTransaction.js.map +1 -1
- package/dist/resources/ErrorResource.d.ts +1 -1
- package/dist/resources/ErrorResource.js +3 -1
- package/dist/resources/ErrorResource.js.map +1 -1
- package/dist/resources/LMDBTransaction.d.ts +10 -13
- package/dist/resources/LMDBTransaction.js +18 -7
- package/dist/resources/LMDBTransaction.js.map +1 -1
- package/dist/resources/RecordEncoder.d.ts +7 -1
- package/dist/resources/RecordEncoder.js +5 -2
- package/dist/resources/RecordEncoder.js.map +1 -1
- package/dist/resources/RequestTarget.d.ts +1 -0
- package/dist/resources/RequestTarget.js.map +1 -1
- package/dist/resources/Resource.d.ts +9 -5
- package/dist/resources/Resource.js +37 -10
- package/dist/resources/Resource.js.map +1 -1
- package/dist/resources/ResourceInterface.d.ts +24 -5
- package/dist/resources/ResourceInterface.js +20 -0
- package/dist/resources/ResourceInterface.js.map +1 -1
- package/dist/resources/Resources.d.ts +3 -4
- package/dist/resources/Resources.js +7 -6
- package/dist/resources/Resources.js.map +1 -1
- package/dist/resources/RocksIndexStore.js +3 -0
- package/dist/resources/RocksIndexStore.js.map +1 -1
- package/dist/resources/RocksTransactionLogStore.d.ts +1 -1
- package/dist/resources/RocksTransactionLogStore.js +46 -27
- package/dist/resources/RocksTransactionLogStore.js.map +1 -1
- package/dist/resources/Table.d.ts +59 -329
- package/dist/resources/Table.js +267 -107
- package/dist/resources/Table.js.map +1 -1
- package/dist/resources/analytics/metadata.d.ts +1 -0
- package/dist/resources/analytics/metadata.js +1 -0
- package/dist/resources/analytics/metadata.js.map +1 -1
- package/dist/resources/analytics/read.d.ts +5 -0
- package/dist/resources/analytics/read.js +16 -5
- package/dist/resources/analytics/read.js.map +1 -1
- package/dist/resources/analytics/write.d.ts +28 -0
- package/dist/resources/analytics/write.js +232 -20
- package/dist/resources/analytics/write.js.map +1 -1
- package/dist/resources/auditStore.d.ts +18 -13
- package/dist/resources/auditStore.js +13 -8
- package/dist/resources/auditStore.js.map +1 -1
- package/dist/resources/blob.d.ts +16 -27
- package/dist/resources/blob.js +8 -8
- package/dist/resources/blob.js.map +1 -1
- package/dist/resources/dataLoader.d.ts +1 -1
- package/dist/resources/dataLoader.js +13 -13
- package/dist/resources/databases.d.ts +13 -0
- package/dist/resources/databases.js +160 -52
- package/dist/resources/databases.js.map +1 -1
- package/dist/resources/graphql.d.ts +1 -7
- package/dist/resources/graphql.js +224 -174
- package/dist/resources/graphql.js.map +1 -1
- package/dist/resources/indexes/HierarchicalNavigableSmallWorld.d.ts +16 -1
- package/dist/resources/indexes/HierarchicalNavigableSmallWorld.js +308 -59
- package/dist/resources/indexes/HierarchicalNavigableSmallWorld.js.map +1 -1
- package/dist/resources/indexes/vector.d.ts +1 -0
- package/dist/resources/indexes/vector.js +14 -0
- package/dist/resources/indexes/vector.js.map +1 -1
- package/dist/resources/loadEnv.d.ts +2 -5
- package/dist/resources/loadEnv.js +21 -18
- package/dist/resources/loadEnv.js.map +1 -1
- package/dist/resources/login.d.ts +2 -3
- package/dist/resources/login.js +5 -4
- package/dist/resources/login.js.map +1 -1
- package/dist/resources/models/Models.d.ts +45 -0
- package/dist/resources/models/Models.js +265 -0
- package/dist/resources/models/Models.js.map +1 -0
- package/dist/resources/models/TestBackend.d.ts +15 -0
- package/dist/resources/models/TestBackend.js +71 -0
- package/dist/resources/models/TestBackend.js.map +1 -0
- package/dist/resources/models/agentLoop.d.ts +125 -0
- package/dist/resources/models/agentLoop.js +746 -0
- package/dist/resources/models/agentLoop.js.map +1 -0
- package/dist/resources/models/analyticsTable.d.ts +65 -0
- package/dist/resources/models/analyticsTable.js +166 -0
- package/dist/resources/models/analyticsTable.js.map +1 -0
- package/dist/resources/models/backendHelpers.d.ts +57 -0
- package/dist/resources/models/backendHelpers.js +109 -0
- package/dist/resources/models/backendHelpers.js.map +1 -0
- package/dist/resources/models/backendRegistry.d.ts +36 -0
- package/dist/resources/models/backendRegistry.js +54 -0
- package/dist/resources/models/backendRegistry.js.map +1 -0
- package/dist/resources/models/bootstrap.d.ts +24 -0
- package/dist/resources/models/bootstrap.js +112 -0
- package/dist/resources/models/bootstrap.js.map +1 -0
- package/dist/resources/models/embedHook.d.ts +33 -0
- package/dist/resources/models/embedHook.js +127 -0
- package/dist/resources/models/embedHook.js.map +1 -0
- package/dist/resources/models/types.d.ts +301 -0
- package/dist/resources/models/types.js +11 -0
- package/dist/resources/models/types.js.map +1 -0
- package/dist/resources/replayLogs.js +7 -1
- package/dist/resources/replayLogs.js.map +1 -1
- package/dist/resources/roles.d.ts +1 -7
- package/dist/resources/roles.js +67 -71
- package/dist/resources/roles.js.map +1 -1
- package/dist/resources/search.d.ts +18 -1
- package/dist/resources/search.js +349 -140
- package/dist/resources/search.js.map +1 -1
- package/dist/resources/tracked.d.ts +1 -1
- package/dist/resources/tracked.js +14 -14
- package/dist/resources/tracked.js.map +1 -1
- package/dist/resources/transaction.d.ts +1 -1
- package/dist/resources/transaction.js +1 -1
- package/dist/resources/transaction.js.map +1 -1
- package/dist/resources/transactionBroadcast.d.ts +1 -1
- package/dist/resources/transactionBroadcast.js.map +1 -1
- package/dist/security/auth.d.ts +1 -5
- package/dist/security/auth.js +34 -25
- package/dist/security/auth.js.map +1 -1
- package/dist/security/certificateVerification/crlVerification.js +7 -1
- package/dist/security/certificateVerification/crlVerification.js.map +1 -1
- package/dist/security/cryptoHash.d.ts +2 -2
- package/dist/security/cryptoHash.js +37 -5
- package/dist/security/cryptoHash.js.map +1 -1
- package/dist/security/data_objects/PermissionAttributeResponseObject.d.ts +3 -4
- package/dist/security/data_objects/PermissionAttributeResponseObject.js +4 -1
- package/dist/security/data_objects/PermissionAttributeResponseObject.js.map +1 -1
- package/dist/security/data_objects/PermissionResponseObject.d.ts +9 -9
- package/dist/security/data_objects/PermissionResponseObject.js +15 -8
- package/dist/security/data_objects/PermissionResponseObject.js.map +1 -1
- package/dist/security/data_objects/PermissionTableResponseObject.d.ts +5 -6
- package/dist/security/data_objects/PermissionTableResponseObject.js +6 -1
- package/dist/security/data_objects/PermissionTableResponseObject.js.map +1 -1
- package/dist/security/fastifyAuth.d.ts +2 -2
- package/dist/security/fastifyAuth.js +131 -22
- package/dist/security/fastifyAuth.js.map +1 -1
- package/dist/security/impersonation.js +15 -15
- package/dist/security/jsLoader.js +18 -5
- package/dist/security/jsLoader.js.map +1 -1
- package/dist/security/keys.d.ts +45 -48
- package/dist/security/keys.js +160 -114
- package/dist/security/keys.js.map +1 -1
- package/dist/security/permissionsTranslator.js +2 -2
- package/dist/security/role.d.ts +5 -5
- package/dist/security/role.js +70 -35
- package/dist/security/role.js.map +1 -1
- package/dist/security/tokenAuthentication.d.ts +13 -0
- package/dist/security/tokenAuthentication.js +57 -27
- package/dist/security/tokenAuthentication.js.map +1 -1
- package/dist/security/user.js +74 -38
- package/dist/security/user.js.map +1 -1
- package/dist/server/DurableSubscriptionsSession.d.ts +4 -2
- package/dist/server/DurableSubscriptionsSession.js +71 -55
- package/dist/server/DurableSubscriptionsSession.js.map +1 -1
- package/dist/server/REST.d.ts +1 -8
- package/dist/server/REST.js +17 -16
- package/dist/server/REST.js.map +1 -1
- package/dist/server/Server.d.ts +23 -4
- package/dist/server/Server.js +1 -1
- package/dist/server/Server.js.map +1 -1
- package/dist/server/fastifyRoutes/helpers/getCORSOptions.js +1 -1
- package/dist/server/fastifyRoutes/helpers/getHeaderTimeoutConfig.js +1 -1
- package/dist/server/fastifyRoutes/helpers/getServerOptions.js +1 -1
- package/dist/server/fastifyRoutes.d.ts +1 -4
- package/dist/server/fastifyRoutes.js +34 -30
- package/dist/server/fastifyRoutes.js.map +1 -1
- package/dist/server/graphqlQuerying.d.ts +1 -1
- package/dist/server/graphqlQuerying.js +8 -7
- package/dist/server/graphqlQuerying.js.map +1 -1
- package/dist/server/http.d.ts +9 -4
- package/dist/server/http.js +523 -47
- package/dist/server/http.js.map +1 -1
- package/dist/server/itc/serverHandlers.js +66 -15
- package/dist/server/itc/serverHandlers.js.map +1 -1
- package/dist/server/jobs/JobObject.d.ts +3 -3
- package/dist/server/jobs/JobObject.js +53 -7
- package/dist/server/jobs/JobObject.js.map +1 -1
- package/dist/server/jobs/jobProcess.js +64 -24
- package/dist/server/jobs/jobProcess.js.map +1 -1
- package/dist/server/jobs/jobRunner.d.ts +7 -6
- package/dist/server/jobs/jobRunner.js +68 -30
- package/dist/server/jobs/jobRunner.js.map +1 -1
- package/dist/server/jobs/jobs.d.ts +18 -7
- package/dist/server/jobs/jobs.js +93 -61
- package/dist/server/jobs/jobs.js.map +1 -1
- package/dist/server/loadRootComponents.js +1 -1
- package/dist/server/middlewareChain.d.ts +80 -0
- package/dist/server/middlewareChain.js +252 -0
- package/dist/server/middlewareChain.js.map +1 -0
- package/dist/server/mqtt.d.ts +1 -8
- package/dist/server/mqtt.js +22 -17
- package/dist/server/mqtt.js.map +1 -1
- package/dist/server/nodeName.js +44 -13
- package/dist/server/nodeName.js.map +1 -1
- package/dist/server/operationsServer.d.ts +2 -2
- package/dist/server/operationsServer.js +106 -33
- package/dist/server/operationsServer.js.map +1 -1
- package/dist/server/serverHelpers/Headers.d.ts +4 -4
- package/dist/server/serverHelpers/Headers.js +2 -0
- package/dist/server/serverHelpers/Headers.js.map +1 -1
- package/dist/server/serverHelpers/JSONStream.d.ts +7 -1
- package/dist/server/serverHelpers/JSONStream.js +12 -3
- package/dist/server/serverHelpers/JSONStream.js.map +1 -1
- package/dist/server/serverHelpers/Request.d.ts +106 -8
- package/dist/server/serverHelpers/Request.js +370 -9
- package/dist/server/serverHelpers/Request.js.map +1 -1
- package/dist/server/serverHelpers/contentTypes.d.ts +1 -1
- package/dist/server/serverHelpers/contentTypes.js +36 -7
- package/dist/server/serverHelpers/contentTypes.js.map +1 -1
- package/dist/server/serverHelpers/multipartParser.d.ts +21 -0
- package/dist/server/serverHelpers/multipartParser.js +142 -0
- package/dist/server/serverHelpers/multipartParser.js.map +1 -0
- package/dist/server/serverHelpers/progressEmitter.d.ts +25 -0
- package/dist/server/serverHelpers/progressEmitter.js +103 -0
- package/dist/server/serverHelpers/progressEmitter.js.map +1 -0
- package/dist/server/serverHelpers/serverHandlers.d.ts +1 -1
- package/dist/server/serverHelpers/serverHandlers.js +38 -7
- package/dist/server/serverHelpers/serverHandlers.js.map +1 -1
- package/dist/server/serverHelpers/serverUtilities.d.ts +4 -2
- package/dist/server/serverHelpers/serverUtilities.js +97 -93
- package/dist/server/serverHelpers/serverUtilities.js.map +1 -1
- package/dist/server/static.js +8 -5
- package/dist/server/static.js.map +1 -1
- package/dist/server/status/index.js +3 -3
- package/dist/server/storageReclamation.d.ts +10 -0
- package/dist/server/storageReclamation.js +68 -9
- package/dist/server/storageReclamation.js.map +1 -1
- package/dist/server/threads/itc.js +7 -4
- package/dist/server/threads/itc.js.map +1 -1
- package/dist/server/threads/manageThreads.d.ts +1 -1
- package/dist/server/threads/manageThreads.js +110 -26
- package/dist/server/threads/manageThreads.js.map +1 -1
- package/dist/server/threads/socketRouter.d.ts +0 -1
- package/dist/server/threads/socketRouter.js +8 -271
- package/dist/server/threads/socketRouter.js.map +1 -1
- package/dist/server/threads/threadServer.d.ts +1 -0
- package/dist/server/threads/threadServer.js +360 -118
- package/dist/server/threads/threadServer.js.map +1 -1
- package/dist/server/threads/workerProcessGuard.d.ts +42 -0
- package/dist/server/threads/workerProcessGuard.js +114 -0
- package/dist/server/threads/workerProcessGuard.js.map +1 -0
- package/dist/server/throttle.js +17 -0
- package/dist/server/throttle.js.map +1 -1
- package/dist/sqlTranslator/SelectValidator.d.ts +21 -24
- package/dist/sqlTranslator/SelectValidator.js +86 -47
- package/dist/sqlTranslator/SelectValidator.js.map +1 -1
- package/dist/sqlTranslator/alasqlFunctionImporter.d.ts +6 -2
- package/dist/sqlTranslator/alasqlFunctionImporter.js +40 -3
- package/dist/sqlTranslator/alasqlFunctionImporter.js.map +1 -1
- package/dist/sqlTranslator/deleteTranslator.d.ts +4 -7
- package/dist/sqlTranslator/deleteTranslator.js +48 -14
- package/dist/sqlTranslator/deleteTranslator.js.map +1 -1
- package/dist/sqlTranslator/index.d.ts +10 -9
- package/dist/sqlTranslator/index.js +69 -30
- package/dist/sqlTranslator/index.js.map +1 -1
- package/dist/sqlTranslator/sql_statement_bucket.d.ts +10 -10
- package/dist/sqlTranslator/sql_statement_bucket.js +55 -13
- package/dist/sqlTranslator/sql_statement_bucket.js.map +1 -1
- package/dist/upgrade/UpgradeObjects.d.ts +2 -3
- package/dist/upgrade/UpgradeObjects.js +37 -4
- package/dist/upgrade/UpgradeObjects.js.map +1 -1
- package/dist/upgrade/directives/5-2-0.d.ts +6 -0
- package/dist/upgrade/directives/5-2-0.js +77 -0
- package/dist/upgrade/directives/5-2-0.js.map +1 -0
- package/dist/upgrade/directives/directivesController.d.ts +10 -10
- package/dist/upgrade/directives/directivesController.js +52 -11
- package/dist/upgrade/directives/directivesController.js.map +1 -1
- package/dist/upgrade/directivesManager.d.ts +1 -1
- package/dist/upgrade/directivesManager.js +53 -18
- package/dist/upgrade/directivesManager.js.map +1 -1
- package/dist/upgrade/upgradePrompt.d.ts +3 -3
- package/dist/upgrade/upgradePrompt.js +65 -30
- package/dist/upgrade/upgradePrompt.js.map +1 -1
- package/dist/upgrade/upgradeUtilities.d.ts +1 -1
- package/dist/upgrade/upgradeUtilities.js +37 -5
- package/dist/upgrade/upgradeUtilities.js.map +1 -1
- package/dist/utility/OperationFunctionCaller.d.ts +1 -1
- package/dist/utility/OperationFunctionCaller.js +45 -10
- package/dist/utility/OperationFunctionCaller.js.map +1 -1
- package/dist/utility/assignCmdEnvVariables.d.ts +1 -2
- package/dist/utility/assignCmdEnvVariables.js +8 -4
- package/dist/utility/assignCmdEnvVariables.js.map +1 -1
- package/dist/utility/common_utils.d.ts +80 -77
- package/dist/utility/common_utils.js +140 -79
- package/dist/utility/common_utils.js.map +1 -1
- package/dist/utility/environment/environmentManager.d.ts +12 -11
- package/dist/utility/environment/environmentManager.js +75 -29
- package/dist/utility/environment/environmentManager.js.map +1 -1
- package/dist/utility/environment/systemInformation.d.ts +4 -0
- package/dist/utility/environment/systemInformation.js +27 -16
- package/dist/utility/environment/systemInformation.js.map +1 -1
- package/dist/utility/errors/commonErrors.d.ts +192 -168
- package/dist/utility/errors/commonErrors.js +49 -18
- package/dist/utility/errors/commonErrors.js.map +1 -1
- package/dist/utility/errors/hdbError.d.ts +37 -51
- package/dist/utility/errors/hdbError.js +65 -26
- package/dist/utility/errors/hdbError.js.map +1 -1
- package/dist/utility/expandEnvVar.d.ts +61 -0
- package/dist/utility/expandEnvVar.js +113 -0
- package/dist/utility/expandEnvVar.js.map +1 -0
- package/dist/utility/functions/geo.js +2 -2
- package/dist/utility/functions/sql/alaSQLExtension.js +1 -1
- package/dist/utility/globalSchema.d.ts +13 -4
- package/dist/utility/globalSchema.js +14 -11
- package/dist/utility/globalSchema.js.map +1 -1
- package/dist/utility/hdbTerms.d.ts +56 -0
- package/dist/utility/hdbTerms.js +56 -0
- package/dist/utility/hdbTerms.js.map +1 -1
- package/dist/utility/install/checkJWTTokensExist.js +1 -1
- package/dist/utility/install/installer.d.ts +9 -12
- package/dist/utility/install/installer.js +87 -51
- package/dist/utility/install/installer.js.map +1 -1
- package/dist/utility/installation.js +3 -3
- package/dist/utility/lmdb/DBIDefinition.d.ts +4 -4
- package/dist/utility/lmdb/DBIDefinition.js +5 -1
- package/dist/utility/lmdb/DBIDefinition.js.map +1 -1
- package/dist/utility/lmdb/DeleteRecordsResponseObject.d.ts +3 -6
- package/dist/utility/lmdb/DeleteRecordsResponseObject.js +2 -1
- package/dist/utility/lmdb/DeleteRecordsResponseObject.js.map +1 -1
- package/dist/utility/lmdb/InsertRecordsResponseObject.d.ts +3 -5
- package/dist/utility/lmdb/InsertRecordsResponseObject.js +2 -1
- package/dist/utility/lmdb/InsertRecordsResponseObject.js.map +1 -1
- package/dist/utility/lmdb/OpenDBIObject.d.ts +11 -15
- package/dist/utility/lmdb/OpenDBIObject.js +54 -6
- package/dist/utility/lmdb/OpenDBIObject.js.map +1 -1
- package/dist/utility/lmdb/OpenEnvironmentObject.d.ts +5 -8
- package/dist/utility/lmdb/OpenEnvironmentObject.js +52 -4
- package/dist/utility/lmdb/OpenEnvironmentObject.js.map +1 -1
- package/dist/utility/lmdb/UpdateRecordsResponseObject.d.ts +3 -6
- package/dist/utility/lmdb/UpdateRecordsResponseObject.js +2 -1
- package/dist/utility/lmdb/UpdateRecordsResponseObject.js.map +1 -1
- package/dist/utility/lmdb/UpsertRecordsResponseObject.d.ts +3 -5
- package/dist/utility/lmdb/UpsertRecordsResponseObject.js +2 -1
- package/dist/utility/lmdb/UpsertRecordsResponseObject.js.map +1 -1
- package/dist/utility/lmdb/cleanLMDBMap.d.ts +1 -1
- package/dist/utility/lmdb/cleanLMDBMap.js +44 -7
- package/dist/utility/lmdb/cleanLMDBMap.js.map +1 -1
- package/dist/utility/lmdb/commonUtility.d.ts +8 -9
- package/dist/utility/lmdb/commonUtility.js +46 -17
- package/dist/utility/lmdb/commonUtility.js.map +1 -1
- package/dist/utility/lmdb/deleteUtility.d.ts +2 -3
- package/dist/utility/lmdb/deleteUtility.js +51 -16
- package/dist/utility/lmdb/deleteUtility.js.map +1 -1
- package/dist/utility/lmdb/environmentUtility.d.ts +69 -36
- package/dist/utility/lmdb/environmentUtility.js +91 -51
- package/dist/utility/lmdb/environmentUtility.js.map +1 -1
- package/dist/utility/lmdb/searchCursorFunctions.d.ts +19 -19
- package/dist/utility/lmdb/searchCursorFunctions.js +46 -14
- package/dist/utility/lmdb/searchCursorFunctions.js.map +1 -1
- package/dist/utility/lmdb/searchUtility.d.ts +142 -73
- package/dist/utility/lmdb/searchUtility.js +91 -55
- package/dist/utility/lmdb/searchUtility.js.map +1 -1
- package/dist/utility/lmdb/terms.d.ts +34 -34
- package/dist/utility/lmdb/terms.js +12 -22
- package/dist/utility/lmdb/terms.js.map +1 -1
- package/dist/utility/lmdb/writeUtility.d.ts +3 -6
- package/dist/utility/lmdb/writeUtility.js +61 -28
- package/dist/utility/lmdb/writeUtility.js.map +1 -1
- package/dist/utility/logging/harper_logger.d.ts +87 -103
- package/dist/utility/logging/harper_logger.js +176 -81
- package/dist/utility/logging/harper_logger.js.map +1 -1
- package/dist/utility/logging/logRotator.d.ts +2 -10
- package/dist/utility/logging/logRotator.js +65 -28
- package/dist/utility/logging/logRotator.js.map +1 -1
- package/dist/utility/logging/logger.js +4 -4
- package/dist/utility/logging/readLog.d.ts +1 -1
- package/dist/utility/logging/readLog.js +54 -17
- package/dist/utility/logging/readLog.js.map +1 -1
- package/dist/utility/logging/transactionLog.d.ts +2 -2
- package/dist/utility/logging/transactionLog.js +51 -16
- package/dist/utility/logging/transactionLog.js.map +1 -1
- package/dist/utility/mount_hdb.d.ts +1 -2
- package/dist/utility/mount_hdb.js +54 -17
- package/dist/utility/mount_hdb.js.map +1 -1
- package/dist/utility/npmUtilities.d.ts +1 -1
- package/dist/utility/npmUtilities.js +54 -19
- package/dist/utility/npmUtilities.js.map +1 -1
- package/dist/utility/operation_authorization.d.ts +36 -9
- package/dist/utility/operation_authorization.js +135 -86
- package/dist/utility/operation_authorization.js.map +1 -1
- package/dist/utility/packageUtils.d.ts +0 -2
- package/dist/utility/packageUtils.js +7 -17
- package/dist/utility/packageUtils.js.map +1 -1
- package/dist/utility/password.js +2 -2
- package/dist/utility/processManagement/processManagement.js +2 -2
- package/dist/utility/processManagement/servicesConfig.js +1 -1
- package/dist/utility/signalling.d.ts +2 -2
- package/dist/utility/signalling.js +51 -16
- package/dist/utility/signalling.js.map +1 -1
- package/dist/utility/watcherFallback.d.ts +36 -0
- package/dist/utility/watcherFallback.js +73 -0
- package/dist/utility/watcherFallback.js.map +1 -0
- package/dist/validation/analyticsValidator.d.ts +1 -0
- package/dist/validation/analyticsValidator.js +79 -0
- package/dist/validation/analyticsValidator.js.map +1 -0
- package/dist/validation/bulkDeleteValidator.d.ts +1 -2
- package/dist/validation/bulkDeleteValidator.js +49 -11
- package/dist/validation/bulkDeleteValidator.js.map +1 -1
- package/dist/validation/check_permissions.d.ts +1 -2
- package/dist/validation/check_permissions.js +38 -3
- package/dist/validation/check_permissions.js.map +1 -1
- package/dist/validation/common_validators.d.ts +20 -20
- package/dist/validation/common_validators.js +62 -31
- package/dist/validation/common_validators.js.map +1 -1
- package/dist/validation/configValidator.d.ts +4 -4
- package/dist/validation/configValidator.js +189 -54
- package/dist/validation/configValidator.js.map +1 -1
- package/dist/validation/deleteValidator.d.ts +1 -2
- package/dist/validation/deleteValidator.js +49 -11
- package/dist/validation/deleteValidator.js.map +1 -1
- package/dist/validation/fileLoadValidator.d.ts +4 -4
- package/dist/validation/fileLoadValidator.js +67 -32
- package/dist/validation/fileLoadValidator.js.map +1 -1
- package/dist/validation/insertValidator.d.ts +1 -2
- package/dist/validation/insertValidator.js +48 -10
- package/dist/validation/insertValidator.js.map +1 -1
- package/dist/validation/installValidator.d.ts +2 -2
- package/dist/validation/installValidator.js +47 -10
- package/dist/validation/installValidator.js.map +1 -1
- package/dist/validation/readLogValidator.d.ts +1 -2
- package/dist/validation/readLogValidator.js +60 -22
- package/dist/validation/readLogValidator.js.map +1 -1
- package/dist/validation/role_validation.d.ts +3 -3
- package/dist/validation/role_validation.js +55 -19
- package/dist/validation/role_validation.js.map +1 -1
- package/dist/validation/schemaMetadataValidator.d.ts +3 -4
- package/dist/validation/schemaMetadataValidator.js +11 -12
- package/dist/validation/schemaMetadataValidator.js.map +1 -1
- package/dist/validation/searchValidator.d.ts +1 -2
- package/dist/validation/searchValidator.js +82 -43
- package/dist/validation/searchValidator.js.map +1 -1
- package/dist/validation/statusValidator.d.ts +1 -1
- package/dist/validation/transactionLogValidator.d.ts +3 -3
- package/dist/validation/transactionLogValidator.js +52 -17
- package/dist/validation/transactionLogValidator.js.map +1 -1
- package/dist/validation/user_validation.d.ts +3 -3
- package/dist/validation/user_validation.js +38 -6
- package/dist/validation/user_validation.js.map +1 -1
- package/dist/validation/validationWrapper.d.ts +3 -3
- package/dist/validation/validationWrapper.js +4 -5
- package/dist/validation/validationWrapper.js.map +1 -1
- package/index.ts +5 -0
- package/json/systemSchema.json +65 -0
- package/launchServiceScripts/utility/checkNodeVersion.js +2 -0
- package/package.json +37 -22
- package/resources/DESIGN.md +98 -0
- package/resources/DatabaseTransaction.ts +58 -30
- package/resources/ErrorResource.ts +2 -1
- package/resources/LMDBTransaction.ts +38 -29
- package/resources/RecordEncoder.ts +12 -4
- package/resources/RequestTarget.ts +2 -0
- package/resources/Resource.ts +89 -56
- package/resources/ResourceInterface.ts +44 -21
- package/resources/Resources.ts +8 -8
- package/resources/RocksIndexStore.ts +3 -0
- package/resources/RocksTransactionLogStore.ts +47 -28
- package/resources/Table.ts +386 -214
- package/resources/analytics/metadata.ts +1 -0
- package/resources/analytics/read.ts +24 -6
- package/resources/analytics/write.ts +240 -17
- package/resources/auditStore.ts +28 -19
- package/resources/blob.ts +53 -53
- package/resources/dataLoader.ts +4 -4
- package/resources/databases.ts +190 -71
- package/resources/graphql.ts +227 -164
- package/resources/indexes/HierarchicalNavigableSmallWorld.ts +294 -65
- package/resources/indexes/vector.ts +17 -0
- package/resources/loadEnv.ts +21 -17
- package/resources/login.ts +5 -3
- package/resources/models/Models.ts +304 -0
- package/resources/models/TestBackend.ts +83 -0
- package/resources/models/agentLoop.ts +895 -0
- package/resources/models/analyticsTable.ts +199 -0
- package/resources/models/backendHelpers.ts +116 -0
- package/resources/models/backendRegistry.ts +66 -0
- package/resources/models/bootstrap.ts +135 -0
- package/resources/models/embedHook.ts +138 -0
- package/resources/models/types.ts +296 -0
- package/resources/replayLogs.ts +15 -7
- package/resources/roles.ts +62 -67
- package/resources/search.ts +355 -135
- package/resources/tracked.ts +8 -8
- package/resources/transaction.ts +8 -8
- package/resources/transactionBroadcast.ts +3 -3
- package/security/auth.ts +35 -26
- package/security/certificateVerification/crlVerification.ts +11 -4
- package/security/{cryptoHash.js → cryptoHash.ts} +3 -8
- package/security/data_objects/{PermissionAttributeResponseObject.js → PermissionAttributeResponseObject.ts} +4 -4
- package/security/data_objects/{PermissionResponseObject.js → PermissionResponseObject.ts} +12 -11
- package/security/data_objects/{PermissionTableResponseObject.js → PermissionTableResponseObject.ts} +6 -4
- package/security/{fastifyAuth.js → fastifyAuth.ts} +93 -20
- package/security/impersonation.ts +3 -3
- package/security/jsLoader.ts +22 -8
- package/security/{keys.js → keys.ts} +113 -121
- package/security/permissionsTranslator.js +2 -2
- package/security/{role.js → role.ts} +26 -33
- package/security/tokenAuthentication.ts +34 -7
- package/security/user.ts +26 -22
- package/server/DESIGN.md +139 -0
- package/server/DurableSubscriptionsSession.ts +67 -50
- package/server/REST.ts +120 -107
- package/server/Server.ts +31 -12
- package/server/fastifyRoutes/helpers/getCORSOptions.js +1 -1
- package/server/fastifyRoutes/helpers/getHeaderTimeoutConfig.js +1 -1
- package/server/fastifyRoutes/helpers/getServerOptions.js +1 -1
- package/server/fastifyRoutes.ts +37 -33
- package/server/graphqlQuerying.ts +6 -5
- package/server/http.ts +517 -26
- package/server/itc/serverHandlers.js +75 -14
- package/server/jobs/{JobObject.js → JobObject.ts} +13 -6
- package/server/jobs/{jobProcess.js → jobProcess.ts} +20 -16
- package/server/jobs/{jobRunner.js → jobRunner.ts} +20 -21
- package/server/jobs/{jobs.js → jobs.ts} +41 -44
- package/server/loadRootComponents.js +1 -1
- package/server/middlewareChain.ts +270 -0
- package/server/mqtt.ts +35 -26
- package/server/nodeName.ts +2 -1
- package/server/operationsServer.ts +85 -10
- package/server/serverHelpers/Headers.ts +10 -8
- package/server/serverHelpers/JSONStream.ts +15 -5
- package/server/serverHelpers/Request.ts +370 -13
- package/server/serverHelpers/contentTypes.ts +42 -11
- package/server/serverHelpers/multipartParser.ts +152 -0
- package/server/serverHelpers/progressEmitter.ts +110 -0
- package/server/serverHelpers/serverHandlers.js +43 -7
- package/server/serverHelpers/serverUtilities.ts +40 -30
- package/server/static.ts +9 -6
- package/server/status/index.ts +2 -2
- package/server/storageReclamation.ts +39 -2
- package/server/threads/itc.js +7 -4
- package/server/threads/manageThreads.js +100 -26
- package/server/threads/socketRouter.ts +12 -275
- package/server/threads/threadServer.js +345 -105
- package/server/threads/workerProcessGuard.ts +93 -0
- package/server/throttle.ts +18 -0
- package/sqlTranslator/{SelectValidator.js → SelectValidator.ts} +41 -49
- package/sqlTranslator/{alasqlFunctionImporter.js → alasqlFunctionImporter.ts} +5 -5
- package/sqlTranslator/{deleteTranslator.js → deleteTranslator.ts} +13 -18
- package/sqlTranslator/{index.js → index.ts} +30 -33
- package/sqlTranslator/{sql_statement_bucket.js → sql_statement_bucket.ts} +49 -20
- package/static/README.md +10 -9
- package/studio/web/assets/{index-CmtPP0YO.js → index-COfIkCT-.js} +5 -5
- package/studio/web/assets/index-COfIkCT-.js.map +1 -0
- package/studio/web/assets/{index.lazy-C8jvGtlu.js → index.lazy-CIvl7Fj9.js} +2 -2
- package/studio/web/assets/{index.lazy-C8jvGtlu.js.map → index.lazy-CIvl7Fj9.js.map} +1 -1
- package/studio/web/assets/{profile-O0DYlJUv.js → profile-B2ZVB--r.js} +2 -2
- package/studio/web/assets/{profile-O0DYlJUv.js.map → profile-B2ZVB--r.js.map} +1 -1
- package/studio/web/assets/{status-BIlJkJby.js → status-Db6WBmhf.js} +2 -2
- package/studio/web/assets/{status-BIlJkJby.js.map → status-Db6WBmhf.js.map} +1 -1
- package/studio/web/index.html +1 -1
- package/upgrade/{UpgradeObjects.js → UpgradeObjects.ts} +3 -6
- package/upgrade/directives/5-2-0.ts +49 -0
- package/upgrade/directives/{directivesController.js → directivesController.ts} +16 -16
- package/upgrade/{directivesManager.js → directivesManager.ts} +7 -11
- package/upgrade/{upgradePrompt.js → upgradePrompt.ts} +8 -14
- package/upgrade/{upgradeUtilities.js → upgradeUtilities.ts} +3 -7
- package/utility/{OperationFunctionCaller.js → OperationFunctionCaller.ts} +7 -7
- package/utility/{assignCmdEnvVariables.js → assignCmdEnvVariables.ts} +6 -8
- package/utility/{common_utils.js → common_utils.ts} +113 -139
- package/utility/environment/{environmentManager.js → environmentManager.ts} +34 -33
- package/utility/environment/systemInformation.ts +18 -4
- package/utility/errors/{commonErrors.js → commonErrors.ts} +9 -9
- package/utility/errors/{hdbError.js → hdbError.ts} +39 -45
- package/utility/expandEnvVar.ts +110 -0
- package/utility/functions/geo.js +2 -2
- package/utility/functions/sql/alaSQLExtension.js +1 -1
- package/utility/globalSchema.ts +30 -0
- package/utility/hdbTerms.ts +56 -0
- package/utility/install/checkJWTTokensExist.js +1 -1
- package/utility/install/{installer.js → installer.ts} +38 -39
- package/utility/installation.ts +2 -2
- package/utility/lmdb/{DBIDefinition.js → DBIDefinition.ts} +4 -1
- package/utility/lmdb/{DeleteRecordsResponseObject.js → DeleteRecordsResponseObject.ts} +2 -1
- package/utility/lmdb/{InsertRecordsResponseObject.js → InsertRecordsResponseObject.ts} +2 -1
- package/utility/lmdb/OpenDBIObject.ts +43 -0
- package/utility/lmdb/{OpenEnvironmentObject.js → OpenEnvironmentObject.ts} +19 -6
- package/utility/lmdb/{UpdateRecordsResponseObject.js → UpdateRecordsResponseObject.ts} +2 -1
- package/utility/lmdb/{UpsertRecordsResponseObject.js → UpsertRecordsResponseObject.ts} +2 -1
- package/utility/lmdb/{cleanLMDBMap.js → cleanLMDBMap.ts} +5 -5
- package/utility/lmdb/{commonUtility.js → commonUtility.ts} +13 -21
- package/utility/lmdb/{deleteUtility.js → deleteUtility.ts} +8 -12
- package/utility/lmdb/{environmentUtility.js → environmentUtility.ts} +43 -52
- package/utility/lmdb/{searchCursorFunctions.js → searchCursorFunctions.ts} +12 -26
- package/utility/lmdb/{searchUtility.js → searchUtility.ts} +75 -64
- package/utility/lmdb/{terms.js → terms.ts} +10 -23
- package/utility/lmdb/{writeUtility.js → writeUtility.ts} +37 -22
- package/utility/logging/{harper_logger.js → harper_logger.ts} +136 -89
- package/utility/logging/{logRotator.js → logRotator.ts} +13 -13
- package/utility/logging/logger.ts +1 -1
- package/utility/logging/{readLog.js → readLog.ts} +19 -19
- package/utility/logging/{transactionLog.js → transactionLog.ts} +10 -14
- package/utility/{mount_hdb.js → mount_hdb.ts} +15 -16
- package/utility/{npmUtilities.js → npmUtilities.ts} +14 -17
- package/utility/{operation_authorization.js → operation_authorization.ts} +173 -124
- package/utility/packageUtils.js +7 -16
- package/utility/password.ts +1 -1
- package/utility/processManagement/processManagement.js +2 -2
- package/utility/processManagement/servicesConfig.js +1 -1
- package/utility/{signalling.js → signalling.ts} +6 -11
- package/utility/watcherFallback.ts +74 -0
- package/validation/analyticsValidator.ts +43 -0
- package/validation/{bulkDeleteValidator.js → bulkDeleteValidator.ts} +5 -5
- package/validation/{check_permissions.js → check_permissions.ts} +3 -3
- package/validation/{common_validators.js → common_validators.ts} +12 -24
- package/validation/{configValidator.js → configValidator.ts} +114 -18
- package/validation/{deleteValidator.js → deleteValidator.ts} +5 -5
- package/validation/{fileLoadValidator.js → fileLoadValidator.ts} +12 -19
- package/validation/{insertValidator.js → insertValidator.ts} +5 -5
- package/validation/{installValidator.js → installValidator.ts} +8 -8
- package/validation/{readLogValidator.js → readLogValidator.ts} +10 -10
- package/validation/{role_validation.js → role_validation.ts} +26 -32
- package/validation/{schemaMetadataValidator.js → schemaMetadataValidator.ts} +5 -11
- package/validation/{searchValidator.js → searchValidator.ts} +12 -11
- package/validation/statusValidator.ts +1 -1
- package/validation/{transactionLogValidator.js → transactionLogValidator.ts} +4 -9
- package/validation/{user_validation.js → user_validation.ts} +4 -10
- package/validation/{validationWrapper.js → validationWrapper.ts} +3 -9
- package/bin/cliOperations.js +0 -159
- package/bin/lite.js +0 -5
- package/dataLayer/harperBridge/BridgeMethods.js +0 -85
- package/studio/web/assets/index-CmtPP0YO.js.map +0 -1
- package/utility/globalSchema.js +0 -35
- package/utility/lmdb/OpenDBIObject.js +0 -31
|
@@ -12,10 +12,10 @@ const node_crypto_1 = require("node:crypto");
|
|
|
12
12
|
const yaml_1 = require("yaml");
|
|
13
13
|
const databases_ts_1 = require("./databases.js");
|
|
14
14
|
const manageThreads_1 = require("../server/threads/manageThreads");
|
|
15
|
-
const
|
|
16
|
-
const
|
|
17
|
-
const
|
|
18
|
-
const dataLoaderLogger =
|
|
15
|
+
const commonErrors_ts_1 = require("../utility/errors/commonErrors.js");
|
|
16
|
+
const hdbError_ts_1 = require("../utility/errors/hdbError.js");
|
|
17
|
+
const harper_logger_ts_1 = __importDefault(require("../utility/logging/harper_logger.js"));
|
|
18
|
+
const dataLoaderLogger = harper_logger_ts_1.default.forComponent('dataLoader');
|
|
19
19
|
/** System table name for storing data loader hashes */
|
|
20
20
|
const DATA_LOADER_HASH_TABLE = 'hdb_dataloader_hash';
|
|
21
21
|
/** Lazy-initialized cache for the hash tracking table */
|
|
@@ -333,8 +333,8 @@ async function loadDataFile({ contents, absolutePath }, tablesRef, databasesRef)
|
|
|
333
333
|
/**
|
|
334
334
|
* Base class for DataLoader specific errors
|
|
335
335
|
*/
|
|
336
|
-
class DataLoaderError extends
|
|
337
|
-
constructor(message, statusCode =
|
|
336
|
+
class DataLoaderError extends hdbError_ts_1.ClientError {
|
|
337
|
+
constructor(message, statusCode = commonErrors_ts_1.HTTP_STATUS_CODES.BAD_REQUEST) {
|
|
338
338
|
super(message, statusCode);
|
|
339
339
|
this.name = 'DataLoaderError';
|
|
340
340
|
}
|
|
@@ -345,7 +345,7 @@ exports.DataLoaderError = DataLoaderError;
|
|
|
345
345
|
*/
|
|
346
346
|
class UnsupportedFileExtensionError extends DataLoaderError {
|
|
347
347
|
constructor(filePath, extension) {
|
|
348
|
-
super(`Unsupported file extension in ${(0, node_path_1.basename)(filePath)}: ${extension}. Only YAML and JSON files are supported.`,
|
|
348
|
+
super(`Unsupported file extension in ${(0, node_path_1.basename)(filePath)}: ${extension}. Only YAML and JSON files are supported.`, commonErrors_ts_1.HTTP_STATUS_CODES.BAD_REQUEST);
|
|
349
349
|
this.name = 'UnsupportedFileExtensionError';
|
|
350
350
|
}
|
|
351
351
|
}
|
|
@@ -355,7 +355,7 @@ exports.UnsupportedFileExtensionError = UnsupportedFileExtensionError;
|
|
|
355
355
|
*/
|
|
356
356
|
class FileParseError extends DataLoaderError {
|
|
357
357
|
constructor(filePath, originalError) {
|
|
358
|
-
super(`Failed to parse data file ${(0, node_path_1.basename)(filePath)}: ${originalError.message}`,
|
|
358
|
+
super(`Failed to parse data file ${(0, node_path_1.basename)(filePath)}: ${originalError.message}`, commonErrors_ts_1.HTTP_STATUS_CODES.BAD_REQUEST);
|
|
359
359
|
this.name = 'FileParseError';
|
|
360
360
|
}
|
|
361
361
|
}
|
|
@@ -365,7 +365,7 @@ exports.FileParseError = FileParseError;
|
|
|
365
365
|
*/
|
|
366
366
|
class EmptyFileError extends DataLoaderError {
|
|
367
367
|
constructor(filePath) {
|
|
368
|
-
super(`Data file ${(0, node_path_1.basename)(filePath)} is empty or invalid`,
|
|
368
|
+
super(`Data file ${(0, node_path_1.basename)(filePath)} is empty or invalid`, commonErrors_ts_1.HTTP_STATUS_CODES.BAD_REQUEST);
|
|
369
369
|
this.name = 'EmptyFileError';
|
|
370
370
|
}
|
|
371
371
|
}
|
|
@@ -375,7 +375,7 @@ exports.EmptyFileError = EmptyFileError;
|
|
|
375
375
|
*/
|
|
376
376
|
class MissingRequiredPropertyError extends DataLoaderError {
|
|
377
377
|
constructor(filePath, property) {
|
|
378
|
-
super(`Data file ${(0, node_path_1.basename)(filePath)} is missing required "${property}" property`,
|
|
378
|
+
super(`Data file ${(0, node_path_1.basename)(filePath)} is missing required "${property}" property`, commonErrors_ts_1.HTTP_STATUS_CODES.BAD_REQUEST);
|
|
379
379
|
this.name = 'MissingRequiredPropertyError';
|
|
380
380
|
}
|
|
381
381
|
}
|
|
@@ -385,7 +385,7 @@ exports.MissingRequiredPropertyError = MissingRequiredPropertyError;
|
|
|
385
385
|
*/
|
|
386
386
|
class InvalidPropertyTypeError extends DataLoaderError {
|
|
387
387
|
constructor(filePath, property, expectedType) {
|
|
388
|
-
super(`Data file ${(0, node_path_1.basename)(filePath)} has invalid "${property}" property, expected ${expectedType}`,
|
|
388
|
+
super(`Data file ${(0, node_path_1.basename)(filePath)} has invalid "${property}" property, expected ${expectedType}`, commonErrors_ts_1.HTTP_STATUS_CODES.BAD_REQUEST);
|
|
389
389
|
this.name = 'InvalidPropertyTypeError';
|
|
390
390
|
}
|
|
391
391
|
}
|
|
@@ -395,7 +395,7 @@ exports.InvalidPropertyTypeError = InvalidPropertyTypeError;
|
|
|
395
395
|
*/
|
|
396
396
|
class SystemDatabaseError extends DataLoaderError {
|
|
397
397
|
constructor(database, table) {
|
|
398
|
-
super(`Cannot load data into system database: ${database}.${table}`,
|
|
398
|
+
super(`Cannot load data into system database: ${database}.${table}`, commonErrors_ts_1.HTTP_STATUS_CODES.FORBIDDEN);
|
|
399
399
|
this.name = 'SystemDatabaseError';
|
|
400
400
|
}
|
|
401
401
|
}
|
|
@@ -405,7 +405,7 @@ exports.SystemDatabaseError = SystemDatabaseError;
|
|
|
405
405
|
*/
|
|
406
406
|
class RecordProcessingError extends DataLoaderError {
|
|
407
407
|
constructor(tableIdentifier, originalError) {
|
|
408
|
-
super(`Failed to process record in ${tableIdentifier}: ${originalError.message}`,
|
|
408
|
+
super(`Failed to process record in ${tableIdentifier}: ${originalError.message}`, commonErrors_ts_1.HTTP_STATUS_CODES.INTERNAL_SERVER_ERROR);
|
|
409
409
|
this.name = 'RecordProcessingError';
|
|
410
410
|
}
|
|
411
411
|
}
|
|
@@ -2,6 +2,7 @@ import { EventEmitter } from 'node:events';
|
|
|
2
2
|
import { type Database, type RootDatabase } from 'lmdb';
|
|
3
3
|
import { makeTable } from './Table.ts';
|
|
4
4
|
import { RocksDatabase } from '@harperfast/rocksdb-js';
|
|
5
|
+
export declare function isReadOnlyMode(): boolean;
|
|
5
6
|
declare const DEFINED_TABLES: unique symbol;
|
|
6
7
|
export declare const NON_REPLICATING_SYSTEM_TABLES: string[];
|
|
7
8
|
export type Table = ReturnType<typeof makeTable> & {
|
|
@@ -29,6 +30,10 @@ interface LMDBRootDatabase extends RootDatabase {
|
|
|
29
30
|
needsDeletion?: boolean;
|
|
30
31
|
path?: string;
|
|
31
32
|
status?: 'open' | 'closed';
|
|
33
|
+
store: any;
|
|
34
|
+
retryRisk?: number;
|
|
35
|
+
flushed: Promise<boolean>;
|
|
36
|
+
rootStore?: LMDBRootDatabase;
|
|
32
37
|
}
|
|
33
38
|
interface RocksDatabaseEx extends RocksDatabase {
|
|
34
39
|
customIndex?: any;
|
|
@@ -44,6 +49,10 @@ interface RocksRootDatabase extends RocksDatabaseEx {
|
|
|
44
49
|
auditStore?: RocksDatabaseEx;
|
|
45
50
|
databaseName?: string;
|
|
46
51
|
dbisDb?: RocksDatabaseEx;
|
|
52
|
+
store: any;
|
|
53
|
+
retryRisk?: number;
|
|
54
|
+
flushed: Promise<boolean>;
|
|
55
|
+
rootStore?: RocksRootDatabase;
|
|
47
56
|
}
|
|
48
57
|
export type RootDatabaseKind = LMDBRootDatabase | RocksRootDatabase;
|
|
49
58
|
export type DatabaseWatcherEventMap = {
|
|
@@ -138,4 +147,8 @@ export declare function onRemovedDB(listener: (databaseName: string) => void): {
|
|
|
138
147
|
export declare function getDefaultCompression(): {
|
|
139
148
|
startingOffset: number;
|
|
140
149
|
};
|
|
150
|
+
/**
|
|
151
|
+
* Force all RocksDB databases to flush to disk.
|
|
152
|
+
*/
|
|
153
|
+
export declare function flushDatabases(): Promise<void[]>;
|
|
141
154
|
export {};
|
|
@@ -37,6 +37,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
39
|
exports.databases = exports.tables = exports.databaseEventsEmitter = exports.NON_REPLICATING_SYSTEM_TABLES = void 0;
|
|
40
|
+
exports.isReadOnlyMode = isReadOnlyMode;
|
|
40
41
|
exports.getTables = getTables;
|
|
41
42
|
exports.getDatabases = getDatabases;
|
|
42
43
|
exports.readMetaDb = readMetaDb;
|
|
@@ -49,63 +50,127 @@ exports.onUpdatedTable = onUpdatedTable;
|
|
|
49
50
|
exports.onRemovedTable = onRemovedTable;
|
|
50
51
|
exports.onRemovedDB = onRemovedDB;
|
|
51
52
|
exports.getDefaultCompression = getDefaultCompression;
|
|
53
|
+
exports.flushDatabases = flushDatabases;
|
|
52
54
|
const node_events_1 = require("node:events");
|
|
53
|
-
const
|
|
54
|
-
const
|
|
55
|
+
const environmentManager_ts_1 = require("../utility/environment/environmentManager.js");
|
|
56
|
+
const terms_ts_1 = require("../utility/lmdb/terms.js");
|
|
55
57
|
const lmdb_1 = require("lmdb");
|
|
56
58
|
const path_1 = require("path");
|
|
57
59
|
const node_fs_1 = require("node:fs");
|
|
58
60
|
const promises_1 = require("node:fs/promises");
|
|
59
61
|
const initializePaths_js_1 = require("../dataLayer/harperBridge/lmdbBridge/lmdbUtility/initializePaths.js");
|
|
60
62
|
const Table_ts_1 = require("./Table.js");
|
|
61
|
-
const
|
|
63
|
+
const OpenEnvironmentObject_ts_1 = __importDefault(require("../utility/lmdb/OpenEnvironmentObject.js"));
|
|
62
64
|
const hdbTerms_ts_1 = require("../utility/hdbTerms.js");
|
|
63
65
|
const configUtils_js_1 = require("../config/configUtils.js");
|
|
64
66
|
const globals_js_1 = require("../globals.js");
|
|
65
|
-
const
|
|
67
|
+
const commonUtility_ts_1 = require("../utility/lmdb/commonUtility.js");
|
|
66
68
|
const signalling = __importStar(require("../utility/signalling.js"));
|
|
67
69
|
const itc_js_1 = require("../server/threads/itc.js");
|
|
68
70
|
const worker_threads_1 = require("worker_threads");
|
|
69
|
-
const
|
|
70
|
-
const { forComponent } =
|
|
71
|
+
const harper_logger_ts_1 = __importDefault(require("../utility/logging/harper_logger.js"));
|
|
72
|
+
const { forComponent } = harper_logger_ts_1.default;
|
|
71
73
|
const manageThreads = __importStar(require("../server/threads/manageThreads.js"));
|
|
72
74
|
const auditStore_ts_1 = require("./auditStore.js");
|
|
73
75
|
const RecordEncoder_ts_1 = require("./RecordEncoder.js");
|
|
74
76
|
const blob_ts_1 = require("./blob.js");
|
|
75
77
|
const customIndexes_ts_1 = require("./indexes/customIndexes.js");
|
|
76
|
-
const
|
|
78
|
+
const OpenDBIObject_ts_1 = require("../utility/lmdb/OpenDBIObject.js");
|
|
77
79
|
const rocksdb_js_1 = require("@harperfast/rocksdb-js");
|
|
78
80
|
const replayLogs_ts_1 = require("./replayLogs.js");
|
|
79
81
|
const node_os_1 = require("node:os");
|
|
80
82
|
const RocksIndexStore_ts_1 = require("./RocksIndexStore.js");
|
|
81
83
|
const when_ts_1 = require("../utility/when.js");
|
|
82
84
|
const processManagement_js_1 = require("../utility/processManagement/processManagement.js");
|
|
85
|
+
/**
|
|
86
|
+
* Check if Harper is running in read-only mode.
|
|
87
|
+
* Read-only mode can be enabled via:
|
|
88
|
+
* - HARPER_READONLY environment variable (truthy value)
|
|
89
|
+
* - --readonly CLI flag
|
|
90
|
+
* - storage.readOnly config setting
|
|
91
|
+
*/
|
|
92
|
+
let _isReadOnlyMode;
|
|
93
|
+
function isReadOnlyMode() {
|
|
94
|
+
if (_isReadOnlyMode !== undefined)
|
|
95
|
+
return _isReadOnlyMode;
|
|
96
|
+
// Check environment variable
|
|
97
|
+
const envReadOnly = process.env.HARPER_READONLY;
|
|
98
|
+
if (envReadOnly && envReadOnly !== '0' && envReadOnly !== 'false') {
|
|
99
|
+
_isReadOnlyMode = true;
|
|
100
|
+
return true;
|
|
101
|
+
}
|
|
102
|
+
// Check CLI flag (simple argv check)
|
|
103
|
+
if (process.argv.includes('--readonly') || process.argv.includes('--read-only')) {
|
|
104
|
+
_isReadOnlyMode = true;
|
|
105
|
+
return true;
|
|
106
|
+
}
|
|
107
|
+
// Check config setting
|
|
108
|
+
if ((0, environmentManager_ts_1.get)(hdbTerms_ts_1.CONFIG_PARAMS.STORAGE_READONLY)) {
|
|
109
|
+
_isReadOnlyMode = true;
|
|
110
|
+
return true;
|
|
111
|
+
}
|
|
112
|
+
_isReadOnlyMode = false;
|
|
113
|
+
return false;
|
|
114
|
+
}
|
|
83
115
|
function createOpenDBIObject(dupSort = false, isPrimary = false) {
|
|
84
|
-
return new
|
|
116
|
+
return new OpenDBIObject_ts_1.OpenDBIObject(dupSort, isPrimary);
|
|
85
117
|
}
|
|
86
118
|
const logger = forComponent('storage');
|
|
87
119
|
const DEFAULT_DATABASE_NAME = 'data';
|
|
88
120
|
const DEFINED_TABLES = Symbol('defined-tables');
|
|
89
|
-
const DEFAULT_COMPRESSION_THRESHOLD = ((0,
|
|
90
|
-
(0,
|
|
121
|
+
const DEFAULT_COMPRESSION_THRESHOLD = ((0, environmentManager_ts_1.get)(hdbTerms_ts_1.CONFIG_PARAMS.STORAGE_PAGESIZE) || 4096) - 60; // larger than this requires multiple pages
|
|
122
|
+
(0, environmentManager_ts_1.initSync)();
|
|
91
123
|
// I don't know if this is the best place for this, but somewhere we need to specify which tables
|
|
92
124
|
// replicate by default:
|
|
93
125
|
exports.NON_REPLICATING_SYSTEM_TABLES = [
|
|
94
126
|
'hdb_temp',
|
|
95
127
|
'hdb_certificate',
|
|
96
128
|
'hdb_raw_analytics',
|
|
129
|
+
'hdb_model_calls',
|
|
97
130
|
'hdb_session_will',
|
|
98
131
|
'hdb_job',
|
|
99
132
|
'hdb_info',
|
|
133
|
+
'mcp_session',
|
|
100
134
|
];
|
|
101
135
|
exports.databaseEventsEmitter = new node_events_1.EventEmitter();
|
|
102
136
|
exports.tables = Object.create(null);
|
|
103
137
|
exports.databases = Object.create(null);
|
|
104
|
-
const MEMORY_FOR_ROCKS_DB = Math.min(process.constrainedMemory?.() ?? Infinity, (0, node_os_1.totalmem)()) * 0.25; // 25% of available memory
|
|
105
138
|
function openRocksDatabase(path, options) {
|
|
106
139
|
options.disableWAL ??= true;
|
|
107
|
-
|
|
140
|
+
// Apply read-only mode if enabled
|
|
141
|
+
if (isReadOnlyMode()) {
|
|
142
|
+
options.readOnly = true;
|
|
143
|
+
}
|
|
144
|
+
// Read RocksDB memory config lazily so env/CLI overrides applied after module load are
|
|
145
|
+
// respected. The block cache falls back to 25% of constrained (cgroup) memory when not
|
|
146
|
+
// configured; the WriteBufferManager is opt-in (0 disables).
|
|
147
|
+
//
|
|
148
|
+
// We enforce types rather than coerce — values from YAML config and env vars flow
|
|
149
|
+
// through configUtils.castConfigValue which produces proper numbers/booleans/null,
|
|
150
|
+
// so anything else is misconfiguration and should fall through to the default.
|
|
151
|
+
//
|
|
152
|
+
// Note: writeBufferManagerCostToCache and writeBufferManagerAllowStall are fixed at WBM
|
|
153
|
+
// creation time inside rocksdb-js (the underlying RocksDB API doesn't support changing
|
|
154
|
+
// costToCache on a live manager, and allowStall is only re-applied when explicitly changed).
|
|
155
|
+
// In practice that's fine — these come from process-level config that doesn't change.
|
|
156
|
+
const configuredBlockCacheSize = (0, environmentManager_ts_1.get)(hdbTerms_ts_1.CONFIG_PARAMS.STORAGE_ROCKS_BLOCKCACHESIZE);
|
|
157
|
+
const blockCacheSize = typeof configuredBlockCacheSize === 'number' && configuredBlockCacheSize > 0
|
|
158
|
+
? configuredBlockCacheSize
|
|
159
|
+
: Math.min(process.constrainedMemory?.() ?? Infinity, (0, node_os_1.totalmem)()) * 0.25;
|
|
160
|
+
const writeBufferManagerSize = (0, environmentManager_ts_1.get)(hdbTerms_ts_1.CONFIG_PARAMS.STORAGE_ROCKS_WRITEBUFFERMANAGERSIZE);
|
|
161
|
+
const writeBufferManagerCostToCache = (0, environmentManager_ts_1.get)(hdbTerms_ts_1.CONFIG_PARAMS.STORAGE_ROCKS_WRITEBUFFERMANAGERCOSTTOCACHE);
|
|
162
|
+
const writeBufferManagerAllowStall = (0, environmentManager_ts_1.get)(hdbTerms_ts_1.CONFIG_PARAMS.STORAGE_ROCKS_WRITEBUFFERMANAGERALLOWSTALL);
|
|
163
|
+
rocksdb_js_1.RocksDatabase.config({
|
|
164
|
+
blockCacheSize,
|
|
165
|
+
...(typeof writeBufferManagerSize === 'number' && writeBufferManagerSize > 0 ? { writeBufferManagerSize } : {}),
|
|
166
|
+
...(typeof writeBufferManagerCostToCache === 'boolean' ? { writeBufferManagerCostToCache } : {}),
|
|
167
|
+
...(typeof writeBufferManagerAllowStall === 'boolean' ? { writeBufferManagerAllowStall } : {}),
|
|
168
|
+
});
|
|
108
169
|
if (!(0, node_fs_1.existsSync)(path)) {
|
|
170
|
+
// Don't create directories in read-only mode
|
|
171
|
+
if (isReadOnlyMode()) {
|
|
172
|
+
throw new Error(`Database cannot be created in read-only mode: ${path}`);
|
|
173
|
+
}
|
|
109
174
|
(0, node_fs_1.mkdirSync)(path, { recursive: true });
|
|
110
175
|
}
|
|
111
176
|
let db;
|
|
@@ -157,19 +222,17 @@ function getDatabases() {
|
|
|
157
222
|
}
|
|
158
223
|
loadedDatabases = true;
|
|
159
224
|
definedDatabases = new Map();
|
|
160
|
-
const hdbBasePath = (0,
|
|
225
|
+
const hdbBasePath = (0, environmentManager_ts_1.getHdbBasePath)();
|
|
161
226
|
let databasePath = hdbBasePath && (0, path_1.join)(hdbBasePath, hdbTerms_ts_1.DATABASES_DIR_NAME);
|
|
162
|
-
const schemaConfigs = (0,
|
|
227
|
+
const schemaConfigs = (0, environmentManager_ts_1.get)(hdbTerms_ts_1.CONFIG_PARAMS.DATABASES) || {};
|
|
163
228
|
// not sure why this doesn't work with the environmemt manager
|
|
164
229
|
if (process.env.SCHEMAS_DATA_PATH)
|
|
165
230
|
schemaConfigs.data = { path: process.env.SCHEMAS_DATA_PATH };
|
|
166
231
|
databasePath =
|
|
167
232
|
process.env.STORAGE_PATH ||
|
|
168
233
|
(0, configUtils_js_1.getConfigPath)(hdbTerms_ts_1.CONFIG_PARAMS.STORAGE_PATH) ||
|
|
169
|
-
(databasePath && ((0, node_fs_1.existsSync)(databasePath) ? databasePath : (0, path_1.join)((0,
|
|
170
|
-
if (
|
|
171
|
-
return;
|
|
172
|
-
if ((0, node_fs_1.existsSync)(databasePath)) {
|
|
234
|
+
(databasePath && ((0, node_fs_1.existsSync)(databasePath) ? databasePath : (0, path_1.join)((0, environmentManager_ts_1.getHdbBasePath)(), hdbTerms_ts_1.LEGACY_DATABASES_DIR_NAME)));
|
|
235
|
+
if (databasePath && (0, node_fs_1.existsSync)(databasePath)) {
|
|
173
236
|
// First load all the databases from our main database folder
|
|
174
237
|
// TODO: Load any databases defined with explicit storage paths from the config
|
|
175
238
|
for (const databaseEntry of (0, node_fs_1.readdirSync)(databasePath, { withFileTypes: true })) {
|
|
@@ -278,7 +341,7 @@ function getDatabases() {
|
|
|
278
341
|
}
|
|
279
342
|
}
|
|
280
343
|
}
|
|
281
|
-
if ((0,
|
|
344
|
+
if ((0, environmentManager_ts_1.get)(hdbTerms_ts_1.CONFIG_PARAMS.ANALYTICS_REPLICATE) === false) {
|
|
282
345
|
if (!exports.NON_REPLICATING_SYSTEM_TABLES.includes('hdb_analytics'))
|
|
283
346
|
exports.NON_REPLICATING_SYSTEM_TABLES.push('hdb_analytics');
|
|
284
347
|
}
|
|
@@ -304,7 +367,7 @@ function getDatabases() {
|
|
|
304
367
|
* @param databaseName
|
|
305
368
|
*/
|
|
306
369
|
function readMetaDb(path, defaultTable, databaseName = DEFAULT_DATABASE_NAME, auditPath, isLegacy) {
|
|
307
|
-
const envInit = new
|
|
370
|
+
const envInit = new OpenEnvironmentObject_ts_1.default(path, isReadOnlyMode());
|
|
308
371
|
try {
|
|
309
372
|
let rootStore = lmdbDatabaseEnvs.get(path);
|
|
310
373
|
if (rootStore) {
|
|
@@ -338,7 +401,10 @@ function readRocksMetaDb(path, defaultTable, databaseName = DEFAULT_DATABASE_NAM
|
|
|
338
401
|
rootStore = openRocksDatabase(path, { disableWAL: false, enableStats: true });
|
|
339
402
|
rocksdbDatabaseEnvs.set(path, rootStore);
|
|
340
403
|
initStores(path, rootStore, databaseName, defaultTable);
|
|
341
|
-
|
|
404
|
+
// Skip transaction log replay in read-only mode
|
|
405
|
+
if (!isReadOnlyMode()) {
|
|
406
|
+
(0, replayLogs_ts_1.replayLogs)(rootStore, exports.databases[databaseName]);
|
|
407
|
+
}
|
|
342
408
|
}
|
|
343
409
|
return rootStore;
|
|
344
410
|
}
|
|
@@ -348,7 +414,7 @@ function readRocksMetaDb(path, defaultTable, databaseName = DEFAULT_DATABASE_NAM
|
|
|
348
414
|
}
|
|
349
415
|
}
|
|
350
416
|
function initStores(path, rootStore, databaseName, defaultTable, auditPath, isLegacy) {
|
|
351
|
-
const envInit = new
|
|
417
|
+
const envInit = new OpenEnvironmentObject_ts_1.default(path, isReadOnlyMode());
|
|
352
418
|
const internalDbiInit = createOpenDBIObject(false);
|
|
353
419
|
let attributesDbi = rootStore.dbisDb;
|
|
354
420
|
if (!attributesDbi) {
|
|
@@ -356,11 +422,11 @@ function initStores(path, rootStore, databaseName, defaultTable, auditPath, isLe
|
|
|
356
422
|
attributesDbi = openRocksDatabase(rootStore.path, {
|
|
357
423
|
...internalDbiInit,
|
|
358
424
|
disableWAL: false,
|
|
359
|
-
name:
|
|
425
|
+
name: terms_ts_1.INTERNAL_DBIS_NAME,
|
|
360
426
|
});
|
|
361
427
|
}
|
|
362
428
|
else {
|
|
363
|
-
attributesDbi = rootStore.openDB(
|
|
429
|
+
attributesDbi = rootStore.openDB(terms_ts_1.INTERNAL_DBIS_NAME, internalDbiInit);
|
|
364
430
|
}
|
|
365
431
|
rootStore.dbisDb = attributesDbi;
|
|
366
432
|
}
|
|
@@ -440,7 +506,7 @@ function initStores(path, rootStore, databaseName, defaultTable, auditPath, isLe
|
|
|
440
506
|
let indices = {}, existingAttributes = [];
|
|
441
507
|
let tableId;
|
|
442
508
|
let primaryStore;
|
|
443
|
-
const audit = typeof primaryAttribute.audit === 'boolean' ? primaryAttribute.audit : (0,
|
|
509
|
+
const audit = typeof primaryAttribute.audit === 'boolean' ? primaryAttribute.audit : (0, environmentManager_ts_1.get)(hdbTerms_ts_1.CONFIG_PARAMS.LOGGING_AUDITLOG);
|
|
444
510
|
const trackDeletes = primaryAttribute.trackDeletes;
|
|
445
511
|
const expiration = primaryAttribute.expiration;
|
|
446
512
|
const eviction = primaryAttribute.eviction;
|
|
@@ -471,7 +537,7 @@ function initStores(path, rootStore, databaseName, defaultTable, auditPath, isLe
|
|
|
471
537
|
const dbiInit = createOpenDBIObject(!primaryAttribute.isPrimaryKey, primaryAttribute.isPrimaryKey);
|
|
472
538
|
dbiInit.compression = primaryAttribute.compression;
|
|
473
539
|
if (dbiInit.compression) {
|
|
474
|
-
const compressionThreshold = (0,
|
|
540
|
+
const compressionThreshold = (0, environmentManager_ts_1.get)(hdbTerms_ts_1.CONFIG_PARAMS.STORAGE_COMPRESSION_THRESHOLD) || DEFAULT_COMPRESSION_THRESHOLD; // this is the only thing that can change;
|
|
475
541
|
dbiInit.compression.threshold = compressionThreshold;
|
|
476
542
|
}
|
|
477
543
|
if (rootStore instanceof rocksdb_js_1.RocksDatabase) {
|
|
@@ -620,21 +686,26 @@ function database({ database: databaseName, table: tableName }) {
|
|
|
620
686
|
if (definedDatabase?.rootStore) {
|
|
621
687
|
return definedDatabase.rootStore;
|
|
622
688
|
}
|
|
623
|
-
const databaseConfig = (0,
|
|
689
|
+
const databaseConfig = (0, environmentManager_ts_1.get)(hdbTerms_ts_1.CONFIG_PARAMS.DATABASES) || {};
|
|
624
690
|
if (process.env.SCHEMAS_DATA_PATH) {
|
|
625
691
|
databaseConfig.data = { path: process.env.SCHEMAS_DATA_PATH };
|
|
626
692
|
}
|
|
627
693
|
const tablePath = tableName && databaseConfig[databaseName]?.tables?.[tableName]?.path;
|
|
628
|
-
const hdbBasePath = (0,
|
|
694
|
+
const hdbBasePath = (0, environmentManager_ts_1.getHdbBasePath)();
|
|
629
695
|
const databasePath = tablePath ||
|
|
630
696
|
databaseConfig[databaseName]?.path ||
|
|
631
697
|
process.env.STORAGE_PATH ||
|
|
632
698
|
(0, configUtils_js_1.getConfigPath)(hdbTerms_ts_1.CONFIG_PARAMS.STORAGE_PATH) ||
|
|
633
|
-
((0, node_fs_1.existsSync)((0, path_1.join)(hdbBasePath, hdbTerms_ts_1.DATABASES_DIR_NAME))
|
|
699
|
+
(hdbBasePath && (0, node_fs_1.existsSync)((0, path_1.join)(hdbBasePath, hdbTerms_ts_1.DATABASES_DIR_NAME))
|
|
634
700
|
? (0, path_1.join)(hdbBasePath, hdbTerms_ts_1.DATABASES_DIR_NAME)
|
|
635
|
-
:
|
|
701
|
+
: hdbBasePath
|
|
702
|
+
? (0, path_1.join)(hdbBasePath, hdbTerms_ts_1.LEGACY_DATABASES_DIR_NAME)
|
|
703
|
+
: undefined);
|
|
704
|
+
if (!databasePath) {
|
|
705
|
+
throw new Error(`Unable to determine database storage path. Ensure STORAGE_PATH, HDB_ROOT, or a valid config path is set.`);
|
|
706
|
+
}
|
|
636
707
|
let rootStore;
|
|
637
|
-
const useRocksdb = (process.env.HARPER_STORAGE_ENGINE || (0,
|
|
708
|
+
const useRocksdb = (process.env.HARPER_STORAGE_ENGINE || (0, environmentManager_ts_1.get)(hdbTerms_ts_1.CONFIG_PARAMS.STORAGE_ENGINE)) !== 'lmdb';
|
|
638
709
|
if (useRocksdb) {
|
|
639
710
|
const path = (0, path_1.join)(databasePath, tablePath ? tableName : databaseName);
|
|
640
711
|
rootStore = rocksdbDatabaseEnvs.get(path);
|
|
@@ -651,7 +722,7 @@ function database({ database: databaseName, table: tableName }) {
|
|
|
651
722
|
rootStore = lmdbDatabaseEnvs.get(path);
|
|
652
723
|
if (!rootStore || rootStore.status === 'closed') {
|
|
653
724
|
// TODO: validate database name
|
|
654
|
-
const envInit = new
|
|
725
|
+
const envInit = new OpenEnvironmentObject_ts_1.default(path, isReadOnlyMode());
|
|
655
726
|
rootStore = (0, lmdb_1.open)(envInit);
|
|
656
727
|
lmdbDatabaseEnvs.set(path, rootStore);
|
|
657
728
|
}
|
|
@@ -801,7 +872,7 @@ function table(tableDefinition) {
|
|
|
801
872
|
primaryKeyAttribute.compression = getDefaultCompression();
|
|
802
873
|
if (trackDeletes)
|
|
803
874
|
primaryKeyAttribute.trackDeletes = true;
|
|
804
|
-
audit = primaryKeyAttribute.audit = typeof audit === 'boolean' ? audit : (0,
|
|
875
|
+
audit = primaryKeyAttribute.audit = typeof audit === 'boolean' ? audit : (0, environmentManager_ts_1.get)(hdbTerms_ts_1.CONFIG_PARAMS.LOGGING_AUDITLOG);
|
|
805
876
|
if (expiration)
|
|
806
877
|
primaryKeyAttribute.expiration = expiration;
|
|
807
878
|
if (eviction)
|
|
@@ -826,11 +897,11 @@ function table(tableDefinition) {
|
|
|
826
897
|
attributesDbi = rootStore.dbisDb = openRocksDatabase(rootStore.path, {
|
|
827
898
|
...internalDbiInit,
|
|
828
899
|
disableWAL: false,
|
|
829
|
-
name:
|
|
900
|
+
name: terms_ts_1.INTERNAL_DBIS_NAME,
|
|
830
901
|
});
|
|
831
902
|
}
|
|
832
903
|
else {
|
|
833
|
-
attributesDbi = rootStore.dbisDb = rootStore.openDB(
|
|
904
|
+
attributesDbi = rootStore.dbisDb = rootStore.openDB(terms_ts_1.INTERNAL_DBIS_NAME, internalDbiInit);
|
|
834
905
|
}
|
|
835
906
|
exclusiveLock(); // get an exclusive lock on the database so we can verify that we are the only thread creating the table (and assigning the table id)
|
|
836
907
|
if (attributesDbi.getSync(dbiName)) {
|
|
@@ -885,11 +956,11 @@ function table(tableDefinition) {
|
|
|
885
956
|
rootStore.dbisDb = openRocksDatabase(rootStore.path, {
|
|
886
957
|
...internalDbiInit,
|
|
887
958
|
disableWAL: false,
|
|
888
|
-
name:
|
|
959
|
+
name: terms_ts_1.INTERNAL_DBIS_NAME,
|
|
889
960
|
});
|
|
890
961
|
}
|
|
891
962
|
else {
|
|
892
|
-
rootStore.dbisDb = rootStore.openDB(
|
|
963
|
+
rootStore.dbisDb = rootStore.openDB(terms_ts_1.INTERNAL_DBIS_NAME, internalDbiInit);
|
|
893
964
|
}
|
|
894
965
|
attributesDbi = rootStore.dbisDb;
|
|
895
966
|
}
|
|
@@ -946,7 +1017,7 @@ function table(tableDefinition) {
|
|
|
946
1017
|
const updatedPrimaryAttribute = { ...attributeDescriptor };
|
|
947
1018
|
if (typeof audit === 'boolean') {
|
|
948
1019
|
if (audit)
|
|
949
|
-
Table.enableAuditing(
|
|
1020
|
+
Table.enableAuditing();
|
|
950
1021
|
updatedPrimaryAttribute.audit = audit;
|
|
951
1022
|
}
|
|
952
1023
|
if (expiration)
|
|
@@ -968,27 +1039,47 @@ function table(tableDefinition) {
|
|
|
968
1039
|
// note that non-indexed attributes do not need a dbi
|
|
969
1040
|
if (attributeDescriptor?.attribute && !attributeDescriptor.name)
|
|
970
1041
|
attributeDescriptor.indexed = true; // legacy descriptor
|
|
971
|
-
|
|
1042
|
+
// Some index options affect only search, not the stored structure (e.g. HNSW's
|
|
1043
|
+
// efConstructionSearch). Changing those should persist the new metadata but NOT trigger a
|
|
1044
|
+
// reindex. A custom index declares such keys via a static `searchOnlyOptions`.
|
|
1045
|
+
const indexType = attribute.indexed && typeof attribute.indexed === 'object' ? attribute.indexed.type : undefined;
|
|
1046
|
+
const searchOnlyOptions = (indexType && customIndexes_ts_1.CUSTOM_INDEXES[indexType]?.searchOnlyOptions) || [];
|
|
1047
|
+
const stripSearchOnly = (indexed) => {
|
|
1048
|
+
if (!indexed || typeof indexed !== 'object' || searchOnlyOptions.length === 0)
|
|
1049
|
+
return indexed;
|
|
1050
|
+
const copy = { ...indexed };
|
|
1051
|
+
for (const key of searchOnlyOptions)
|
|
1052
|
+
delete copy[key];
|
|
1053
|
+
return copy;
|
|
1054
|
+
};
|
|
1055
|
+
const commonChanged = !attributeDescriptor ||
|
|
972
1056
|
attributeDescriptor.type !== attribute.type ||
|
|
973
|
-
JSON.stringify(attributeDescriptor.indexed) !== JSON.stringify(attribute.indexed) ||
|
|
974
1057
|
attributeDescriptor.nullable !== attribute.nullable ||
|
|
975
1058
|
attributeDescriptor.version !== attribute.version ||
|
|
976
1059
|
attributeDescriptor.enumerable !== attribute.enumerable ||
|
|
977
1060
|
JSON.stringify(attributeDescriptor.properties) !== JSON.stringify(attribute.properties) ||
|
|
978
|
-
JSON.stringify(attributeDescriptor.elements) !== JSON.stringify(attribute.elements)
|
|
1061
|
+
JSON.stringify(attributeDescriptor.elements) !== JSON.stringify(attribute.elements) ||
|
|
1062
|
+
// Include `embed` so a source/model change refreshes the embed registry.
|
|
1063
|
+
JSON.stringify(attributeDescriptor.embed) !== JSON.stringify(attribute.embed);
|
|
1064
|
+
// any metadata difference (drives persistence)
|
|
1065
|
+
const changed = commonChanged || JSON.stringify(attributeDescriptor?.indexed) !== JSON.stringify(attribute.indexed);
|
|
1066
|
+
// structure-affecting difference (drives reindex) — ignores search-only option changes
|
|
1067
|
+
const structurallyChanged = commonChanged ||
|
|
1068
|
+
JSON.stringify(stripSearchOnly(attributeDescriptor?.indexed)) !==
|
|
1069
|
+
JSON.stringify(stripSearchOnly(attribute.indexed));
|
|
979
1070
|
if (attribute.indexed) {
|
|
980
1071
|
const dbi = openIndex(dbiKey, rootStore, attribute);
|
|
981
1072
|
if (changed ||
|
|
982
|
-
attributeDescriptor
|
|
983
|
-
(attributeDescriptor
|
|
984
|
-
attributeDescriptor
|
|
1073
|
+
attributeDescriptor?.indexingFailed ||
|
|
1074
|
+
(attributeDescriptor?.indexingPID && attributeDescriptor?.indexingPID !== process.pid) ||
|
|
1075
|
+
attributeDescriptor?.restartNumber < worker_threads_1.workerData?.restartNumber) {
|
|
985
1076
|
hasChanges = true;
|
|
986
1077
|
exclusiveLock();
|
|
987
1078
|
attributeDescriptor = attributesDbi.getSync(dbiKey);
|
|
988
|
-
if (
|
|
989
|
-
attributeDescriptor
|
|
990
|
-
(attributeDescriptor
|
|
991
|
-
attributeDescriptor
|
|
1079
|
+
if (structurallyChanged ||
|
|
1080
|
+
attributeDescriptor?.indexingFailed ||
|
|
1081
|
+
(attributeDescriptor?.indexingPID && attributeDescriptor?.indexingPID !== process.pid) ||
|
|
1082
|
+
attributeDescriptor?.restartNumber < worker_threads_1.workerData?.restartNumber) {
|
|
992
1083
|
hasChanges = true;
|
|
993
1084
|
if (attribute.indexNulls === undefined)
|
|
994
1085
|
attribute.indexNulls = true;
|
|
@@ -1007,6 +1098,16 @@ function table(tableDefinition) {
|
|
|
1007
1098
|
attributesToIndex.push(attribute);
|
|
1008
1099
|
}
|
|
1009
1100
|
}
|
|
1101
|
+
else if (attributeDescriptor.indexingPID) {
|
|
1102
|
+
// Metadata-only change (e.g. a search-only option like efConstructionSearch) while a
|
|
1103
|
+
// backfill is in progress: we did NOT re-trigger indexing, so carry over the in-progress
|
|
1104
|
+
// indexing state instead of persisting a descriptor that looks complete — otherwise other
|
|
1105
|
+
// workers / a reload would treat the still-partial index as ready and return incomplete results.
|
|
1106
|
+
attribute.indexingPID = attributeDescriptor.indexingPID;
|
|
1107
|
+
attribute.lastIndexedKey = attributeDescriptor.lastIndexedKey;
|
|
1108
|
+
if (attributeDescriptor.indexingFailed)
|
|
1109
|
+
attribute.indexingFailed = attributeDescriptor.indexingFailed;
|
|
1110
|
+
}
|
|
1010
1111
|
attributesDbi.put(dbiKey, attribute);
|
|
1011
1112
|
}
|
|
1012
1113
|
// If a migration is in progress (indexingPID set), any newly opened dbi must also
|
|
@@ -1136,7 +1237,7 @@ async function runIndexing(Table, attributes, indicesToRemove) {
|
|
|
1136
1237
|
index.customIndex.index(key, value);
|
|
1137
1238
|
continue;
|
|
1138
1239
|
}
|
|
1139
|
-
const values = (0,
|
|
1240
|
+
const values = (0, commonUtility_ts_1.getIndexedValues)(value, index.indexNulls);
|
|
1140
1241
|
if (values) {
|
|
1141
1242
|
for (let i = 0, l = values.length; i < l; i++) {
|
|
1142
1243
|
lastResolution = index.put(values[i], key);
|
|
@@ -1297,9 +1398,9 @@ function onRemovedDB(listener) {
|
|
|
1297
1398
|
};
|
|
1298
1399
|
}
|
|
1299
1400
|
function getDefaultCompression() {
|
|
1300
|
-
const LMDB_COMPRESSION = (0,
|
|
1301
|
-
const STORAGE_COMPRESSION_DICTIONARY = (0,
|
|
1302
|
-
const STORAGE_COMPRESSION_THRESHOLD = (0,
|
|
1401
|
+
const LMDB_COMPRESSION = (0, environmentManager_ts_1.get)(hdbTerms_ts_1.CONFIG_PARAMS.STORAGE_COMPRESSION);
|
|
1402
|
+
const STORAGE_COMPRESSION_DICTIONARY = (0, environmentManager_ts_1.get)(hdbTerms_ts_1.CONFIG_PARAMS.STORAGE_COMPRESSION_DICTIONARY);
|
|
1403
|
+
const STORAGE_COMPRESSION_THRESHOLD = (0, environmentManager_ts_1.get)(hdbTerms_ts_1.CONFIG_PARAMS.STORAGE_COMPRESSION_THRESHOLD) || DEFAULT_COMPRESSION_THRESHOLD;
|
|
1303
1404
|
const LMDB_COMPRESSION_OPTS = { startingOffset: 32 };
|
|
1304
1405
|
if (STORAGE_COMPRESSION_DICTIONARY)
|
|
1305
1406
|
LMDB_COMPRESSION_OPTS['dictionary'] = (0, node_fs_1.readFileSync)(STORAGE_COMPRESSION_DICTIONARY);
|
|
@@ -1307,4 +1408,11 @@ function getDefaultCompression() {
|
|
|
1307
1408
|
LMDB_COMPRESSION_OPTS['threshold'] = STORAGE_COMPRESSION_THRESHOLD;
|
|
1308
1409
|
return LMDB_COMPRESSION && LMDB_COMPRESSION_OPTS;
|
|
1309
1410
|
}
|
|
1411
|
+
/**
|
|
1412
|
+
* Force all RocksDB databases to flush to disk.
|
|
1413
|
+
*/
|
|
1414
|
+
async function flushDatabases() {
|
|
1415
|
+
// flush all RocksDB databases
|
|
1416
|
+
return Promise.all(Array.from(rocksdbDatabaseEnvs.values()).map((db) => db.flush()));
|
|
1417
|
+
}
|
|
1310
1418
|
//# sourceMappingURL=databases.js.map
|