@harperfast/harper 5.0.0-alpha.10 → 5.0.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.
Files changed (444) hide show
  1. package/bin/BinObjects.js +17 -0
  2. package/bin/cliOperations.js +157 -0
  3. package/bin/copyDb.ts +280 -0
  4. package/bin/harper.js +156 -0
  5. package/bin/install.js +15 -0
  6. package/bin/lite.js +5 -0
  7. package/bin/restart.js +201 -0
  8. package/bin/run.js +409 -0
  9. package/bin/status.js +65 -0
  10. package/bin/stop.js +22 -0
  11. package/bin/upgrade.js +134 -0
  12. package/components/Application.ts +646 -0
  13. package/components/ApplicationScope.ts +49 -0
  14. package/components/Component.ts +53 -0
  15. package/components/ComponentV1.ts +342 -0
  16. package/components/DEFAULT_CONFIG.ts +18 -0
  17. package/components/EntryHandler.ts +227 -0
  18. package/components/Logger.ts +14 -0
  19. package/components/OptionsWatcher.ts +354 -0
  20. package/components/PluginModule.ts +6 -0
  21. package/components/Scope.ts +329 -0
  22. package/components/componentLoader.ts +529 -0
  23. package/components/deriveCommonPatternBase.ts +31 -0
  24. package/components/deriveGlobOptions.ts +44 -0
  25. package/components/deriveURLPath.ts +57 -0
  26. package/components/operations.js +658 -0
  27. package/components/operationsValidation.js +246 -0
  28. package/components/packageComponent.ts +39 -0
  29. package/components/requestRestart.ts +26 -0
  30. package/components/resolveBaseURLPath.ts +38 -0
  31. package/components/status/ComponentStatus.ts +110 -0
  32. package/components/status/ComponentStatusRegistry.ts +251 -0
  33. package/components/status/api.ts +153 -0
  34. package/components/status/crossThread.ts +405 -0
  35. package/components/status/errors.ts +152 -0
  36. package/components/status/index.ts +44 -0
  37. package/components/status/internal.ts +65 -0
  38. package/components/status/registry.ts +12 -0
  39. package/components/status/types.ts +96 -0
  40. package/config/RootConfigWatcher.ts +59 -0
  41. package/config/configHelpers.ts +11 -0
  42. package/config/configUtils.js +967 -0
  43. package/config/harperConfigEnvVars.ts +641 -0
  44. package/dataLayer/CreateAttributeObject.js +25 -0
  45. package/dataLayer/CreateTableObject.js +11 -0
  46. package/dataLayer/DataLayerObjects.js +43 -0
  47. package/dataLayer/DeleteBeforeObject.js +22 -0
  48. package/dataLayer/DeleteObject.js +25 -0
  49. package/dataLayer/DropAttributeObject.js +11 -0
  50. package/dataLayer/GetBackupObject.js +22 -0
  51. package/dataLayer/InsertObject.js +24 -0
  52. package/dataLayer/ReadAuditLogObject.js +24 -0
  53. package/dataLayer/SQLSearch.js +1335 -0
  54. package/dataLayer/SearchByConditionsObject.js +61 -0
  55. package/dataLayer/SearchByHashObject.js +21 -0
  56. package/dataLayer/SearchObject.js +45 -0
  57. package/dataLayer/SqlSearchObject.js +14 -0
  58. package/dataLayer/UpdateObject.js +23 -0
  59. package/dataLayer/UpsertObject.js +23 -0
  60. package/dataLayer/bulkLoad.js +813 -0
  61. package/dataLayer/dataObjects/BulkLoadObjects.js +27 -0
  62. package/dataLayer/dataObjects/UpsertObject.js +23 -0
  63. package/dataLayer/delete.js +164 -0
  64. package/dataLayer/export.js +381 -0
  65. package/dataLayer/getBackup.js +40 -0
  66. package/dataLayer/harperBridge/BridgeMethods.js +81 -0
  67. package/dataLayer/harperBridge/ResourceBridge.ts +633 -0
  68. package/dataLayer/harperBridge/bridgeUtility/insertUpdateReturnObj.js +28 -0
  69. package/dataLayer/harperBridge/bridgeUtility/insertUpdateValidate.js +88 -0
  70. package/dataLayer/harperBridge/harperBridge.js +21 -0
  71. package/dataLayer/harperBridge/lmdbBridge/LMDBBridge.js +119 -0
  72. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/DeleteAuditLogsBeforeResults.js +19 -0
  73. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateAttribute.js +112 -0
  74. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateRecords.js +67 -0
  75. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateSchema.js +31 -0
  76. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbCreateTable.js +94 -0
  77. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDeleteAuditLogsBefore.js +98 -0
  78. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDeleteRecords.js +89 -0
  79. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDropAttribute.js +109 -0
  80. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDropSchema.js +107 -0
  81. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbDropTable.js +137 -0
  82. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbFlush.js +35 -0
  83. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbGetBackup.js +111 -0
  84. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbGetDataByHash.js +28 -0
  85. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbGetDataByValue.js +29 -0
  86. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbReadAuditLog.js +207 -0
  87. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbSearchByConditions.js +156 -0
  88. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbSearchByHash.js +21 -0
  89. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbSearchByValue.js +30 -0
  90. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbTransaction.js +19 -0
  91. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbUpdateRecords.js +64 -0
  92. package/dataLayer/harperBridge/lmdbBridge/lmdbMethods/lmdbUpsertRecords.js +70 -0
  93. package/dataLayer/harperBridge/lmdbBridge/lmdbUtility/LMDBCreateAttributeObject.js +22 -0
  94. package/dataLayer/harperBridge/lmdbBridge/lmdbUtility/LMDBDeleteTransactionObject.js +23 -0
  95. package/dataLayer/harperBridge/lmdbBridge/lmdbUtility/LMDBInsertTransactionObject.js +22 -0
  96. package/dataLayer/harperBridge/lmdbBridge/lmdbUtility/LMDBTransactionObject.js +23 -0
  97. package/dataLayer/harperBridge/lmdbBridge/lmdbUtility/LMDBUpdateTransactionObject.js +24 -0
  98. package/dataLayer/harperBridge/lmdbBridge/lmdbUtility/LMDBUpsertTransactionObject.js +24 -0
  99. package/dataLayer/harperBridge/lmdbBridge/lmdbUtility/TableSizeObject.js +25 -0
  100. package/dataLayer/harperBridge/lmdbBridge/lmdbUtility/initializeHashSearch.js +21 -0
  101. package/dataLayer/harperBridge/lmdbBridge/lmdbUtility/initializePaths.js +157 -0
  102. package/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbCheckForNewAttributes.js +94 -0
  103. package/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbCreateTransactionsAuditEnvironment.js +39 -0
  104. package/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbGetTableSize.js +34 -0
  105. package/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbProcessRows.js +100 -0
  106. package/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbSearch.js +371 -0
  107. package/dataLayer/harperBridge/lmdbBridge/lmdbUtility/lmdbWriteTransaction.js +109 -0
  108. package/dataLayer/hdbInfoController.js +254 -0
  109. package/dataLayer/insert.js +266 -0
  110. package/dataLayer/readAuditLog.js +59 -0
  111. package/dataLayer/schema.js +366 -0
  112. package/dataLayer/schemaDescribe.js +289 -0
  113. package/dataLayer/search.js +60 -0
  114. package/dataLayer/transaction.js +17 -0
  115. package/dataLayer/update.js +124 -0
  116. package/dist/components/Logger.d.ts +12 -0
  117. package/dist/components/Logger.js +3 -0
  118. package/dist/components/Logger.js.map +1 -0
  119. package/dist/components/Scope.d.ts +14 -4
  120. package/dist/components/Scope.js +18 -10
  121. package/dist/components/Scope.js.map +1 -1
  122. package/dist/components/componentLoader.js +16 -9
  123. package/dist/components/componentLoader.js.map +1 -1
  124. package/dist/components/operations.js +2 -2
  125. package/dist/components/operations.js.map +1 -1
  126. package/dist/config/configUtils.d.ts +1 -1
  127. package/dist/config/configUtils.js +1 -1
  128. package/dist/config/configUtils.js.map +1 -1
  129. package/dist/dataLayer/CreateTableObject.d.ts +2 -2
  130. package/dist/dataLayer/CreateTableObject.js +2 -2
  131. package/dist/dataLayer/CreateTableObject.js.map +1 -1
  132. package/dist/dataLayer/delete.d.ts +1 -1
  133. package/dist/dataLayer/schema.js +6 -5
  134. package/dist/dataLayer/schema.js.map +1 -1
  135. package/dist/dataLayer/schemaDescribe.js +1 -1
  136. package/dist/dataLayer/schemaDescribe.js.map +1 -1
  137. package/dist/index.d.ts +1 -1
  138. package/dist/index.js +2 -0
  139. package/dist/index.js.map +1 -1
  140. package/dist/resources/DatabaseTransaction.d.ts +1 -1
  141. package/dist/resources/IterableEventQueue.d.ts +1 -1
  142. package/dist/resources/LMDBTransaction.d.ts +5 -1
  143. package/dist/resources/Resource.d.ts +1 -1
  144. package/dist/resources/RocksIndexStore.d.ts +3 -3
  145. package/dist/resources/RocksTransactionLogStore.d.ts +6 -3
  146. package/dist/resources/Table.d.ts +15 -6
  147. package/dist/resources/Table.js +4 -1
  148. package/dist/resources/Table.js.map +1 -1
  149. package/dist/resources/analytics/read.js +32 -22
  150. package/dist/resources/analytics/read.js.map +1 -1
  151. package/dist/resources/analytics/write.js +3 -6
  152. package/dist/resources/analytics/write.js.map +1 -1
  153. package/dist/resources/auditStore.d.ts +3 -3
  154. package/dist/resources/blob.d.ts +25 -2
  155. package/dist/resources/databases.d.ts +12 -2
  156. package/dist/resources/databases.js +22 -19
  157. package/dist/resources/databases.js.map +1 -1
  158. package/dist/resources/search.js +11 -5
  159. package/dist/resources/search.js.map +1 -1
  160. package/dist/resources/transaction.d.ts +2 -1
  161. package/dist/security/auth.js +1 -1
  162. package/dist/security/auth.js.map +1 -1
  163. package/dist/security/cryptoHash.d.ts +2 -2
  164. package/dist/security/jsLoader.js +243 -66
  165. package/dist/security/jsLoader.js.map +1 -1
  166. package/dist/security/keys.js +4 -5
  167. package/dist/security/keys.js.map +1 -1
  168. package/dist/security/user.js +3 -3
  169. package/dist/security/user.js.map +1 -1
  170. package/dist/server/REST.js +16 -2
  171. package/dist/server/REST.js.map +1 -1
  172. package/dist/server/Server.d.ts +2 -1
  173. package/dist/server/Server.js.map +1 -1
  174. package/dist/server/fastifyRoutes/plugins/hdbCore.d.ts +6 -1
  175. package/dist/server/fastifyRoutes.js +2 -0
  176. package/dist/server/fastifyRoutes.js.map +1 -1
  177. package/dist/server/http.js +12 -6
  178. package/dist/server/http.js.map +1 -1
  179. package/dist/server/jobs/JobObject.d.ts +3 -3
  180. package/dist/server/loadRootComponents.js +1 -0
  181. package/dist/server/loadRootComponents.js.map +1 -1
  182. package/dist/server/operationsServer.js +3 -1
  183. package/dist/server/operationsServer.js.map +1 -1
  184. package/dist/server/serverHelpers/JSONStream.d.ts +3 -3
  185. package/dist/server/serverHelpers/Request.d.ts +5 -5
  186. package/dist/server/serverHelpers/requestTimePlugin.d.ts +1 -1
  187. package/dist/server/threads/manageThreads.d.ts +2 -2
  188. package/dist/server/threads/manageThreads.js +50 -35
  189. package/dist/server/threads/manageThreads.js.map +1 -1
  190. package/dist/server/threads/socketRouter.d.ts +1 -1
  191. package/dist/sqlTranslator/deleteTranslator.d.ts +1 -1
  192. package/dist/utility/AWS/AWSConnector.d.ts +3 -2
  193. package/dist/utility/common_utils.d.ts +3 -3
  194. package/dist/utility/environment/systemInformation.d.ts +1 -0
  195. package/dist/utility/functions/date/dateFunctions.d.ts +11 -11
  196. package/dist/utility/globalSchema.d.ts +1 -1
  197. package/dist/utility/hdbTerms.d.ts +3 -0
  198. package/dist/utility/hdbTerms.js +3 -0
  199. package/dist/utility/hdbTerms.js.map +1 -1
  200. package/dist/utility/installation.d.ts +2 -4
  201. package/dist/utility/installation.js.map +1 -1
  202. package/dist/utility/lmdb/commonUtility.d.ts +1 -0
  203. package/dist/utility/lmdb/deleteUtility.d.ts +1 -0
  204. package/dist/utility/lmdb/environmentUtility.d.ts +1 -0
  205. package/dist/utility/lmdb/searchUtility.d.ts +2 -1
  206. package/dist/utility/lmdb/writeUtility.d.ts +1 -0
  207. package/dist/utility/logging/harper_logger.d.ts +6 -6
  208. package/dist/utility/processManagement/processManagement.d.ts +1 -1
  209. package/dist/utility/processManagement/servicesConfig.d.ts +12 -6
  210. package/dist/validation/common_validators.d.ts +4 -3
  211. package/dist/validation/configValidator.d.ts +3 -2
  212. package/index.d.ts +56 -0
  213. package/index.js +41 -0
  214. package/json/systemSchema.json +373 -0
  215. package/launchServiceScripts/launchHarperDB.js +3 -0
  216. package/launchServiceScripts/utility/checkNodeVersion.js +15 -0
  217. package/package.json +21 -3
  218. package/resources/DatabaseTransaction.ts +378 -0
  219. package/resources/ErrorResource.ts +57 -0
  220. package/resources/IterableEventQueue.ts +94 -0
  221. package/resources/LMDBTransaction.ts +349 -0
  222. package/resources/RecordEncoder.ts +702 -0
  223. package/resources/RequestTarget.ts +134 -0
  224. package/resources/Resource.ts +789 -0
  225. package/resources/ResourceInterface.ts +221 -0
  226. package/resources/ResourceInterfaceV2.ts +53 -0
  227. package/resources/ResourceV2.ts +67 -0
  228. package/resources/Resources.ts +162 -0
  229. package/resources/RocksIndexStore.ts +70 -0
  230. package/resources/RocksTransactionLogStore.ts +352 -0
  231. package/resources/Table.ts +4527 -0
  232. package/resources/analytics/hostnames.ts +72 -0
  233. package/resources/analytics/metadata.ts +10 -0
  234. package/resources/analytics/read.ts +252 -0
  235. package/resources/analytics/write.ts +803 -0
  236. package/resources/auditStore.ts +556 -0
  237. package/resources/blob.ts +1268 -0
  238. package/resources/crdt.ts +125 -0
  239. package/resources/dataLoader.ts +527 -0
  240. package/resources/databases.ts +1290 -0
  241. package/resources/graphql.ts +221 -0
  242. package/resources/indexes/HierarchicalNavigableSmallWorld.ts +638 -0
  243. package/resources/indexes/customIndexes.ts +7 -0
  244. package/resources/indexes/vector.ts +38 -0
  245. package/resources/jsResource.ts +86 -0
  246. package/resources/loadEnv.ts +22 -0
  247. package/resources/login.ts +18 -0
  248. package/resources/openApi.ts +409 -0
  249. package/resources/registrationDeprecated.ts +8 -0
  250. package/resources/replayLogs.ts +136 -0
  251. package/resources/roles.ts +98 -0
  252. package/resources/search.ts +1301 -0
  253. package/resources/tracked.ts +584 -0
  254. package/resources/transaction.ts +89 -0
  255. package/resources/transactionBroadcast.ts +258 -0
  256. package/security/auth.ts +376 -0
  257. package/security/certificateVerification/certificateVerificationSource.ts +84 -0
  258. package/security/certificateVerification/configValidation.ts +107 -0
  259. package/security/certificateVerification/crlVerification.ts +623 -0
  260. package/security/certificateVerification/index.ts +121 -0
  261. package/security/certificateVerification/ocspVerification.ts +148 -0
  262. package/security/certificateVerification/pkijs-ed25519-patch.ts +188 -0
  263. package/security/certificateVerification/types.ts +128 -0
  264. package/security/certificateVerification/verificationConfig.ts +138 -0
  265. package/security/certificateVerification/verificationUtils.ts +447 -0
  266. package/security/cryptoHash.js +42 -0
  267. package/security/data_objects/PermissionAttributeResponseObject.js +15 -0
  268. package/security/data_objects/PermissionResponseObject.js +115 -0
  269. package/security/data_objects/PermissionTableResponseObject.js +20 -0
  270. package/security/fastifyAuth.js +169 -0
  271. package/security/impersonation.ts +160 -0
  272. package/security/jsLoader.ts +716 -0
  273. package/security/keys.js +948 -0
  274. package/security/permissionsTranslator.js +300 -0
  275. package/security/role.js +218 -0
  276. package/security/tokenAuthentication.ts +228 -0
  277. package/security/user.ts +449 -0
  278. package/server/DurableSubscriptionsSession.ts +503 -0
  279. package/server/REST.ts +407 -0
  280. package/server/Server.ts +89 -0
  281. package/server/fastifyRoutes/helpers/getCORSOptions.js +36 -0
  282. package/server/fastifyRoutes/helpers/getHeaderTimeoutConfig.js +15 -0
  283. package/server/fastifyRoutes/helpers/getServerOptions.js +33 -0
  284. package/server/fastifyRoutes/plugins/hdbCore.js +39 -0
  285. package/server/fastifyRoutes.ts +205 -0
  286. package/server/graphqlQuerying.ts +700 -0
  287. package/server/http.ts +640 -0
  288. package/server/itc/serverHandlers.js +161 -0
  289. package/server/itc/utility/ITCEventObject.js +10 -0
  290. package/server/jobs/JobObject.js +24 -0
  291. package/server/jobs/jobProcess.js +69 -0
  292. package/server/jobs/jobRunner.js +162 -0
  293. package/server/jobs/jobs.js +304 -0
  294. package/server/loadRootComponents.js +44 -0
  295. package/server/mqtt.ts +485 -0
  296. package/server/nodeName.ts +75 -0
  297. package/server/operationsServer.ts +313 -0
  298. package/server/serverHelpers/Headers.ts +108 -0
  299. package/server/serverHelpers/JSONStream.ts +269 -0
  300. package/server/serverHelpers/OperationFunctionObject.ts +13 -0
  301. package/server/serverHelpers/Request.ts +158 -0
  302. package/server/serverHelpers/contentTypes.ts +637 -0
  303. package/server/serverHelpers/requestTimePlugin.js +57 -0
  304. package/server/serverHelpers/serverHandlers.js +148 -0
  305. package/server/serverHelpers/serverUtilities.ts +473 -0
  306. package/server/serverRegistry.ts +8 -0
  307. package/server/static.ts +187 -0
  308. package/server/status/definitions.ts +37 -0
  309. package/server/status/index.ts +125 -0
  310. package/server/storageReclamation.ts +93 -0
  311. package/server/threads/itc.js +89 -0
  312. package/server/threads/manageThreads.js +594 -0
  313. package/server/threads/socketRouter.ts +360 -0
  314. package/server/threads/threadServer.js +279 -0
  315. package/server/throttle.ts +73 -0
  316. package/sqlTranslator/SelectValidator.js +330 -0
  317. package/sqlTranslator/alasqlFunctionImporter.js +62 -0
  318. package/sqlTranslator/deleteTranslator.js +67 -0
  319. package/sqlTranslator/index.js +242 -0
  320. package/sqlTranslator/sql_statement_bucket.js +472 -0
  321. package/static/defaultConfig.yaml +3 -0
  322. package/studio/web/HDBDogOnly.svg +78 -0
  323. package/studio/web/assets/PPRadioGrotesk-Bold-DDaUYG8E.woff +0 -0
  324. package/studio/web/assets/fa-brands-400-CEJbCg16.woff +0 -0
  325. package/studio/web/assets/fa-brands-400-CSYNqBb_.ttf +0 -0
  326. package/studio/web/assets/fa-brands-400-DnkPfk3o.eot +0 -0
  327. package/studio/web/assets/fa-brands-400-UxlILjvJ.woff2 +0 -0
  328. package/studio/web/assets/fa-brands-400-cH1MgKbP.svg +3717 -0
  329. package/studio/web/assets/fa-regular-400-BhTwtT8w.eot +0 -0
  330. package/studio/web/assets/fa-regular-400-D1vz6WBx.ttf +0 -0
  331. package/studio/web/assets/fa-regular-400-DFnMcJPd.woff +0 -0
  332. package/studio/web/assets/fa-regular-400-DGzu1beS.woff2 +0 -0
  333. package/studio/web/assets/fa-regular-400-gwj8Pxq-.svg +801 -0
  334. package/studio/web/assets/fa-solid-900-B4ZZ7kfP.svg +5034 -0
  335. package/studio/web/assets/fa-solid-900-B6Axprfb.eot +0 -0
  336. package/studio/web/assets/fa-solid-900-BUswJgRo.woff2 +0 -0
  337. package/studio/web/assets/fa-solid-900-DOXgCApm.woff +0 -0
  338. package/studio/web/assets/fa-solid-900-mxuxnBEa.ttf +0 -0
  339. package/studio/web/assets/index-BTgXJX9d.js +235 -0
  340. package/studio/web/assets/index-BTgXJX9d.js.map +1 -0
  341. package/studio/web/assets/index-C-GXfcup.js +37 -0
  342. package/studio/web/assets/index-C-GXfcup.js.map +1 -0
  343. package/studio/web/assets/index-PFlNdimM.js +2 -0
  344. package/studio/web/assets/index-PFlNdimM.js.map +1 -0
  345. package/studio/web/assets/index-Y2g_iFpU.css +1 -0
  346. package/studio/web/assets/index-jiPwkrsB.css +1 -0
  347. package/studio/web/assets/index.lazy-C3TJZJ4o.js +266 -0
  348. package/studio/web/assets/index.lazy-C3TJZJ4o.js.map +1 -0
  349. package/studio/web/assets/profiler-DotzgiCJ.js +2 -0
  350. package/studio/web/assets/profiler-DotzgiCJ.js.map +1 -0
  351. package/studio/web/assets/react-redux-VxUEx_mU.js +6 -0
  352. package/studio/web/assets/react-redux-VxUEx_mU.js.map +1 -0
  353. package/studio/web/assets/startRecording-B_9J9Csd.js +3 -0
  354. package/studio/web/assets/startRecording-B_9J9Csd.js.map +1 -0
  355. package/studio/web/fabric-signup-background.webp +0 -0
  356. package/studio/web/fabric-signup-text.png +0 -0
  357. package/studio/web/favicon_purple.png +0 -0
  358. package/studio/web/github-icon.svg +15 -0
  359. package/studio/web/harper-fabric_black.png +0 -0
  360. package/studio/web/harper-fabric_white.png +0 -0
  361. package/studio/web/harper-studio_white.png +0 -0
  362. package/studio/web/index.html +16 -0
  363. package/studio/web/running.css +148 -0
  364. package/studio/web/running.html +147 -0
  365. package/studio/web/running.js +111 -0
  366. package/upgrade/UpgradeObjects.js +13 -0
  367. package/upgrade/directives/directivesController.js +90 -0
  368. package/upgrade/directivesManager.js +139 -0
  369. package/upgrade/upgradePrompt.js +124 -0
  370. package/upgrade/upgradeUtilities.js +28 -0
  371. package/utility/AWS/AWSConnector.js +29 -0
  372. package/utility/OperationFunctionCaller.js +63 -0
  373. package/utility/assignCmdEnvVariables.js +62 -0
  374. package/utility/common_utils.js +867 -0
  375. package/utility/environment/environmentManager.js +208 -0
  376. package/utility/environment/systemInformation.js +355 -0
  377. package/utility/errors/commonErrors.js +267 -0
  378. package/utility/errors/hdbError.js +146 -0
  379. package/utility/functions/date/dateFunctions.js +65 -0
  380. package/utility/functions/geo.js +355 -0
  381. package/utility/functions/sql/alaSQLExtension.js +104 -0
  382. package/utility/globalSchema.js +35 -0
  383. package/utility/hdbTerms.ts +819 -0
  384. package/utility/install/checkJWTTokensExist.js +62 -0
  385. package/utility/install/harperdb.conf +15 -0
  386. package/utility/install/harperdb.service +14 -0
  387. package/utility/install/installer.js +635 -0
  388. package/utility/installation.ts +30 -0
  389. package/utility/lmdb/DBIDefinition.js +20 -0
  390. package/utility/lmdb/DeleteRecordsResponseObject.js +25 -0
  391. package/utility/lmdb/InsertRecordsResponseObject.js +22 -0
  392. package/utility/lmdb/OpenDBIObject.js +31 -0
  393. package/utility/lmdb/OpenEnvironmentObject.js +41 -0
  394. package/utility/lmdb/UpdateRecordsResponseObject.js +25 -0
  395. package/utility/lmdb/UpsertRecordsResponseObject.js +22 -0
  396. package/utility/lmdb/cleanLMDBMap.js +65 -0
  397. package/utility/lmdb/commonUtility.js +119 -0
  398. package/utility/lmdb/deleteUtility.js +128 -0
  399. package/utility/lmdb/environmentUtility.js +477 -0
  400. package/utility/lmdb/searchCursorFunctions.js +187 -0
  401. package/utility/lmdb/searchUtility.js +918 -0
  402. package/utility/lmdb/terms.js +57 -0
  403. package/utility/lmdb/writeUtility.js +407 -0
  404. package/utility/logging/harper_logger.js +876 -0
  405. package/utility/logging/logRotator.js +157 -0
  406. package/utility/logging/logger.ts +24 -0
  407. package/utility/logging/readLog.js +355 -0
  408. package/utility/logging/transactionLog.js +57 -0
  409. package/utility/mount_hdb.js +59 -0
  410. package/utility/npmUtilities.js +102 -0
  411. package/utility/operationPermissions.ts +112 -0
  412. package/utility/operation_authorization.js +836 -0
  413. package/utility/packageUtils.js +55 -0
  414. package/utility/password.ts +99 -0
  415. package/utility/processManagement/processManagement.js +187 -0
  416. package/utility/processManagement/servicesConfig.js +56 -0
  417. package/utility/scripts/restartHdb.js +24 -0
  418. package/utility/scripts/user_data.sh +13 -0
  419. package/utility/signalling.js +36 -0
  420. package/utility/terms/certificates.js +81 -0
  421. package/utility/when.ts +20 -0
  422. package/v1.d.ts +39 -0
  423. package/v1.js +41 -0
  424. package/v2.d.ts +39 -0
  425. package/v2.js +41 -0
  426. package/validation/bulkDeleteValidator.js +24 -0
  427. package/validation/check_permissions.js +19 -0
  428. package/validation/common_validators.js +95 -0
  429. package/validation/configValidator.js +331 -0
  430. package/validation/deleteValidator.js +15 -0
  431. package/validation/fileLoadValidator.js +153 -0
  432. package/validation/insertValidator.js +40 -0
  433. package/validation/installValidator.js +37 -0
  434. package/validation/readLogValidator.js +64 -0
  435. package/validation/role_validation.js +320 -0
  436. package/validation/schemaMetadataValidator.js +42 -0
  437. package/validation/searchValidator.js +166 -0
  438. package/validation/statusValidator.ts +66 -0
  439. package/validation/transactionLogValidator.js +33 -0
  440. package/validation/user_validation.js +55 -0
  441. package/validation/validationWrapper.js +105 -0
  442. package/dist/resources/analytics/profile.d.ts +0 -2
  443. package/dist/resources/analytics/profile.js +0 -144
  444. package/dist/resources/analytics/profile.js.map +0 -1
