axiodb 20.6.7 → 22.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (75) hide show
  1. package/README.md +2 -1
  2. package/lib/Helper/RegexGuard.helper.d.ts +85 -0
  3. package/lib/Helper/RegexGuard.helper.js +278 -0
  4. package/lib/Helper/RegexGuard.helper.js.map +1 -0
  5. package/lib/Helper/SafeErrorMessage.helper.d.ts +18 -0
  6. package/lib/Helper/SafeErrorMessage.helper.js +42 -0
  7. package/lib/Helper/SafeErrorMessage.helper.js.map +1 -0
  8. package/lib/Memory/memory.operation.d.ts +19 -7
  9. package/lib/Memory/memory.operation.js +32 -12
  10. package/lib/Memory/memory.operation.js.map +1 -1
  11. package/lib/Services/Aggregation/operators/expressionOperators.js +5 -1
  12. package/lib/Services/Aggregation/operators/expressionOperators.js.map +1 -1
  13. package/lib/Services/Aggregation/operators/stageOperators.js +5 -1
  14. package/lib/Services/Aggregation/operators/stageOperators.js.map +1 -1
  15. package/lib/Services/CRUD Operation/Delete.operation.d.ts +3 -1
  16. package/lib/Services/CRUD Operation/Delete.operation.js +4 -3
  17. package/lib/Services/CRUD Operation/Delete.operation.js.map +1 -1
  18. package/lib/Services/CRUD Operation/Reader.operation.d.ts +4 -1
  19. package/lib/Services/CRUD Operation/Reader.operation.js +7 -7
  20. package/lib/Services/CRUD Operation/Reader.operation.js.map +1 -1
  21. package/lib/Services/CRUD Operation/Update.operation.d.ts +3 -1
  22. package/lib/Services/CRUD Operation/Update.operation.js +4 -3
  23. package/lib/Services/CRUD Operation/Update.operation.js.map +1 -1
  24. package/lib/Services/Collection/collection.operation.d.ts +3 -1
  25. package/lib/Services/Collection/collection.operation.js +7 -6
  26. package/lib/Services/Collection/collection.operation.js.map +1 -1
  27. package/lib/Services/Database/database.operation.d.ts +3 -1
  28. package/lib/Services/Database/database.operation.js +5 -4
  29. package/lib/Services/Database/database.operation.js.map +1 -1
  30. package/lib/Services/Indexation.operation.d.ts +8 -0
  31. package/lib/Services/Indexation.operation.js +21 -5
  32. package/lib/Services/Indexation.operation.js.map +1 -1
  33. package/lib/Services/Transaction/Session.service.d.ts +3 -1
  34. package/lib/Services/Transaction/Session.service.js +3 -2
  35. package/lib/Services/Transaction/Session.service.js.map +1 -1
  36. package/lib/Services/Transaction/Transaction.service.d.ts +3 -1
  37. package/lib/Services/Transaction/Transaction.service.js +4 -4
  38. package/lib/Services/Transaction/Transaction.service.js.map +1 -1
  39. package/lib/config/Interfaces/Operation/Indexation.operation.interface.d.ts +8 -0
  40. package/lib/engine/Filesystem/FileManager.js +9 -3
  41. package/lib/engine/Filesystem/FileManager.js.map +1 -1
  42. package/lib/engine/Filesystem/FolderManager.js +8 -2
  43. package/lib/engine/Filesystem/FolderManager.js.map +1 -1
  44. package/lib/server/config/keys.d.ts +6 -0
  45. package/lib/server/config/keys.js +14 -1
  46. package/lib/server/config/keys.js.map +1 -1
  47. package/lib/server/config/server.js +5 -0
  48. package/lib/server/config/server.js.map +1 -1
  49. package/lib/server/controller/Database/Databse.controller.js +2 -1
  50. package/lib/server/controller/Database/Databse.controller.js.map +1 -1
  51. package/lib/server/controller/Stats.controller.js +1 -2
  52. package/lib/server/controller/Stats.controller.js.map +1 -1
  53. package/lib/server/router/Router.js +1 -2
  54. package/lib/server/router/Router.js.map +1 -1
  55. package/lib/tcp/config/server.js +2 -1
  56. package/lib/tcp/config/server.js.map +1 -1
  57. package/lib/tcp/connection/ConnectionManager.js +2 -1
  58. package/lib/tcp/connection/ConnectionManager.js.map +1 -1
  59. package/lib/tcp/connection/TransactionManager.d.ts +2 -1
  60. package/lib/tcp/connection/TransactionManager.js +2 -2
  61. package/lib/tcp/connection/TransactionManager.js.map +1 -1
  62. package/lib/tcp/handler/CommandHandler.js +3 -2
  63. package/lib/tcp/handler/CommandHandler.js.map +1 -1
  64. package/lib/tcp/handler/handlers/Collection.handler.d.ts +1 -1
  65. package/lib/tcp/handler/handlers/Collection.handler.js +6 -5
  66. package/lib/tcp/handler/handlers/Collection.handler.js.map +1 -1
  67. package/lib/tcp/handler/handlers/DB.handler.js +5 -4
  68. package/lib/tcp/handler/handlers/DB.handler.js.map +1 -1
  69. package/lib/tcp/handler/handlers/Operation.handler.js +3 -1
  70. package/lib/tcp/handler/handlers/Operation.handler.js.map +1 -1
  71. package/lib/tcp/handler/handlers/Transaction.handler.js +4 -2
  72. package/lib/tcp/handler/handlers/Transaction.handler.js.map +1 -1
  73. package/lib/utility/Searcher.utils.js +3 -2
  74. package/lib/utility/Searcher.utils.js.map +1 -1
  75. package/package.json +1 -1