@@ -20,7 +20,11 @@ const defaultCustomMetricWindow = 1000 * 60 * 60 * 24 * 7;
20
20
  const log = forComponent('analytics').conditional;
21
21
  async function lookupHostname(nodeId) {
22
22
  const result = await (0, hostnames_ts_1.getAnalyticsHostnameTable)().get(nodeId);
23
- return result.hostname;
23
+ if (result?.hostname)
24
+ return result.hostname;
25
+ if (nodeId === (0, hostnames_ts_1.stableNodeId)(server.hostname))
26
+ return server.hostname;
27
+ return undefined;
24
28
  }
25
29
  function isSelected(querySelect, attr) {
26
30
  return querySelect.length === 0 || querySelect.includes(attr);
@@ -48,26 +52,22 @@ function conformCondition(condition) {
48
52
  value: condition.search_value ?? condition.value,
49
53
  };
50
54
  }
51
- async function coalesceResults(results, window) {
52
- const coalescedResults = [];
55
+ async function* coalesceResults(results, window) {
53
56
  let coalesceId;
54
- let lastCoalescedId = new Map();
55
57
  for await (const result of results) {
56
58
  const id = result.id;
57
59
  if (!coalesceId) {
58
60
  coalesceId = id;
59
61
  }
60
62
  const delta = Math.abs(id - coalesceId);
61
- if (delta < window && lastCoalescedId.get(result.node) !== id) {
62
- coalescedResults.push({ ...result, id: coalesceId });
63
- lastCoalescedId[result.node] = id;
63
+ if (delta < window) {
64
+ yield { ...result, id: coalesceId };
64
65
  }
65
66
  else {
66
- coalescedResults.push(result);
67
+ yield result;
67
68
  coalesceId = id;
68
69
  }
69
70
  }
70
- return coalescedResults;
71
71
  }
72
72
  async function get(metric, opts) {
73
73
  const { getAttributes, startTime, endTime, additionalConditions } = opts ?? {};
@@ -80,19 +80,28 @@ async function get(metric, opts) {
80
80
  if (!isSelected(select, 'id')) {
81
81
  select.push('id');
82
82
  }
83
- if (startTime) {
83
+ if (startTime && endTime) {
84
84
  conditions.push({
85
85
  attribute: 'id',
86
- comparator: 'greater_than_equal',
87
- value: startTime,
86
+ comparator: 'between',
87
+ value: [startTime, endTime],
88
88
  });
89
89
  }
90
- if (endTime) {
91
- conditions.push({
92
- attribute: 'id',
93
- comparator: 'less_than',
94
- value: endTime,
95
- });
90
+ else {
91
+ if (startTime) {
92
+ conditions.push({
93
+ attribute: 'id',
94
+ comparator: 'greater_than_equal',
95
+ value: startTime,
96
+ });
97
+ }
98
+ if (endTime) {
99
+ conditions.push({
100
+ attribute: 'id',
101
+ comparator: 'less_than',
102
+ value: endTime,
103
+ });
104
+ }
96
105
  }
97
106
  const request = { conditions, allowConditionsOnDynamicAttributes: true };
98
107
  if (select.length > 0) {
@@ -107,15 +116,16 @@ async function get(metric, opts) {
107
116
  result['id'] = result['id'][0];
108
117
  if (isSelected(select, 'node')) {
109
118
  log.trace?.(`get_analytics lookup hostname for nodeId: ${nodeId}`);
110
- result['node'] = await lookupHostname(nodeId);
119
+ const hostname = await lookupHostname(nodeId);
120
+ result['node'] = hostname ?? nodeId;
111
121
  }
112
122
  log.trace?.(`get_analytics result:`, JSON.stringify(result));
113
123
  return result;
114
124
  });
115
125
  if (opts?.coalesceTime) {
116
- // coalescing window is the aggregate period plus 10% & converted to milliseconds
117
- const window = (0, environmentManager_js_1.get)(hdbTerms_ts_1.CONFIG_PARAMS.ANALYTICS_AGGREGATEPERIOD) * 1.1 * 1000;
118
- results = await coalesceResults(results, window);
126
+ // coalescing window is the aggregate period converted to milliseconds
127
+ const window = (0, environmentManager_js_1.get)(hdbTerms_ts_1.CONFIG_PARAMS.ANALYTICS_AGGREGATEPERIOD) * 1000;
128
+ results = coalesceResults(results, window);
119
129
  }
120
130
  return results;
121
131
  }
@@ -1 +1 @@
1
- {"version":3,"file":"read.js","sourceRoot":"","sources":["../../../resources/analytics/read.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"read.js","sourceRoot":"","sources":["../../../resources/analytics/read.ts"],"names":[],"mappings":"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"}
@@ -60,10 +60,6 @@ const Server_ts_1 = require("../../server/Server.js");
60
60
  const fs = __importStar(require("node:fs"));
61
61
  const hostnames_ts_1 = require("./hostnames.js");
62
62
  const metadata_ts_1 = require("./metadata.js");
63
- setTimeout(() => {
64
- // let everything load before we actually load and start the profiler
65
- import("./profile.js");
66
- }, 1000);
67
63
  const rocksdb_js_1 = require("@harperfast/rocksdb-js");
68
64
  const log = forComponent('analytics').conditional;
69
65
  (0, environmentManager_js_1.initSync)();
@@ -262,7 +258,7 @@ async function recordHostname() {
262
258
  hostname,
263
259
  };
264
260
  log.trace?.(`recordHostname storing hostname: ${JSON.stringify(hostnameRecord)}`);
265
- hostnamesTable.put(hostnameRecord.id, hostnameRecord);
261
+ await hostnamesTable.put(hostnameRecord.id, hostnameRecord);
266
262
  }
267
263
  }
268
264
  function getHostNodeId(hostname) {
@@ -670,7 +666,8 @@ function getAnalyticsTable() {
670
666
  ],
671
667
  })));
672
668
  }
673
- (0, manageThreads_js_1.setChildListenerByType)(ANALYTICS_REPORT_TYPE, recordAnalytics);
669
+ if (!worker_threads_1.parentPort)
670
+ (0, manageThreads_js_1.onMessageByType)(ANALYTICS_REPORT_TYPE, recordAnalytics);
674
671
  let scheduledTasksRunning;
675
672
  function startScheduledTasks() {
676
673
  scheduledTasksRunning = true;
@@ -1 +1 @@
1
- {"version":3,"file":"write.js","sourceRoot":"","sources":["../../../resources/analytics/write.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"write.js","sourceRoot":"","sources":["../../../resources/analytics/write.ts"],"names":[],"mappings":"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"}
@@ -21,7 +21,7 @@ export type AuditRecord = {
21
21
  endTxn?: boolean;
22
22
  structureVersion?: number;
23
23
  };
24
- export declare const ENTRY_DATAVIEW: DataView<any>;
24
+ export declare const ENTRY_DATAVIEW: DataView<ArrayBuffer>;
25
25
  export declare const transactionKeyEncoder: {
26
26
  writeKey(key: any, buffer: any, position: any): any;
27
27
  readKey(buffer: any, start: any, end: any): any;
@@ -29,7 +29,7 @@ export declare const transactionKeyEncoder: {
29
29
  export declare const AUDIT_STORE_OPTIONS: {
30
30
  encoder: {
31
31
  needsStableBuffer: boolean;
32
- encode: (auditRecord: AuditRecord) => any;
32
+ encode: (auditRecord: AuditRecord) => Buffer<ArrayBuffer> | (AuditRecord & Uint8Array<ArrayBufferLike>);
33
33
  decode: (encoding: Buffer) => AuditRecord;
34
34
  };
35
35
  keyEncoder: {
@@ -66,7 +66,7 @@ export declare const HAS_ADDITIONAL_AUDIT_REFS = 16384;
66
66
  * @param residencyId
67
67
  * @param previousResidencyId
68
68
  */
69
- export declare function createAuditEntry(auditRecord: AuditRecord, start?: number): any;
69
+ export declare function createAuditEntry(auditRecord: AuditRecord, start?: number): Buffer<ArrayBuffer>;
70
70
  /**
71
71
  * Reads a audit entry from binary data
72
72
  * @param buffer
@@ -29,11 +29,34 @@ type StorageInfo = {
29
29
  asString?: string;
30
30
  deleteOnFailure?: boolean;
31
31
  };
32
- export declare const Blob: any;
32
+ export declare const Blob: {
33
+ new (blobParts?: BlobPart[], options?: BlobPropertyBag): Blob;
34
+ prototype: Blob;
35
+ } | {
36
+ new (contents: Buffer[]): {
37
+ content: Buffer;
38
+ stream(): ReadableStream<any>;
39
+ text(): Promise<string>;
40
+ arrayBuffer(): Promise<ArrayBufferLike>;
41
+ get size(): number;
42
+ slice(): /*elided*/ any;
43
+ bytes(): Promise<Buffer<ArrayBufferLike>>;
44
+ get type(): string;
45
+ };
46
+ };
33
47
  export declare let blobsWereEncoded: boolean;
34
48
  declare function InstanceOfBlobWithNoConstructor(): void;
35
49
  declare namespace InstanceOfBlobWithNoConstructor {
36
- var prototype: any;
50
+ var prototype: Blob | {
51
+ content: Buffer;
52
+ stream(): ReadableStream<any>;
53
+ text(): Promise<string>;
54
+ arrayBuffer(): Promise<ArrayBufferLike>;
55
+ get size(): number;
56
+ slice(): /*elided*/ any;
57
+ bytes(): Promise<Buffer<ArrayBufferLike>>;
58
+ get type(): string;
59
+ };
37
60
  }
38
61
  /**
39
62
  * A blob that is backed by a file, and can be saved to the database as a reference
@@ -1,3 +1,4 @@
1
+ import { EventEmitter } from 'node:events';
1
2
  import { type Database, type RootDatabase } from 'lmdb';
2
3
  import { makeTable } from './Table.ts';
3
4
  import { RocksDatabase } from '@harperfast/rocksdb-js';
@@ -45,6 +46,12 @@ interface RocksRootDatabase extends RocksDatabaseEx {
45
46
  dbisDb?: RocksDatabaseEx;
46
47
  }
47
48
  export type RootDatabaseKind = LMDBRootDatabase | RocksRootDatabase;
49
+ export type DatabaseWatcherEventMap = {
50
+ updateTable: [table: Table, originIsNotCluster?: boolean];
51
+ dropTable: [tableName: string, databaseName: string];
52
+ dropDatabase: [databaseName: string];
53
+ };
54
+ export declare const databaseEventsEmitter: EventEmitter<DatabaseWatcherEventMap>;
48
55
  export declare const tables: Tables;
49
56
  export declare const databases: Databases;
50
57
  /**
@@ -119,10 +126,13 @@ export declare function dropTableMeta({ table: tableName, database: databaseName
119
126
  table: any;
120
127
  database: any;
121
128
  }): Promise<any[]>;
122
- export declare function onUpdatedTable(listener: any): {
129
+ export declare function onUpdatedTable(listener: (table: Table) => void): {
130
+ remove(): void;
131
+ };
132
+ export declare function onRemovedTable(listener: (tableName: string, databaseName: string) => void): {
123
133
  remove(): void;
124
134
  };
125
- export declare function onRemovedDB(listener: any): {
135
+ export declare function onRemovedDB(listener: (databaseName: string) => void): {
126
136
  remove(): void;
127
137
  };
128
138
  export declare function getDefaultCompression(): {
@@ -36,7 +36,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
36
36
  return (mod && mod.__esModule) ? mod : { "default": mod };
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.databases = exports.tables = exports.NON_REPLICATING_SYSTEM_TABLES = void 0;
39
+ exports.databases = exports.tables = exports.databaseEventsEmitter = exports.NON_REPLICATING_SYSTEM_TABLES = void 0;
40
40
  exports.getTables = getTables;
41
41
  exports.getDatabases = getDatabases;
42
42
  exports.readMetaDb = readMetaDb;
@@ -46,8 +46,10 @@ exports.dropDatabase = dropDatabase;
46
46
  exports.table = table;
47
47
  exports.dropTableMeta = dropTableMeta;
48
48
  exports.onUpdatedTable = onUpdatedTable;
49
+ exports.onRemovedTable = onRemovedTable;
49
50
  exports.onRemovedDB = onRemovedDB;
50
51
  exports.getDefaultCompression = getDefaultCompression;
52
+ const node_events_1 = require("node:events");
51
53
  const environmentManager_js_1 = require("../utility/environment/environmentManager.js");
52
54
  const terms_js_1 = require("../utility/lmdb/terms.js");
53
55
  const lmdb_1 = require("lmdb");
@@ -95,6 +97,7 @@ exports.NON_REPLICATING_SYSTEM_TABLES = [
95
97
  'hdb_job',
96
98
  'hdb_info',
97
99
  ];
100
+ exports.databaseEventsEmitter = new node_events_1.EventEmitter();
98
101
  exports.tables = Object.create(null);
99
102
  exports.databases = Object.create(null);
100
103
  const MEMORY_FOR_ROCKS_DB = Math.min(process.constrainedMemory?.() ?? Infinity, (0, node_os_1.totalmem)()) * 0.25; // 25% of available memory
@@ -121,8 +124,6 @@ const rocksdbDatabaseEnvs = new Map();
121
124
  (0, globals_js_1._assignPackageExport)('databases', exports.databases);
122
125
  (0, globals_js_1._assignPackageExport)('tables', exports.tables);
123
126
  const NEXT_TABLE_ID = Symbol.for('next-table-id');
124
- const tableListeners = [];
125
- const dbRemovalListeners = [];
126
127
  let loadedDatabases; // indicates if we have loaded databases from the file system yet
127
128
  // This is used to track all the databases that are found when iterating through the file system so that anything that is missing
128
129
  // can be removed:
@@ -540,9 +541,7 @@ function initStores(path, rootStore, databaseName, defaultTable, auditPath, isLe
540
541
  dbisDB: dbisStore,
541
542
  }));
542
543
  table.schemaVersion = 1;
543
- for (const listener of tableListeners) {
544
- listener(table);
545
- }
544
+ exports.databaseEventsEmitter.emit('updateTable', table);
546
545
  }
547
546
  }
548
547
  return rootStore;
@@ -562,7 +561,7 @@ function resetDatabases() {
562
561
  const table = db[tableName];
563
562
  if (table.primaryStore.path === path) {
564
563
  delete exports.databases[store.databaseName];
565
- dbRemovalListeners.forEach((listener) => listener(store.databaseName));
564
+ exports.databaseEventsEmitter.emit('dropDatabase', store.databaseName);
566
565
  break;
567
566
  }
568
567
  }
@@ -689,6 +688,7 @@ async function dropDatabase(databaseName) {
689
688
  await (0, promises_1.unlink)(rootStore.path);
690
689
  }
691
690
  }
691
+ exports.databaseEventsEmitter.emit('dropTable', tableName, databaseName);
692
692
  }
693
693
  if (!rootStore) {
694
694
  rootStore = database({ database: databaseName, table: null });
@@ -707,7 +707,7 @@ async function dropDatabase(databaseName) {
707
707
  delete exports.tables[DEFINED_TABLES];
708
708
  }
709
709
  delete exports.databases[databaseName];
710
- dbRemovalListeners.forEach((listener) => listener(databaseName));
710
+ exports.databaseEventsEmitter.emit('dropDatabase', databaseName);
711
711
  await (0, blob_ts_1.deleteRootBlobPathsForDB)(rootStore);
712
712
  }
713
713
  // opens an index, consulting with custom indexes that may use alternate store configuration
@@ -1030,9 +1030,7 @@ function table(tableDefinition) {
1030
1030
  signalling.signalSchemaChange(new itc_js_1.SchemaEventMsg(process.pid, 'schema-change', Table.databaseName, Table.tableName));
1031
1031
  Table.origin = origin;
1032
1032
  if (hasChanges) {
1033
- for (const listener of tableListeners) {
1034
- listener(Table, origin !== 'cluster');
1035
- }
1033
+ exports.databaseEventsEmitter.emit('updateTable', Table, origin !== 'cluster');
1036
1034
  }
1037
1035
  if (expiration || eviction || scanInterval)
1038
1036
  Table.setTTLExpiration({
@@ -1184,25 +1182,30 @@ function dropTableMeta({ table: tableName, database: databaseName }) {
1184
1182
  for (const key of dbisDb.getKeys({ start: tableName + '/', end: tableName + '0' })) {
1185
1183
  removals.push(dbisDb.remove(key));
1186
1184
  }
1185
+ exports.databaseEventsEmitter.emit('dropTable', tableName, databaseName);
1187
1186
  return Promise.all(removals);
1188
1187
  }
1189
1188
  function onUpdatedTable(listener) {
1190
- tableListeners.push(listener);
1189
+ exports.databaseEventsEmitter.on('updateTable', listener);
1190
+ return {
1191
+ remove() {
1192
+ exports.databaseEventsEmitter.off('updateTable', listener);
1193
+ },
1194
+ };
1195
+ }
1196
+ function onRemovedTable(listener) {
1197
+ exports.databaseEventsEmitter.on('dropTable', listener);
1191
1198
  return {
1192
1199
  remove() {
1193
- const index = tableListeners.indexOf(listener);
1194
- if (index > -1)
1195
- tableListeners.splice(index, 1);
1200
+ exports.databaseEventsEmitter.off('dropTable', listener);
1196
1201
  },
1197
1202
  };
1198
1203
  }
1199
1204
  function onRemovedDB(listener) {
1200
- dbRemovalListeners.push(listener);
1205
+ exports.databaseEventsEmitter.on('dropDatabase', listener);
1201
1206
  return {
1202
1207
  remove() {
1203
- const index = dbRemovalListeners.indexOf(listener);
1204
- if (index > -1)
1205
- dbRemovalListeners.splice(index, 1);
1208
+ exports.databaseEventsEmitter.off('dropDatabase', listener);
1206
1209
  },
1207
1210
  };
1208
1211
  }