@@ -7,6 +7,7 @@ import UpdateOperation from "../CRUD Operation/Update.operation";
7
7
  import Aggregation from "../Aggregation/Aggregation.Operation";
8
8
  import Transaction from "../Transaction/Transaction.service";
9
9
  import Session from "../Transaction/Session.service";
10
+ import type { InMemoryCache } from "../../Memory/memory.operation";
10
11
  /**
11
12
  * Represents a collection inside a database.
12
13
  */
@@ -17,8 +18,9 @@ export default class Collection {
17
18
  private Converter;
18
19
  private readonly IndexManager;
19
20
  private readonly indexCache;
21
+ private readonly cache;
20
22
  private readonly collectionResolver?;
21
- constructor(name: string, path: string, collectionResolver?: CollectionResolver);
23
+ constructor(name: string, path: string, collectionResolver: CollectionResolver, cache: InMemoryCache);
22
24
  getCollectionPath(): string;
23
25
  /**
24
26
  * Get Numbers of Documents in the Collection
@@ -30,13 +30,14 @@ const IndexCache_service_1 = require("../Index/IndexCache.service");
30
30
  * Represents a collection inside a database.
31
31
  */
32
32
  class Collection {
33
- constructor(name, path, collectionResolver) {
33
+ constructor(name, path, collectionResolver, cache) {
34
34
  this.name = name;
35
35
  this.path = path;
36
36
  this.Converter = new Converter_helper_1.default();
37
37
  this.updatedAt = new Date().toISOString();
38
38
  this.IndexManager = new Index_service_1.IndexManager(this.path);
39
39
  this.collectionResolver = collectionResolver;
40
+ this.cache = cache;
40
41
  // Initialize and eagerly load index cache for maximum query performance
41
42
  this.indexCache = IndexCache_service_1.IndexCache.getInstance(this.path);
42
43
  this.indexCache.loadAllIndexes().catch(() => {
@@ -216,7 +217,7 @@ class Collection {
216
217
  if (!query) {
217
218
  throw new Error("Query cannot be empty");
218
219
  }
219
- return new Reader_operation_1.default(this.name, this.path, query);
220
+ return new Reader_operation_1.default(this.name, this.path, query, this.cache);
220
221
  }
221
222
  /**
222
223
  * Retrieves multiple documents by their IDs in a single call.
@@ -268,13 +269,13 @@ class Collection {
268
269
  throw new Error("Query cannot be empty");
269
270
  }
270
271
  // Delete the data
271
- return new Delete_operation_1.default(this.name, this.path, query);
272
+ return new Delete_operation_1.default(this.name, this.path, query, this.cache);
272
273
  }
273
274
  update(query) {
274
275
  if (!query) {
275
276
  throw new Error("Query cannot be empty");
276
277
  }
277
- return new Update_operation_1.default(this.name, this.path, query);
278
+ return new Update_operation_1.default(this.name, this.path, query, this.cache);
278
279
  }
279
280
  beginTransaction() {
280
281
  if (!this.name) {
@@ -283,7 +284,7 @@ class Collection {
283
284
  if (!this.path) {
284
285
  throw new Error("Collection path cannot be empty");
285
286
  }
286
- return new Transaction_service_1.default(this.path);
287
+ return new Transaction_service_1.default(this.path, this.cache);
287
288
  }
288
289
  /**
289
290
  * Starts a new session for MongoDB-like transaction management.
@@ -309,7 +310,7 @@ class Collection {
309
310
  if (!this.path) {
310
311
  throw new Error("Collection path cannot be empty");
311
312
  }
312
- return new Session_service_1.default(this.path, options);
313
+ return new Session_service_1.default(this.path, options, this.cache);
313
314
  }
314
315
  }
315
316
  exports.default = Collection;
@@ -1 +1 @@
1
- {"version":3,"file":"collection.operation.js","sourceRoot":"","sources":["../../../source/Services/Collection/collection.operation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"collection.operation.js","sourceRoot":"","sources":["../../../source/Services/Collection/collection.operation.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import Collection from "../Collection/collection.operation";
2
2
  import { ErrorInterface, SuccessInterface } from "../../config/Interfaces/Helper/response.helper.interface";
3
+ import type { InMemoryCache } from "../../Memory/memory.operation";
3
4
  /**
4
5
  * Represents a database instance.
5
6
  * This class provides methods to create, delete, and manage collections within a database.
@@ -8,10 +9,11 @@ export default class Database {
8
9
  private name;
9
10
  private readonly path;
10
11
  private readonly collectionMetaPath;
12
+ private readonly cache;
11
13
  private fileManager;
12
14
  private folderManager;
13
15
  private ResponseHelper;
14
- constructor(name: string, path: string);
16
+ constructor(name: string, path: string, cache: InMemoryCache);
15
17
  /**
16
18
  * Creates a new collection inside the specified database.
17
19
  * @param {string} collectionName - Name of the collection.
@@ -62,10 +62,11 @@ const Logger_helper_1 = __importDefault(require("../../Helper/Logger.helper"));
62
62
  * This class provides methods to create, delete, and manage collections within a database.
63
63
  */
64
64
  class Database {
65
- constructor(name, path) {
65
+ constructor(name, path, cache) {
66
66
  this.name = name;
67
67
  this.path = path;
68
68
  this.collectionMetaPath = `${path}/${Keys_1.General.Collection_Meta_File}`;
69
+ this.cache = cache;
69
70
  this.fileManager = new FileManager_1.default();
70
71
  this.folderManager = new FolderManager_1.default();
71
72
  this.ResponseHelper = new response_helper_1.default();
@@ -91,7 +92,7 @@ class Database {
91
92
  const Index = new Index_service_1.IndexManager(collectionPath);
92
93
  yield Index.generateIndexMeta();
93
94
  const resolver = this.createCollectionResolver();
94
- const collection = new collection_operation_1.default(collectionName, collectionPath, resolver);
95
+ const collection = new collection_operation_1.default(collectionName, collectionPath, resolver, this.cache);
95
96
  // Store collection metadata in the collectionMap
96
97
  yield this.AddCollectionMetadata({
97
98
  name: collectionName,
@@ -107,7 +108,7 @@ class Database {
107
108
  **/
108
109
  isCollectionExists(collectionName) {
109
110
  return __awaiter(this, void 0, void 0, function* () {
110
- const collectionPath = path_1.default.join(this.path, collectionName);
111
+ const collectionPath = PathSanitizer_helper_1.default.safePath(this.path, collectionName);
111
112
  const exists = yield this.folderManager.DirectoryExists(collectionPath);
112
113
  return exists.statusCode === StatusCode_1.StatusCodes.OK;
113
114
  });
@@ -120,7 +121,7 @@ class Database {
120
121
  */
121
122
  deleteCollection(collectionName) {
122
123
  return __awaiter(this, void 0, void 0, function* () {
123
- const collectionPath = path_1.default.join(this.path, collectionName);
124
+ const collectionPath = PathSanitizer_helper_1.default.safePath(this.path, collectionName);
124
125
  const exists = yield this.folderManager.DirectoryExists(collectionPath);
125
126
  if (exists.statusCode === StatusCode_1.StatusCodes.OK) {
126
127
  // Remove collection metadata
@@ -1 +1 @@
1
- {"version":3,"file":"database.operation.js","sourceRoot":"","sources":["../../../source/Services/Database/database.operation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"database.operation.js","sourceRoot":"","sources":["../../../source/Services/Database/database.operation.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import Database from "./Database/database.operation";
2
2
  import { ErrorInterface, SuccessInterface } from "../config/Interfaces/Helper/response.helper.interface";
3
3
  import { AxioDBOptions } from "../config/Interfaces/Operation/Indexation.operation.interface";
4
+ import { InMemoryCache } from "../Memory/memory.operation";
4
5
  /**
5
6
  * Class representing the AxioDB database.
6
7
  * @param {AxioDBOptions} options - Configuration options for AxioDB
@@ -9,6 +10,10 @@ import { AxioDBOptions } from "../config/Interfaces/Operation/Indexation.operati
9
10
  * @param {string} options.CustomPath - Custom path for database storage. Defaults to current directory.
10
11
  * @param {boolean} options.TCP - Enable/disable TCP server (port 27019). Defaults to false.
11
12
  * @param {boolean} options.TCPAuth - Require username/password authentication (same RBAC users as the GUI) for TCP connections. Defaults to false.
13
+ * @param {boolean} options.Cache - Enable the built-in InMemoryCache shared across the whole instance. Defaults to true.
14
+ * @param {number} options.minTTL - Minimum cache entry lifetime in minutes. Defaults to 5.
15
+ * @param {number} options.maxTTL - Maximum cache entry lifetime in minutes. Defaults to 15.
16
+ * @param {number} options.cacheClearUp - Cache housekeeping cadence and search-query retention in seconds. Defaults to 86400.
12
17
  * @returns {AxioDB} - Returns the instance of AxioDB.
13
18
  * @example
14
19
  * const db = new AxioDB({ GUI: true, RootName: "MyDB", CustomPath: "./data" });
@@ -24,6 +29,7 @@ export declare class AxioDB {
24
29
  private ResponseHelper;
25
30
  private static _instance;
26
31
  private DatabaseMap;
32
+ private readonly cache;
27
33
  private GUI;
28
34
  private HTTP;
29
35
  private TCP;
@@ -49,6 +55,8 @@ export declare class AxioDB {
49
55
  * @returns {string} The current path.
50
56
  */
51
57
  get GetPath(): string;
58
+ /** The shared InMemoryCache owned by this AxioDB instance, passed down to databases, collections, operations, transactions and the HTTP/TCP/MCP surfaces. */
59
+ get Cache(): InMemoryCache;
52
60
  /**
53
61
  * Creates a new database folder and updates the metadata file.
54
62
  * @param DBName - The name of the database to create.
@@ -26,12 +26,14 @@ const Converter_helper_1 = __importDefault(require("../Helper/Converter.helper")
26
26
  const Console_helper_1 = __importDefault(require("../Helper/Console.helper"));
27
27
  const StatusCode_1 = require("../config/Keys/StatusCode");
28
28
  const response_helper_1 = __importDefault(require("../Helper/response.helper"));
29
+ const PathSanitizer_helper_1 = __importDefault(require("../Helper/PathSanitizer.helper"));
29
30
  const server_1 = __importDefault(require("../server/config/server"));
30
31
  const server_2 = __importDefault(require("../tcp/config/server"));
31
32
  const AuthSeeder_service_1 = __importDefault(require("./Auth/AuthSeeder.service"));
32
33
  const Permissions_1 = require("../config/Keys/Permissions");
33
34
  const LoginRateLimiter_service_1 = __importDefault(require("./Auth/LoginRateLimiter.service"));
34
35
  const Logger_helper_1 = __importDefault(require("../Helper/Logger.helper"));
36
+ const memory_operation_1 = require("../Memory/memory.operation");
35
37
  /**
36
38
  * Class representing the AxioDB database.
37
39
  * @param {AxioDBOptions} options - Configuration options for AxioDB
@@ -40,6 +42,10 @@ const Logger_helper_1 = __importDefault(require("../Helper/Logger.helper"));
40
42
  * @param {string} options.CustomPath - Custom path for database storage. Defaults to current directory.
41
43
  * @param {boolean} options.TCP - Enable/disable TCP server (port 27019). Defaults to false.
42
44
  * @param {boolean} options.TCPAuth - Require username/password authentication (same RBAC users as the GUI) for TCP connections. Defaults to false.
45
+ * @param {boolean} options.Cache - Enable the built-in InMemoryCache shared across the whole instance. Defaults to true.
46
+ * @param {number} options.minTTL - Minimum cache entry lifetime in minutes. Defaults to 5.
47
+ * @param {number} options.maxTTL - Maximum cache entry lifetime in minutes. Defaults to 15.
48
+ * @param {number} options.cacheClearUp - Cache housekeeping cadence and search-query retention in seconds. Defaults to 86400.
43
49
  * @returns {AxioDB} - Returns the instance of AxioDB.
44
50
  * @example
45
51
  * const db = new AxioDB({ GUI: true, RootName: "MyDB", CustomPath: "./data" });
@@ -58,7 +64,7 @@ class AxioDB {
58
64
  throw new Error("Only one instance of AxioDB is allowed.");
59
65
  }
60
66
  AxioDB._instance = this;
61
- const { GUI, RootName, CustomPath, TCP, TCPAuth, TLS, TLSCertPath, TLSKeyPath } = options;
67
+ const { GUI, RootName, CustomPath, TCP, TCPAuth, TLS, TLSCertPath, TLSKeyPath, Cache, minTTL, maxTTL, cacheClearUp } = options;
62
68
  this.RootName = RootName || Keys_1.General.DBMS_Name;
63
69
  this.currentPATH = path_1.default.resolve(CustomPath || ".");
64
70
  this.fileManager = new FileManager_1.default();
@@ -66,6 +72,12 @@ class AxioDB {
66
72
  this.Converter = new Converter_helper_1.default();
67
73
  this.ResponseHelper = new response_helper_1.default();
68
74
  this.DatabaseMap = new Map();
75
+ this.cache = new memory_operation_1.InMemoryCache({
76
+ enabled: Cache !== false,
77
+ minTTL: minTTL !== null && minTTL !== void 0 ? minTTL : 5,
78
+ maxTTL: maxTTL !== null && maxTTL !== void 0 ? maxTTL : 15,
79
+ cacheClearUp: cacheClearUp !== null && cacheClearUp !== void 0 ? cacheClearUp : 86400,
80
+ });
69
81
  this.GUI = GUI !== undefined ? GUI : Keys_1.General.DBMS_GUI_Enable;
70
82
  this.HTTP = options.HTTP !== undefined ? options.HTTP : (this.GUI ? true : false);
71
83
  this.TCP = TCP !== undefined ? TCP : false;
@@ -139,6 +151,10 @@ class AxioDB {
139
151
  get GetPath() {
140
152
  return this.currentPATH;
141
153
  }
154
+ /** The shared InMemoryCache owned by this AxioDB instance, passed down to databases, collections, operations, transactions and the HTTP/TCP/MCP surfaces. */
155
+ get Cache() {
156
+ return this.cache;
157
+ }
142
158
  /**
143
159
  * Creates a new database folder and updates the metadata file.
144
160
  * @param DBName - The name of the database to create.
@@ -148,14 +164,14 @@ class AxioDB {
148
164
  return __awaiter(this, void 0, void 0, function* () {
149
165
  if (!this._initializing)
150
166
  yield this.ready;
151
- const dbPath = path_1.default.join(this.currentPATH, DBName);
167
+ const dbPath = PathSanitizer_helper_1.default.safePath(this.currentPATH, DBName);
152
168
  // Check if the database already exists
153
169
  const exists = yield this.folderManager.DirectoryExists(dbPath);
154
170
  if (exists.statusCode !== StatusCode_1.StatusCodes.OK) {
155
171
  yield this.folderManager.CreateDirectory(dbPath);
156
172
  Logger_helper_1.default.info(`Database Created: ${dbPath}`);
157
173
  }
158
- const newDB = new database_operation_1.default(DBName, dbPath);
174
+ const newDB = new database_operation_1.default(DBName, dbPath, this.cache);
159
175
  // Store database metadata in the DatabaseMap
160
176
  // Note: The DatabaseMap is now storing an object instead of a Database instance
161
177
  this.DatabaseMap.set(DBName, { DatabaseName: DBName, path: dbPath });
@@ -222,7 +238,7 @@ class AxioDB {
222
238
  return __awaiter(this, void 0, void 0, function* () {
223
239
  if (!this._initializing)
224
240
  yield this.ready;
225
- const dbPath = path_1.default.join(this.currentPATH, DBName);
241
+ const dbPath = PathSanitizer_helper_1.default.safePath(this.currentPATH, DBName);
226
242
  const exists = yield this.folderManager.DirectoryExists(dbPath);
227
243
  return exists.statusCode === StatusCode_1.StatusCodes.OK;
228
244
  });
@@ -243,7 +259,7 @@ class AxioDB {
243
259
  return __awaiter(this, void 0, void 0, function* () {
244
260
  if (!this._initializing)
245
261
  yield this.ready;
246
- const dbPath = path_1.default.join(this.currentPATH, DBName);
262
+ const dbPath = PathSanitizer_helper_1.default.safePath(this.currentPATH, DBName);
247
263
  const exists = yield this.folderManager.DirectoryExists(dbPath);
248
264
  if (exists.statusCode === StatusCode_1.StatusCodes.OK) {
249
265
  yield this.folderManager.DeleteDirectory(dbPath);
@@ -1 +1 @@
1
- {"version":3,"file":"Indexation.operation.js","sourceRoot":"","sources":["../../source/Services/Indexation.operation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Indexation.operation.js","sourceRoot":"","sources":["../../source/Services/Indexation.operation.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { ErrorInterface, SuccessInterface } from "../../config/Interfaces/Helper/response.helper.interface";
2
2
  import { SessionOptions } from "../../config/Interfaces/Transaction/transaction.interface";
3
3
  import Transaction from "./Transaction.service";
4
+ import type { InMemoryCache } from "../../Memory/memory.operation";
4
5
  /**
5
6
  * Session provides MongoDB-like session management for transactions.
6
7
  * Supports automatic retry, timeout handling, and the withTransaction pattern.
@@ -8,12 +9,13 @@ import Transaction from "./Transaction.service";
8
9
  export default class Session {
9
10
  private readonly sessionId;
10
11
  private readonly collectionPath;
12
+ private readonly cache;
11
13
  private readonly options;
12
14
  private readonly ResponseHelper;
13
15
  private readonly startTime;
14
16
  private isActive;
15
17
  private currentTransaction;
16
- constructor(collectionPath: string, options?: SessionOptions);
18
+ constructor(collectionPath: string, options: SessionOptions | undefined, cache: InMemoryCache);
17
19
  /**
18
20
  * Gets the session ID
19
21
  */
@@ -20,12 +20,13 @@ const Transaction_service_1 = __importDefault(require("./Transaction.service"));
20
20
  * Supports automatic retry, timeout handling, and the withTransaction pattern.
21
21
  */
22
22
  class Session {
23
- constructor(collectionPath, options = {}) {
23
+ constructor(collectionPath, options = {}, cache) {
24
24
  var _a, _b, _c;
25
25
  this.isActive = true;
26
26
  this.currentTransaction = null;
27
27
  this.sessionId = new UniqueGenerator_helper_1.default(20).RandomWord(true);
28
28
  this.collectionPath = collectionPath;
29
+ this.cache = cache;
29
30
  this.startTime = Date.now();
30
31
  this.ResponseHelper = new response_helper_1.default();
31
32
  // Default options
@@ -67,7 +68,7 @@ class Session {
67
68
  if (this.currentTransaction) {
68
69
  throw new Error("A transaction is already active in this session. Commit or rollback first.");
69
70
  }
70
- this.currentTransaction = new Transaction_service_1.default(this.collectionPath);
71
+ this.currentTransaction = new Transaction_service_1.default(this.collectionPath, this.cache);
71
72
  return this.currentTransaction;
72
73
  }
73
74
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"Session.service.js","sourceRoot":"","sources":["../../../source/Services/Transaction/Session.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Session.service.js","sourceRoot":"","sources":["../../../source/Services/Transaction/Session.service.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { ErrorInterface, SuccessInterface } from "../../config/Interfaces/Helper/response.helper.interface";
2
+ import type { InMemoryCache } from "../../Memory/memory.operation";
2
3
  export default class Transaction {
3
4
  private readonly collectionPath;
4
5
  private readonly transactionId;
@@ -8,6 +9,7 @@ export default class Transaction {
8
9
  private readonly Registry;
9
10
  private readonly IndexManager;
10
11
  private readonly ResponseHelper;
12
+ private readonly cache;
11
13
  private readonly Converter;
12
14
  private readonly FileManager;
13
15
  private readonly startTime;
@@ -16,7 +18,7 @@ export default class Transaction {
16
18
  private savepoints;
17
19
  private pendingWALEntries;
18
20
  private resolvedOperations;
19
- constructor(collectionPath: string);
21
+ constructor(collectionPath: string, cache: InMemoryCache);
20
22
  getId(): string;
21
23
  getCollectionPath(): string;
22
24
  /**
@@ -51,7 +51,6 @@ const FileManager_1 = __importDefault(require("../../engine/Filesystem/FileManag
51
51
  const FolderManager_1 = __importDefault(require("../../engine/Filesystem/FolderManager"));
52
52
  const Converter_helper_1 = __importDefault(require("../../Helper/Converter.helper"));
53
53
  const response_helper_1 = __importDefault(require("../../Helper/response.helper"));
54
- const memory_operation_1 = __importDefault(require("../../Memory/memory.operation"));
55
54
  const LockManager_service_1 = __importDefault(require("./LockManager.service"));
56
55
  const TransactionIndexManager_service_1 = __importDefault(require("./TransactionIndexManager.service"));
57
56
  const TransactionRegistry_service_1 = __importDefault(require("./TransactionRegistry.service"));
@@ -60,7 +59,7 @@ const WriteAheadLog_service_1 = __importDefault(require("./WriteAheadLog.service
60
59
  // suffix is what keeps this scan from matching the registry's own txn-meta.jsonl.
61
60
  const WAL_FILE_EXT = Keys_1.General.WAL_File_EXT;
62
61
  class Transaction {
63
- constructor(collectionPath) {
62
+ constructor(collectionPath, cache) {
64
63
  this.operations = [];
65
64
  this.timeoutMs = 30000;
66
65
  this.lockedDocuments = [];
@@ -70,6 +69,7 @@ class Transaction {
70
69
  this.transactionId = new UniqueGenerator_helper_1.default(15).RandomWord(true);
71
70
  this.collectionPath = collectionPath;
72
71
  this.startTime = Date.now();
72
+ this.cache = cache;
73
73
  this.WAL = new WriteAheadLog_service_1.default(collectionPath, this.transactionId);
74
74
  this.LockManager = LockManager_service_1.default.getInstance(collectionPath);
75
75
  this.Registry = new TransactionRegistry_service_1.default(collectionPath);
@@ -221,14 +221,14 @@ class Transaction {
221
221
  // leaving unrelated cached queries (e.g. a disjoint range) untouched.
222
222
  const hasInsert = this.resolvedOperations.some((op) => op.type === 'INSERT');
223
223
  if (hasInsert) {
224
- yield memory_operation_1.default.invalidateByCollection(this.collectionPath);
224
+ yield this.cache.invalidateByCollection(this.collectionPath);
225
225
  }
226
226
  else {
227
227
  const affectedDocumentIds = this.resolvedOperations
228
228
  .map((op) => op.documentId)
229
229
  .filter((id) => Boolean(id));
230
230
  if (affectedDocumentIds.length > 0) {
231
- yield memory_operation_1.default.invalidateByDocuments(this.collectionPath, affectedDocumentIds);
231
+ yield this.cache.invalidateByDocuments(this.collectionPath, affectedDocumentIds);
232
232
  }
233
233
  }
234
234
  yield this.WAL.deleteWAL();
@@ -1 +1 @@
1
- {"version":3,"file":"Transaction.service.js","sourceRoot":"","sources":["../../../source/Services/Transaction/Transaction.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Transaction.service.js","sourceRoot":"","sources":["../../../source/Services/Transaction/Transaction.service.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,14 @@ export interface AxioDBOptions {
14
14
  TLSCertPath?: string;
15
15
  /** Path to the PEM-encoded private key file matching `TLSCertPath`. Required when `TLS: true`. */
16
16
  TLSKeyPath?: string;
17
+ /** Enable the built-in InMemoryCache. Defaults to true - when false the cache stores nothing and every read goes to disk. */
18
+ Cache?: boolean;
19
+ /** Minimum cache entry lifetime in minutes. Defaults to 5. */
20
+ minTTL?: number;
21
+ /** Maximum cache entry lifetime in minutes. Defaults to 15. */
22
+ maxTTL?: number;
23
+ /** Cache housekeeping cleanup cadence and search-query retention, in seconds. Defaults to 86400 (24 hours). */
24
+ cacheClearUp?: number;
17
25
  }
18
26
  export interface FinalDatabaseInfo {
19
27
  CurrentPath: string;