@itwin/core-backend 5.14.0-dev.7 → 5.14.0-dev.9
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/lib/cjs/BriefcaseManager.d.ts +6 -0
- package/lib/cjs/BriefcaseManager.d.ts.map +1 -1
- package/lib/cjs/BriefcaseManager.js +1 -1
- package/lib/cjs/BriefcaseManager.js.map +1 -1
- package/lib/cjs/ChangesetReader.d.ts.map +1 -1
- package/lib/cjs/ChangesetReader.js +1 -0
- package/lib/cjs/ChangesetReader.js.map +1 -1
- package/lib/cjs/ChangesetReaderTypes.d.ts +2 -1
- package/lib/cjs/ChangesetReaderTypes.d.ts.map +1 -1
- package/lib/cjs/ChangesetReaderTypes.js.map +1 -1
- package/lib/cjs/IModelDb.d.ts +41 -28
- package/lib/cjs/IModelDb.d.ts.map +1 -1
- package/lib/cjs/IModelDb.js +21 -15
- package/lib/cjs/IModelDb.js.map +1 -1
- package/lib/cjs/IpcHost.d.ts.map +1 -1
- package/lib/cjs/IpcHost.js +51 -17
- package/lib/cjs/IpcHost.js.map +1 -1
- package/lib/cjs/TxnManager.js +8 -8
- package/lib/cjs/TxnManager.js.map +1 -1
- package/lib/cjs/internal/IntegrityCheck.d.ts +57 -0
- package/lib/cjs/internal/IntegrityCheck.d.ts.map +1 -1
- package/lib/cjs/internal/IntegrityCheck.js.map +1 -1
- package/lib/esm/BriefcaseManager.d.ts +6 -0
- package/lib/esm/BriefcaseManager.d.ts.map +1 -1
- package/lib/esm/BriefcaseManager.js +1 -1
- package/lib/esm/BriefcaseManager.js.map +1 -1
- package/lib/esm/ChangesetReader.d.ts.map +1 -1
- package/lib/esm/ChangesetReader.js +1 -0
- package/lib/esm/ChangesetReader.js.map +1 -1
- package/lib/esm/ChangesetReaderTypes.d.ts +2 -1
- package/lib/esm/ChangesetReaderTypes.d.ts.map +1 -1
- package/lib/esm/ChangesetReaderTypes.js.map +1 -1
- package/lib/esm/IModelDb.d.ts +41 -28
- package/lib/esm/IModelDb.d.ts.map +1 -1
- package/lib/esm/IModelDb.js +21 -15
- package/lib/esm/IModelDb.js.map +1 -1
- package/lib/esm/IpcHost.d.ts.map +1 -1
- package/lib/esm/IpcHost.js +52 -18
- package/lib/esm/IpcHost.js.map +1 -1
- package/lib/esm/TxnManager.js +8 -8
- package/lib/esm/TxnManager.js.map +1 -1
- package/lib/esm/internal/IntegrityCheck.d.ts +57 -0
- package/lib/esm/internal/IntegrityCheck.d.ts.map +1 -1
- package/lib/esm/internal/IntegrityCheck.js.map +1 -1
- package/lib/esm/test/annotations/FrameGeometry.test.js +1 -1
- package/lib/esm/test/annotations/FrameGeometry.test.js.map +1 -1
- package/lib/esm/test/hubaccess/BriefcaseManager.test.js +65 -1
- package/lib/esm/test/hubaccess/BriefcaseManager.test.js.map +1 -1
- package/lib/esm/test/hubaccess/SemanticRebase.test.js +189 -0
- package/lib/esm/test/hubaccess/SemanticRebase.test.js.map +1 -1
- package/lib/esm/test/standalone/ChangesetReader.test.js.map +1 -1
- package/package.json +13 -13
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChangesetReader.js","sourceRoot":"","sources":["../../src/ChangesetReader.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module ECDb\r\n */\r\nimport { DbOpcode, Id64String, IModelStatus } from \"@itwin/core-bentley\";\r\nimport { IModelError } from \"@itwin/core-common\";\r\nimport { IModelDb } from \"./IModelDb\";\r\nimport { IModelNative } from \"./internal/NativePlatform\";\r\nimport { _nativeDb } from \"./internal/Symbols\";\r\nimport { IModelJsNative } from \"@bentley/imodeljs-native\";\r\nimport { ChangeInstance, ChangesetReaderArgs, ChangeSource, PropertyFilter, RowFormatOptions } from \"./ChangesetReaderTypes\";\r\nimport { AnyDb, SqliteChangeOp } from \"./SqliteChangesetReader\";\r\n\r\n\r\n// ---------------------------------------------------------------------------\r\n// ChangesetReader\r\n// ---------------------------------------------------------------------------\r\n\r\n/**\r\n * Reads EC-typed changeset data natively from a changeset file, changeset group,\r\n * in-memory transaction, or local un-pushed changes.\r\n *\r\n * Implements [ChangeSource]($backend) so rows can be fed directly into\r\n * [PartialChangeUnifier]($backend) to merge partial (per-table) instances into\r\n * complete EC instances.\r\n *\r\n * When the current row is a non-EC internal SQLite table, [[isECTable]] is `false`\r\n * and both [[inserted]] and [[deleted]] remain `undefined`.\r\n *\r\n * @note The native reader operates one SQLite table-row at a time. Multi-table EC\r\n * instances must be merged using [PartialChangeUnifier]($backend).\r\n * @beta\r\n */\r\nexport class ChangesetReader implements Disposable, ChangeSource {\r\n private static readonly defaultSpillThresholdInBytes = 50 * 1024 * 1024; // 50 MiB\r\n private readonly _nativeReader: IModelJsNative.ChangesetReader = new IModelNative.platform.ChangesetReader();\r\n // Internal options — keep ECClassId as raw Id so the unifier can use it as-is.\r\n private _rowOptions?: RowFormatOptions;\r\n private _batchSizeOverride?: number;\r\n private _propFilter: PropertyFilter = PropertyFilter.All;\r\n private _changeIndex = 0;\r\n /** Rows fetched in the most recent native batch call. */\r\n private _cache: IModelJsNative.ChangesetRowData[] = [];\r\n /**\r\n * Index of the current row in `_cache`.\r\n * Equals `_cache.length` (i.e. out-of-bounds) when no row is active:\r\n * initial state, after exhaustion, or after close().\r\n */\r\n private _cacheIndex = 0;\r\n /** Cached result of the `inserted` getter for the current row. `undefined` when not yet computed or not applicable. */\r\n private _cachedInserted: ChangeInstance | undefined = undefined;\r\n /** Cached result of the `deleted` getter for the current row. `undefined` when not yet computed or not applicable. */\r\n private _cachedDeleted: ChangeInstance | undefined = undefined;\r\n\r\n /** The db used for EC schema resolution. */\r\n public readonly db: AnyDb;\r\n\r\n /** Returns the active cached row, throwing if no row is current.\r\n * @internal */\r\n private get _currentRow(): IModelJsNative.ChangesetRowData {\r\n if (this._cacheIndex >= this._cache.length)\r\n throw new IModelError(IModelStatus.BadRequest, \"ChangesetReader: no current row — call step() first.\");\r\n return this._cache[this._cacheIndex];\r\n }\r\n\r\n /** Returns the batch size to use for native step() calls based on the active property filter.\r\n * @internal */\r\n private get _batchSize(): number {\r\n if (this._batchSizeOverride !== undefined) return this._batchSizeOverride;\r\n if (this._propFilter === PropertyFilter.InstanceKey) return 100;\r\n if (this._propFilter === PropertyFilter.BisCoreElement) return 20; // because BisCore Element class do not contain any GeomStream property so abbreviateBlobs is not relevant here\r\n if (this._rowOptions?.abbreviateBlobs === false) return 5;\r\n return 10; // PropertyFilter.All\r\n }\r\n\r\n /**\r\n * `true` when the current row belongs to an EC-mapped table.\r\n * Valid only after a successful call to [[step]].\r\n * @throws [[IModelError]] if called before a successful [[step]] call.\r\n * @beta\r\n */\r\n public get isECTable(): boolean { return this._currentRow.metadata.isECTable; }\r\n\r\n /**\r\n * Name of the SQLite table for the current change row.\r\n * Valid only after a successful call to [[step]].\r\n * @throws [[IModelError]] if called before a successful [[step]] call.\r\n * @beta\r\n */\r\n public get tableName(): string { return this._currentRow.metadata.tableName; }\r\n\r\n /**\r\n * `true` when the current change was applied indirectly\r\n * Valid only after a successful call to [[step]].\r\n * @throws [[IModelError]] if called before a successful [[step]] call.\r\n * @beta\r\n */\r\n public get isIndirectChange(): boolean { return this._currentRow.metadata.isIndirectChange; }\r\n\r\n /**\r\n * Post-change (inserted or updated-new) EC instance, computed lazily after each [[step]] call.\r\n * `undefined` when the current row is a Delete or a non-EC table row or [[step]] returned false.\r\n * For UPDATE,inserted instances indicate the new state of the instance after the change has been applied and\r\n * deleted instances indicate the old state of the instance before the change has been applied.\r\n * For INSERT, inserted instances indicate the new state of the instance after the change has been applied and deleted instances are undefined.\r\n * For DELETE, deleted instances indicate the old state of the instance before the change has been applied and inserted instances are undefined.\r\n * @beta\r\n */\r\n public get inserted(): ChangeInstance | undefined {\r\n if (this._cachedInserted !== undefined) return this._cachedInserted;\r\n const row = this._cacheIndex < this._cache.length ? this._cache[this._cacheIndex] : undefined;\r\n if (!row || !row.newValues)\r\n return undefined;\r\n const op = this.op;\r\n return (this._cachedInserted = {\r\n ...row.newValues.data,\r\n $meta: {\r\n op,\r\n tables: [row.metadata.tableName],\r\n changeIndexes: [this._changeIndex],\r\n stage: \"New\",\r\n instanceKey: row.newValues.key,\r\n propFilter: this._propFilter,\r\n changeFetchedPropNames: row.newValues.changeFetchedPropNames,\r\n rowOptions: this._rowOptions,\r\n isIndirectChange: row.metadata.isIndirectChange,\r\n },\r\n });\r\n }\r\n\r\n /**\r\n * Pre-change (deleted or updated-old) EC instance, computed lazily after each [[step]] call.\r\n * `undefined` when the current row is an Insert or a non-EC table row or [[step]] returned false.\r\n * @beta\r\n */\r\n public get deleted(): ChangeInstance | undefined {\r\n if (this._cachedDeleted !== undefined) return this._cachedDeleted;\r\n const row = this._cacheIndex < this._cache.length ? this._cache[this._cacheIndex] : undefined;\r\n if (!row || !row.oldValues)\r\n return undefined;\r\n const op = this.op;\r\n return (this._cachedDeleted = {\r\n ...row.oldValues.data,\r\n $meta: {\r\n op,\r\n tables: [row.metadata.tableName],\r\n changeIndexes: [this._changeIndex],\r\n stage: \"Old\",\r\n instanceKey: row.oldValues.key,\r\n propFilter: this._propFilter,\r\n changeFetchedPropNames: row.oldValues.changeFetchedPropNames,\r\n rowOptions: this._rowOptions,\r\n isIndirectChange: row.metadata.isIndirectChange,\r\n },\r\n });\r\n }\r\n\r\n // Private — callers use static factory methods.\r\n private constructor(db: AnyDb) {\r\n this.db = db;\r\n }\r\n\r\n /** Map public RowFormatOptions to the native adaptor options.\r\n * @internal */\r\n private toNativeRowOptions(opts: RowFormatOptions): IModelJsNative.ECSqlRowAdaptorOptions {\r\n return {\r\n abbreviateBlobs: opts.abbreviateBlobs,\r\n classIdsToClassNames: opts.classIdsToClassNames,\r\n useJsName: opts.useJsName,\r\n };\r\n }\r\n\r\n // ---------------------------------------------------------------------------\r\n // Static factory methods\r\n // ---------------------------------------------------------------------------\r\n\r\n /**\r\n * Open a changeset file from disk.\r\n * @param args.fileName Absolute path to the changeset file.\r\n * @param args.db Database at or after the changeset's ending state, used for schema resolution.\r\n * @param args.invert When `true`, invert all operations (Insert↔Delete, New↔Old).\r\n * @param args.rowOptions Row adaptor options controlling how EC property values are formatted.\r\n * @param args.propFilter Controls which properties are included. Defaults to `All`.\r\n * @throws if the native layer fails to open the file.\r\n * @beta\r\n */\r\n public static openFile(args: { readonly fileName: string } & ChangesetReaderArgs): ChangesetReader {\r\n const reader = new ChangesetReader(args.db);\r\n reader._rowOptions = args.rowOptions;\r\n const propFilter = args.propFilter ?? PropertyFilter.All;\r\n reader._propFilter = propFilter;\r\n try {\r\n reader._nativeReader.openFile(args.db[_nativeDb], args.fileName, args.invert ?? false, reader._propFilter);\r\n }\r\n catch (e) {\r\n reader.handleCloseErrorWhileOpening(e);\r\n throw e;\r\n }\r\n return reader;\r\n }\r\n\r\n /**\r\n * Concatenate multiple changeset files and read them as a single logical stream.\r\n * @param args.changesetFiles Ordered list of changeset file paths.\r\n * @param args.db Database with schema at or ahead of the last changeset.\r\n * @param args.invert When `true`, invert all operations (Insert↔Delete, New↔Old).\r\n * @param args.rowOptions Row adaptor options controlling how EC property values are formatted.\r\n * @param args.propFilter Controls which properties are included. Defaults to `All`.\r\n * @param args.spillThresholdInBytes When the total size of the changeset data in the change group exceeds this threshold (in bytes),\r\n * the reader writes the data to a temporary file on disk and streams it from there instead of buffering everything in memory.\r\n * This keeps peak memory usage bounded, making the API suitable for processing large changeset groups under low-memory conditions.\r\n * Defaults to 50 MiB.\r\n * @throws if `changesetFiles` is empty, or if the native layer fails to open\r\n * the group.\r\n * @beta\r\n */\r\n public static openGroup(args: { readonly changesetFiles: string[], spillThresholdInBytes?: number } & ChangesetReaderArgs): ChangesetReader {\r\n if (args.changesetFiles.length === 0)\r\n throw new IModelError(IModelStatus.BadArg, \"changesetFiles must contain at least one file.\");\r\n const reader = new ChangesetReader(args.db);\r\n reader._rowOptions = args.rowOptions;\r\n const propFilter = args.propFilter ?? PropertyFilter.All;\r\n reader._propFilter = propFilter;\r\n try {\r\n reader._nativeReader.openGroup(args.db[_nativeDb], args.changesetFiles, args.invert ?? false, reader._propFilter, args.spillThresholdInBytes ?? this.defaultSpillThresholdInBytes);\r\n }\r\n catch (e) {\r\n reader.handleCloseErrorWhileOpening(e);\r\n throw e;\r\n }\r\n return reader;\r\n }\r\n\r\n /**\r\n * Read pending (not yet pushed) local changes from an open IModelDb.\r\n * @param args.db Must be an [IModelDb]($backend) (not [ECDb]($backend)).\r\n * @param args.includeInMemoryChanges Also include in-memory (not yet saved to disk) changes.\r\n * @param args.invert When `true`, invert all operations (Insert↔Delete, New↔Old).\r\n * @param args.rowOptions Row adaptor options controlling how EC property values are formatted.\r\n * @param args.propFilter Controls which properties are included. Defaults to `All`.\r\n * @param args.spillThresholdInBytes When the total size of all local un-pushed saved changes exceeds this threshold (in bytes),\r\n * the reader writes the data to a temporary file on disk and streams it from there instead of buffering everything in memory.\r\n * This keeps peak memory usage bounded, making the API suitable for iModels with large local change backlogs under low-memory conditions.\r\n * Defaults to 50 MiB.\r\n * @throws if the native layer\r\n * fails to open the local changes.\r\n * @beta\r\n */\r\n public static openLocalChanges(\r\n args: Omit<ChangesetReaderArgs, \"db\"> & { db: IModelDb; includeInMemoryChanges?: boolean, spillThresholdInBytes?: number },\r\n ): ChangesetReader {\r\n const reader = new ChangesetReader(args.db);\r\n reader._rowOptions = args.rowOptions;\r\n const propFilter = args.propFilter ?? PropertyFilter.All;\r\n reader._propFilter = propFilter;\r\n try {\r\n reader._nativeReader.openLocalChanges(args.db[_nativeDb], args.includeInMemoryChanges ?? false, args.invert ?? false, reader._propFilter, args.spillThresholdInBytes ?? this.defaultSpillThresholdInBytes);\r\n } catch (e) {\r\n reader.handleCloseErrorWhileOpening(e);\r\n throw e;\r\n }\r\n return reader;\r\n }\r\n\r\n /**\r\n * Read the in-memory (not yet saved to disk) changes of an open IModelDb.\r\n * @param args.db Must be an [IModelDb]($backend).\r\n * @param args.invert When `true`, invert all operations (Insert↔Delete, New↔Old).\r\n * @param args.rowOptions Row adaptor options controlling how EC property values are formatted.\r\n * @param args.propFilter Controls which properties are included. Defaults to `All`.\r\n * @param args.spillThresholdInBytes When the total size of the in-memory (unsaved) change data exceeds this threshold (in bytes),\r\n * the reader writes the data to a temporary file on disk and streams it from there instead of buffering everything in memory.\r\n * This keeps peak memory usage bounded, making the API suitable for large in-memory transactions under low-memory conditions.\r\n * Defaults to 50 MiB.\r\n * @throws if the native layer encounters an error while opening the in-memory changes.\r\n * @beta\r\n */\r\n public static openInMemoryChanges(\r\n args: Omit<ChangesetReaderArgs, \"db\"> & { db: IModelDb, spillThresholdInBytes?: number },\r\n ): ChangesetReader {\r\n const reader = new ChangesetReader(args.db);\r\n reader._rowOptions = args.rowOptions;\r\n const propFilter = args.propFilter ?? PropertyFilter.All;\r\n reader._propFilter = propFilter;\r\n try {\r\n reader._nativeReader.openInMemoryChanges(args.db[_nativeDb], args.invert ?? false, reader._propFilter, args.spillThresholdInBytes ?? this.defaultSpillThresholdInBytes);\r\n } catch (e) {\r\n reader.handleCloseErrorWhileOpening(e);\r\n throw e;\r\n }\r\n return reader;\r\n }\r\n\r\n /**\r\n * Read a single saved transaction by its id.\r\n * @param args.db Must be an [IModelDb]($backend) ([ECDb]($backend) does not support transactions).\r\n * @param args.txnId The id of the saved transaction to read.\r\n * @param args.invert When `true`, invert all operations (Insert↔Delete, New↔Old).\r\n * @param args.rowOptions Row adaptor options controlling how EC property values are formatted.\r\n * @param args.propFilter Controls which properties are included. Defaults to `All`.\r\n * @param args.spillThresholdInBytes When the total size of the transaction's change data exceeds this threshold (in bytes),\r\n * the reader writes the data to a temporary file on disk and streams it from there instead of buffering everything in memory.\r\n * This keeps peak memory usage bounded, making the API suitable for large transactions under low-memory conditions.\r\n * Defaults to 50 MiB.\r\n * @throws if `txnId` is not found, or\r\n * the native layer fails to open the transaction data.\r\n * @beta\r\n */\r\n public static openTxn(\r\n args: Omit<ChangesetReaderArgs, \"db\"> & { db: IModelDb; txnId: Id64String, spillThresholdInBytes?: number },\r\n ): ChangesetReader {\r\n const reader = new ChangesetReader(args.db);\r\n reader._rowOptions = args.rowOptions;\r\n const propFilter = args.propFilter ?? PropertyFilter.All;\r\n reader._propFilter = propFilter;\r\n try {\r\n reader._nativeReader.openTxn(args.db[_nativeDb], args.txnId, args.invert ?? false, reader._propFilter, args.spillThresholdInBytes ?? this.defaultSpillThresholdInBytes);\r\n } catch (e) {\r\n reader.handleCloseErrorWhileOpening(e);\r\n throw e;\r\n }\r\n return reader;\r\n }\r\n\r\n /** Throws if [[step]] has already been called, preventing filter/mode changes mid-iteration.\r\n * @internal */\r\n private throwIfAlreadyStepped(): void {\r\n if (this._changeIndex > 0)\r\n throw new IModelError(IModelStatus.BadRequest, \"ChangesetReader: filters and strict mode and batch size must be configured before the first call to step().\");\r\n }\r\n\r\n /** Handle errors that occur while auto closing the reader if there is also an error while opening the reader */\r\n private handleCloseErrorWhileOpening(e: unknown): void {\r\n try {\r\n this.close();\r\n } catch (closeError) {\r\n throw new IModelError(IModelStatus.BadArg, `Failed to open ChangesetReader with error ${e instanceof Error ? e.message : String(e)}.\r\n Additionally, that triggered an automatic closure of the reader\r\n releasing native resources which also failed with failure ${closeError instanceof Error ? closeError.message : String(closeError)}.\r\n Check native error logs for more details.`);\r\n }\r\n }\r\n\r\n /**\r\n * Set the number of rows to fetch and cache while stepping.\r\n * This is an advanced option that can be used to tune performance for large changesets.\r\n * Increasing the batch size improves throughput at the cost of higher peak memory; decreasing it keeps memory consumption lower.\r\n *\r\n * Default batch sizes when `setBatchSize` is not called:\r\n * - `InstanceKey` filter: **100**.\r\n * - `BisCoreElement` filter (any `abbreviateBlobs` setting): **20**.\r\n * - `All` filter, `abbreviateBlobs: false`: **5**.\r\n * - `All` filter (blobs abbreviated or unset): **10**.\r\n *\r\n * @param batchSize Number of rows to fetch and cache while stepping. Must be a positive integer.\r\n * @throws [[IModelError]] if [[step]] has already been called successfully, or if `batchSize` is not a positive integer.\r\n * @beta\r\n */\r\n public setBatchSize(batchSize: number): void {\r\n this.throwIfAlreadyStepped();\r\n if (!Number.isInteger(batchSize) || batchSize <= 0)\r\n throw new IModelError(IModelStatus.BadArg, \"ChangesetReader: batchSize must be a positive integer.\");\r\n this._batchSizeOverride = batchSize;\r\n }\r\n\r\n // ---------------------------------------------------------------------------\r\n // Filtering\r\n // ---------------------------------------------------------------------------\r\n\r\n /**\r\n * Restrict iteration to changes from the named SQLite tables.\r\n * That means the rows for changes from other tables will be skipped entirely and won't be visible through the reader.\r\n * @param tableNames SQLite table names to include.\r\n * Note: Table names must be provided in the correct case for proper filtering.\r\n * @throws if [[step]] has already been called and the reader successfully stepped at least once(i.e. returned true for a step() call) or if the native layer encounters an error while setting the filter.\r\n * @beta\r\n */\r\n public setTableNameFilters(tableNames: Set<string>): void {\r\n this.throwIfAlreadyStepped();\r\n this._nativeReader.setTableNameFilters(Array.from(tableNames));\r\n }\r\n\r\n /**\r\n * Restrict iteration to changes with the given operation types.\r\n * That means the rows for changes with other operation types will be skipped entirely and won't be visible through the reader.\r\n * @param ops Operations to include.\r\n * @throws if [[step]] has already been called and the reader successfully stepped at least once(i.e. returned true for a step() call) or if the native layer encounters an error while setting the filter.\r\n * @beta\r\n */\r\n public setOpCodeFilters(ops: Set<SqliteChangeOp>): void {\r\n this.throwIfAlreadyStepped();\r\n this._nativeReader.setOpCodeFilters(Array.from(ops));\r\n }\r\n\r\n /**\r\n * Restrict iteration to changes for the given EC class names.\r\n * That means the rows for changes from other EC classes will be skipped entirely and won't be visible through the reader.\r\n * @param classNames EC class names to include. The classNames should be in the full name format(i.e. \"SchemaName:ClassName\").\r\n * Note: Schema names and class names must be provided in the correct case for proper filtering. Derived classes are not automatically included, so they must be specified explicitly if needed.\r\n * @throws if [[step]] has already been called and the reader successfully stepped at least once(i.e. returned true for a step() call) or if the native layer encounters an error while setting the filter.\r\n * @beta\r\n */\r\n public setClassNameFilters(classNames: Set<string>): void {\r\n this.throwIfAlreadyStepped();\r\n this._nativeReader.setClassNameFilters(Array.from(classNames));\r\n }\r\n\r\n /**\r\n * Remove the table-name filters\r\n * @throws if [[step]] has already been called and the reader successfully stepped at least once(i.e. returned true for a step() call) or if the native layer encounters an error.\r\n * @beta\r\n */\r\n public clearTableNameFilters(): void {\r\n this.throwIfAlreadyStepped();\r\n this._nativeReader.clearTableNameFilters();\r\n }\r\n\r\n /**\r\n * Remove the op-code filters\r\n * @throws if [[step]] has already been called and the reader successfully stepped at least once(i.e. returned true for a step() call) or if the native layer encounters an error.\r\n * @beta\r\n */\r\n public clearOpCodeFilters(): void {\r\n this.throwIfAlreadyStepped();\r\n this._nativeReader.clearOpCodeFilters();\r\n }\r\n\r\n /**\r\n * Remove the class-name filters\r\n * @throws if [[step]] has already been called and the reader successfully stepped at least once(i.e. returned true for a step() call) or if the native layer encounters an error.\r\n * @beta\r\n */\r\n public clearClassNameFilters(): void {\r\n this.throwIfAlreadyStepped();\r\n this._nativeReader.clearClassNameFilters();\r\n }\r\n\r\n // ---------------------------------------------------------------------------\r\n // Strict mode\r\n // ---------------------------------------------------------------------------\r\n\r\n /**\r\n * Enable strict mode on the reader.\r\n *\r\n * Strict mode affects how the reader handles a **column-count mismatch** between a change\r\n * record and the corresponding live database table. Such a mismatch can occur when columns\r\n * have been added to a table after the changeset was created.\r\n *\r\n * When strict mode is **enabled**: if the number of columns recorded in a change row differs\r\n * from the number of columns currently present in the live table, the reader throws an error\r\n * instead of processing that row.\r\n *\r\n * Use strict mode when you need to be certain that every change row is interpreted against\r\n * exactly the schema that was in effect when the changeset was written.\r\n *\r\n * @see [[disableStrictMode]] — the default (lenient) behaviour.\r\n * @throws if [[step]] has already been called and the reader successfully stepped at least once(i.e. returned true for a step() call) or if the native layer encounters an error.\r\n * @beta\r\n */\r\n public enableStrictMode(): void {\r\n this.throwIfAlreadyStepped();\r\n this._nativeReader.enableStrictMode();\r\n }\r\n\r\n /**\r\n * Disable strict mode on the reader (this is the default).\r\n *\r\n * When strict mode is **disabled**: if the number of columns recorded in a change row differs\r\n * from the number of columns currently present in the live table, the reader takes the\r\n * **minimum** of the two column counts and proceeds normally with that subset. This is safe\r\n * because SQLite only ever appends new columns at the end of a table and never removes them —\r\n * so older change records simply lack the trailing columns that were added later, and those\r\n * missing columns are silently ignored.\r\n *\r\n * @see [[enableStrictMode]] — throw on column-count mismatches instead.\r\n * @throws if [[step]] has already been called and the reader successfully stepped at least once(i.e. returned true for a step() call) or if the native layer encounters an error.\r\n * @beta\r\n */\r\n public disableStrictMode(): void {\r\n this.throwIfAlreadyStepped();\r\n this._nativeReader.disableStrictMode();\r\n }\r\n\r\n // ---------------------------------------------------------------------------\r\n // Iteration\r\n // ---------------------------------------------------------------------------\r\n\r\n /**\r\n * Advance to the next change.\r\n * @returns `true` while positioned on a valid change; `false` when the stream is exhausted.\r\n * @throws if the native layer encounters an error while reading or decoding\r\n * the next change.\r\n * @beta\r\n */\r\n public step(): boolean {\r\n this._cachedInserted = undefined;\r\n this._cachedDeleted = undefined;\r\n if (this._cacheIndex + 1 < this._cache.length) {\r\n // Still have rows in cache — advance the pointer\r\n this._cacheIndex++;\r\n } else {\r\n // Cache empty or fully consumed — fetch next batch from native\r\n const nativeRowOpts = this._rowOptions ? this.toNativeRowOptions(this._rowOptions) : {};\r\n this._cache = this._nativeReader.step(this._batchSize, nativeRowOpts);\r\n this._cacheIndex = 0;\r\n if (this._cache.length === 0) return false;\r\n }\r\n this._changeIndex++;\r\n return true;\r\n }\r\n\r\n /**\r\n * SQLite opcode of the current change.\r\n * Valid only after a successful call to [[step]].\r\n * @throws [[IModelError]] if called before a successful [[step]] call.\r\n * @beta\r\n */\r\n public get op(): SqliteChangeOp {\r\n const opCode = this._currentRow.metadata.opCode;\r\n return opCode === DbOpcode.Insert ? \"Inserted\"\r\n : opCode === DbOpcode.Update ? \"Updated\"\r\n : \"Deleted\";\r\n }\r\n\r\n // ---------------------------------------------------------------------------\r\n // Lifecycle\r\n // ---------------------------------------------------------------------------\r\n\r\n /**\r\n * Close the reader and release all native resources.\r\n *\r\n * @throws if the native layer encounters an error during cleanup. Native resources\r\n * are not fully released when this throws — check the native error\r\n * logs for details.\r\n * @beta\r\n */\r\n public close(): void {\r\n this._changeIndex = 0;\r\n this._cache = [];\r\n this._cacheIndex = 0;\r\n this._cachedInserted = undefined;\r\n this._cachedDeleted = undefined;\r\n this._nativeReader.close();\r\n }\r\n\r\n /**\r\n * Implements the `Disposable` contract — delegates to [[close]].\r\n *\r\n * @throws if the native layer fails to release its resources (re-thrown from [[close]]).\r\n * @beta\r\n */\r\n public [Symbol.dispose](): void {\r\n this.close();\r\n }\r\n}\r\n\r\n\r\n"]}
|
|
1
|
+
{"version":3,"file":"ChangesetReader.js","sourceRoot":"","sources":["../../src/ChangesetReader.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module ECDb\r\n */\r\nimport { DbOpcode, Id64String, IModelStatus } from \"@itwin/core-bentley\";\r\nimport { IModelError } from \"@itwin/core-common\";\r\nimport { IModelDb } from \"./IModelDb\";\r\nimport { IModelNative } from \"./internal/NativePlatform\";\r\nimport { _nativeDb } from \"./internal/Symbols\";\r\nimport { IModelJsNative } from \"@bentley/imodeljs-native\";\r\nimport { ChangeInstance, ChangesetReaderArgs, ChangeSource, PropertyFilter, RowFormatOptions } from \"./ChangesetReaderTypes\";\r\nimport { AnyDb, SqliteChangeOp } from \"./SqliteChangesetReader\";\r\n\r\n\r\n// ---------------------------------------------------------------------------\r\n// ChangesetReader\r\n// ---------------------------------------------------------------------------\r\n\r\n/**\r\n * Reads EC-typed changeset data natively from a changeset file, changeset group,\r\n * in-memory transaction, or local un-pushed changes.\r\n *\r\n * Implements [ChangeSource]($backend) so rows can be fed directly into\r\n * [PartialChangeUnifier]($backend) to merge partial (per-table) instances into\r\n * complete EC instances.\r\n *\r\n * When the current row is a non-EC internal SQLite table, [[isECTable]] is `false`\r\n * and both [[inserted]] and [[deleted]] remain `undefined`.\r\n *\r\n * @note The native reader operates one SQLite table-row at a time. Multi-table EC\r\n * instances must be merged using [PartialChangeUnifier]($backend).\r\n * @beta\r\n */\r\nexport class ChangesetReader implements Disposable, ChangeSource {\r\n private static readonly defaultSpillThresholdInBytes = 50 * 1024 * 1024; // 50 MiB\r\n private readonly _nativeReader: IModelJsNative.ChangesetReader = new IModelNative.platform.ChangesetReader();\r\n // Internal options — keep ECClassId as raw Id so the unifier can use it as-is.\r\n private _rowOptions?: RowFormatOptions;\r\n private _batchSizeOverride?: number;\r\n private _propFilter: PropertyFilter = PropertyFilter.All;\r\n private _changeIndex = 0;\r\n /** Rows fetched in the most recent native batch call. */\r\n private _cache: IModelJsNative.ChangesetRowData[] = [];\r\n /**\r\n * Index of the current row in `_cache`.\r\n * Equals `_cache.length` (i.e. out-of-bounds) when no row is active:\r\n * initial state, after exhaustion, or after close().\r\n */\r\n private _cacheIndex = 0;\r\n /** Cached result of the `inserted` getter for the current row. `undefined` when not yet computed or not applicable. */\r\n private _cachedInserted: ChangeInstance | undefined = undefined;\r\n /** Cached result of the `deleted` getter for the current row. `undefined` when not yet computed or not applicable. */\r\n private _cachedDeleted: ChangeInstance | undefined = undefined;\r\n\r\n /** The db used for EC schema resolution. */\r\n public readonly db: AnyDb;\r\n\r\n /** Returns the active cached row, throwing if no row is current.\r\n * @internal */\r\n private get _currentRow(): IModelJsNative.ChangesetRowData {\r\n if (this._cacheIndex >= this._cache.length)\r\n throw new IModelError(IModelStatus.BadRequest, \"ChangesetReader: no current row — call step() first.\");\r\n return this._cache[this._cacheIndex];\r\n }\r\n\r\n /** Returns the batch size to use for native step() calls based on the active property filter.\r\n * @internal */\r\n private get _batchSize(): number {\r\n if (this._batchSizeOverride !== undefined) return this._batchSizeOverride;\r\n if (this._propFilter === PropertyFilter.InstanceKey) return 100;\r\n if (this._propFilter === PropertyFilter.BisCoreElement) return 20; // because BisCore Element class do not contain any GeomStream property so abbreviateBlobs is not relevant here\r\n if (this._rowOptions?.abbreviateBlobs === false) return 5;\r\n return 10; // PropertyFilter.All\r\n }\r\n\r\n /**\r\n * `true` when the current row belongs to an EC-mapped table.\r\n * Valid only after a successful call to [[step]].\r\n * @throws [[IModelError]] if called before a successful [[step]] call.\r\n * @beta\r\n */\r\n public get isECTable(): boolean { return this._currentRow.metadata.isECTable; }\r\n\r\n /**\r\n * Name of the SQLite table for the current change row.\r\n * Valid only after a successful call to [[step]].\r\n * @throws [[IModelError]] if called before a successful [[step]] call.\r\n * @beta\r\n */\r\n public get tableName(): string { return this._currentRow.metadata.tableName; }\r\n\r\n /**\r\n * `true` when the current change was applied indirectly\r\n * Valid only after a successful call to [[step]].\r\n * @throws [[IModelError]] if called before a successful [[step]] call.\r\n * @beta\r\n */\r\n public get isIndirectChange(): boolean { return this._currentRow.metadata.isIndirectChange; }\r\n\r\n /**\r\n * Post-change (inserted or updated-new) EC instance, computed lazily after each [[step]] call.\r\n * `undefined` when the current row is a Delete or a non-EC table row or [[step]] returned false.\r\n * For UPDATE,inserted instances indicate the new state of the instance after the change has been applied and\r\n * deleted instances indicate the old state of the instance before the change has been applied.\r\n * For INSERT, inserted instances indicate the new state of the instance after the change has been applied and deleted instances are undefined.\r\n * For DELETE, deleted instances indicate the old state of the instance before the change has been applied and inserted instances are undefined.\r\n * @beta\r\n */\r\n public get inserted(): ChangeInstance | undefined {\r\n if (this._cachedInserted !== undefined) return this._cachedInserted;\r\n const row = this._cacheIndex < this._cache.length ? this._cache[this._cacheIndex] : undefined;\r\n if (!row || !row.newValues)\r\n return undefined;\r\n const op = this.op;\r\n return (this._cachedInserted = {\r\n ...row.newValues.data,\r\n $meta: {\r\n op,\r\n tables: [row.metadata.tableName],\r\n changeIndexes: [this._changeIndex],\r\n stage: \"New\",\r\n instanceKey: row.newValues.key,\r\n propFilter: this._propFilter,\r\n changeFetchedPropNames: row.newValues.changeFetchedPropNames,\r\n rowOptions: this._rowOptions,\r\n isIndirectChange: row.metadata.isIndirectChange,\r\n },\r\n });\r\n }\r\n\r\n /**\r\n * Pre-change (deleted or updated-old) EC instance, computed lazily after each [[step]] call.\r\n * `undefined` when the current row is an Insert or a non-EC table row or [[step]] returned false.\r\n * @beta\r\n */\r\n public get deleted(): ChangeInstance | undefined {\r\n if (this._cachedDeleted !== undefined) return this._cachedDeleted;\r\n const row = this._cacheIndex < this._cache.length ? this._cache[this._cacheIndex] : undefined;\r\n if (!row || !row.oldValues)\r\n return undefined;\r\n const op = this.op;\r\n return (this._cachedDeleted = {\r\n ...row.oldValues.data,\r\n $meta: {\r\n op,\r\n tables: [row.metadata.tableName],\r\n changeIndexes: [this._changeIndex],\r\n stage: \"Old\",\r\n instanceKey: row.oldValues.key,\r\n propFilter: this._propFilter,\r\n changeFetchedPropNames: row.oldValues.changeFetchedPropNames,\r\n rowOptions: this._rowOptions,\r\n isIndirectChange: row.metadata.isIndirectChange,\r\n },\r\n });\r\n }\r\n\r\n // Private — callers use static factory methods.\r\n private constructor(db: AnyDb) {\r\n this.db = db;\r\n }\r\n\r\n /** Map public RowFormatOptions to the native adaptor options.\r\n * @internal */\r\n private toNativeRowOptions(opts: RowFormatOptions): IModelJsNative.ECSqlRowAdaptorOptions {\r\n return {\r\n abbreviateBlobs: opts.abbreviateBlobs,\r\n classIdsToClassNames: opts.classIdsToClassNames,\r\n // eslint-disable-next-line @typescript-eslint/no-deprecated\r\n useJsName: opts.useJsName,\r\n };\r\n }\r\n\r\n // ---------------------------------------------------------------------------\r\n // Static factory methods\r\n // ---------------------------------------------------------------------------\r\n\r\n /**\r\n * Open a changeset file from disk.\r\n * @param args.fileName Absolute path to the changeset file.\r\n * @param args.db Database at or after the changeset's ending state, used for schema resolution.\r\n * @param args.invert When `true`, invert all operations (Insert↔Delete, New↔Old).\r\n * @param args.rowOptions Row adaptor options controlling how EC property values are formatted.\r\n * @param args.propFilter Controls which properties are included. Defaults to `All`.\r\n * @throws if the native layer fails to open the file.\r\n * @beta\r\n */\r\n public static openFile(args: { readonly fileName: string } & ChangesetReaderArgs): ChangesetReader {\r\n const reader = new ChangesetReader(args.db);\r\n reader._rowOptions = args.rowOptions;\r\n const propFilter = args.propFilter ?? PropertyFilter.All;\r\n reader._propFilter = propFilter;\r\n try {\r\n reader._nativeReader.openFile(args.db[_nativeDb], args.fileName, args.invert ?? false, reader._propFilter);\r\n }\r\n catch (e) {\r\n reader.handleCloseErrorWhileOpening(e);\r\n throw e;\r\n }\r\n return reader;\r\n }\r\n\r\n /**\r\n * Concatenate multiple changeset files and read them as a single logical stream.\r\n * @param args.changesetFiles Ordered list of changeset file paths.\r\n * @param args.db Database with schema at or ahead of the last changeset.\r\n * @param args.invert When `true`, invert all operations (Insert↔Delete, New↔Old).\r\n * @param args.rowOptions Row adaptor options controlling how EC property values are formatted.\r\n * @param args.propFilter Controls which properties are included. Defaults to `All`.\r\n * @param args.spillThresholdInBytes When the total size of the changeset data in the change group exceeds this threshold (in bytes),\r\n * the reader writes the data to a temporary file on disk and streams it from there instead of buffering everything in memory.\r\n * This keeps peak memory usage bounded, making the API suitable for processing large changeset groups under low-memory conditions.\r\n * Defaults to 50 MiB.\r\n * @throws if `changesetFiles` is empty, or if the native layer fails to open\r\n * the group.\r\n * @beta\r\n */\r\n public static openGroup(args: { readonly changesetFiles: string[], spillThresholdInBytes?: number } & ChangesetReaderArgs): ChangesetReader {\r\n if (args.changesetFiles.length === 0)\r\n throw new IModelError(IModelStatus.BadArg, \"changesetFiles must contain at least one file.\");\r\n const reader = new ChangesetReader(args.db);\r\n reader._rowOptions = args.rowOptions;\r\n const propFilter = args.propFilter ?? PropertyFilter.All;\r\n reader._propFilter = propFilter;\r\n try {\r\n reader._nativeReader.openGroup(args.db[_nativeDb], args.changesetFiles, args.invert ?? false, reader._propFilter, args.spillThresholdInBytes ?? this.defaultSpillThresholdInBytes);\r\n }\r\n catch (e) {\r\n reader.handleCloseErrorWhileOpening(e);\r\n throw e;\r\n }\r\n return reader;\r\n }\r\n\r\n /**\r\n * Read pending (not yet pushed) local changes from an open IModelDb.\r\n * @param args.db Must be an [IModelDb]($backend) (not [ECDb]($backend)).\r\n * @param args.includeInMemoryChanges Also include in-memory (not yet saved to disk) changes.\r\n * @param args.invert When `true`, invert all operations (Insert↔Delete, New↔Old).\r\n * @param args.rowOptions Row adaptor options controlling how EC property values are formatted.\r\n * @param args.propFilter Controls which properties are included. Defaults to `All`.\r\n * @param args.spillThresholdInBytes When the total size of all local un-pushed saved changes exceeds this threshold (in bytes),\r\n * the reader writes the data to a temporary file on disk and streams it from there instead of buffering everything in memory.\r\n * This keeps peak memory usage bounded, making the API suitable for iModels with large local change backlogs under low-memory conditions.\r\n * Defaults to 50 MiB.\r\n * @throws if the native layer\r\n * fails to open the local changes.\r\n * @beta\r\n */\r\n public static openLocalChanges(\r\n args: Omit<ChangesetReaderArgs, \"db\"> & { db: IModelDb; includeInMemoryChanges?: boolean, spillThresholdInBytes?: number },\r\n ): ChangesetReader {\r\n const reader = new ChangesetReader(args.db);\r\n reader._rowOptions = args.rowOptions;\r\n const propFilter = args.propFilter ?? PropertyFilter.All;\r\n reader._propFilter = propFilter;\r\n try {\r\n reader._nativeReader.openLocalChanges(args.db[_nativeDb], args.includeInMemoryChanges ?? false, args.invert ?? false, reader._propFilter, args.spillThresholdInBytes ?? this.defaultSpillThresholdInBytes);\r\n } catch (e) {\r\n reader.handleCloseErrorWhileOpening(e);\r\n throw e;\r\n }\r\n return reader;\r\n }\r\n\r\n /**\r\n * Read the in-memory (not yet saved to disk) changes of an open IModelDb.\r\n * @param args.db Must be an [IModelDb]($backend).\r\n * @param args.invert When `true`, invert all operations (Insert↔Delete, New↔Old).\r\n * @param args.rowOptions Row adaptor options controlling how EC property values are formatted.\r\n * @param args.propFilter Controls which properties are included. Defaults to `All`.\r\n * @param args.spillThresholdInBytes When the total size of the in-memory (unsaved) change data exceeds this threshold (in bytes),\r\n * the reader writes the data to a temporary file on disk and streams it from there instead of buffering everything in memory.\r\n * This keeps peak memory usage bounded, making the API suitable for large in-memory transactions under low-memory conditions.\r\n * Defaults to 50 MiB.\r\n * @throws if the native layer encounters an error while opening the in-memory changes.\r\n * @beta\r\n */\r\n public static openInMemoryChanges(\r\n args: Omit<ChangesetReaderArgs, \"db\"> & { db: IModelDb, spillThresholdInBytes?: number },\r\n ): ChangesetReader {\r\n const reader = new ChangesetReader(args.db);\r\n reader._rowOptions = args.rowOptions;\r\n const propFilter = args.propFilter ?? PropertyFilter.All;\r\n reader._propFilter = propFilter;\r\n try {\r\n reader._nativeReader.openInMemoryChanges(args.db[_nativeDb], args.invert ?? false, reader._propFilter, args.spillThresholdInBytes ?? this.defaultSpillThresholdInBytes);\r\n } catch (e) {\r\n reader.handleCloseErrorWhileOpening(e);\r\n throw e;\r\n }\r\n return reader;\r\n }\r\n\r\n /**\r\n * Read a single saved transaction by its id.\r\n * @param args.db Must be an [IModelDb]($backend) ([ECDb]($backend) does not support transactions).\r\n * @param args.txnId The id of the saved transaction to read.\r\n * @param args.invert When `true`, invert all operations (Insert↔Delete, New↔Old).\r\n * @param args.rowOptions Row adaptor options controlling how EC property values are formatted.\r\n * @param args.propFilter Controls which properties are included. Defaults to `All`.\r\n * @param args.spillThresholdInBytes When the total size of the transaction's change data exceeds this threshold (in bytes),\r\n * the reader writes the data to a temporary file on disk and streams it from there instead of buffering everything in memory.\r\n * This keeps peak memory usage bounded, making the API suitable for large transactions under low-memory conditions.\r\n * Defaults to 50 MiB.\r\n * @throws if `txnId` is not found, or\r\n * the native layer fails to open the transaction data.\r\n * @beta\r\n */\r\n public static openTxn(\r\n args: Omit<ChangesetReaderArgs, \"db\"> & { db: IModelDb; txnId: Id64String, spillThresholdInBytes?: number },\r\n ): ChangesetReader {\r\n const reader = new ChangesetReader(args.db);\r\n reader._rowOptions = args.rowOptions;\r\n const propFilter = args.propFilter ?? PropertyFilter.All;\r\n reader._propFilter = propFilter;\r\n try {\r\n reader._nativeReader.openTxn(args.db[_nativeDb], args.txnId, args.invert ?? false, reader._propFilter, args.spillThresholdInBytes ?? this.defaultSpillThresholdInBytes);\r\n } catch (e) {\r\n reader.handleCloseErrorWhileOpening(e);\r\n throw e;\r\n }\r\n return reader;\r\n }\r\n\r\n /** Throws if [[step]] has already been called, preventing filter/mode changes mid-iteration.\r\n * @internal */\r\n private throwIfAlreadyStepped(): void {\r\n if (this._changeIndex > 0)\r\n throw new IModelError(IModelStatus.BadRequest, \"ChangesetReader: filters and strict mode and batch size must be configured before the first call to step().\");\r\n }\r\n\r\n /** Handle errors that occur while auto closing the reader if there is also an error while opening the reader */\r\n private handleCloseErrorWhileOpening(e: unknown): void {\r\n try {\r\n this.close();\r\n } catch (closeError) {\r\n throw new IModelError(IModelStatus.BadArg, `Failed to open ChangesetReader with error ${e instanceof Error ? e.message : String(e)}.\r\n Additionally, that triggered an automatic closure of the reader\r\n releasing native resources which also failed with failure ${closeError instanceof Error ? closeError.message : String(closeError)}.\r\n Check native error logs for more details.`);\r\n }\r\n }\r\n\r\n /**\r\n * Set the number of rows to fetch and cache while stepping.\r\n * This is an advanced option that can be used to tune performance for large changesets.\r\n * Increasing the batch size improves throughput at the cost of higher peak memory; decreasing it keeps memory consumption lower.\r\n *\r\n * Default batch sizes when `setBatchSize` is not called:\r\n * - `InstanceKey` filter: **100**.\r\n * - `BisCoreElement` filter (any `abbreviateBlobs` setting): **20**.\r\n * - `All` filter, `abbreviateBlobs: false`: **5**.\r\n * - `All` filter (blobs abbreviated or unset): **10**.\r\n *\r\n * @param batchSize Number of rows to fetch and cache while stepping. Must be a positive integer.\r\n * @throws [[IModelError]] if [[step]] has already been called successfully, or if `batchSize` is not a positive integer.\r\n * @beta\r\n */\r\n public setBatchSize(batchSize: number): void {\r\n this.throwIfAlreadyStepped();\r\n if (!Number.isInteger(batchSize) || batchSize <= 0)\r\n throw new IModelError(IModelStatus.BadArg, \"ChangesetReader: batchSize must be a positive integer.\");\r\n this._batchSizeOverride = batchSize;\r\n }\r\n\r\n // ---------------------------------------------------------------------------\r\n // Filtering\r\n // ---------------------------------------------------------------------------\r\n\r\n /**\r\n * Restrict iteration to changes from the named SQLite tables.\r\n * That means the rows for changes from other tables will be skipped entirely and won't be visible through the reader.\r\n * @param tableNames SQLite table names to include.\r\n * Note: Table names must be provided in the correct case for proper filtering.\r\n * @throws if [[step]] has already been called and the reader successfully stepped at least once(i.e. returned true for a step() call) or if the native layer encounters an error while setting the filter.\r\n * @beta\r\n */\r\n public setTableNameFilters(tableNames: Set<string>): void {\r\n this.throwIfAlreadyStepped();\r\n this._nativeReader.setTableNameFilters(Array.from(tableNames));\r\n }\r\n\r\n /**\r\n * Restrict iteration to changes with the given operation types.\r\n * That means the rows for changes with other operation types will be skipped entirely and won't be visible through the reader.\r\n * @param ops Operations to include.\r\n * @throws if [[step]] has already been called and the reader successfully stepped at least once(i.e. returned true for a step() call) or if the native layer encounters an error while setting the filter.\r\n * @beta\r\n */\r\n public setOpCodeFilters(ops: Set<SqliteChangeOp>): void {\r\n this.throwIfAlreadyStepped();\r\n this._nativeReader.setOpCodeFilters(Array.from(ops));\r\n }\r\n\r\n /**\r\n * Restrict iteration to changes for the given EC class names.\r\n * That means the rows for changes from other EC classes will be skipped entirely and won't be visible through the reader.\r\n * @param classNames EC class names to include. The classNames should be in the full name format(i.e. \"SchemaName:ClassName\").\r\n * Note: Schema names and class names must be provided in the correct case for proper filtering. Derived classes are not automatically included, so they must be specified explicitly if needed.\r\n * @throws if [[step]] has already been called and the reader successfully stepped at least once(i.e. returned true for a step() call) or if the native layer encounters an error while setting the filter.\r\n * @beta\r\n */\r\n public setClassNameFilters(classNames: Set<string>): void {\r\n this.throwIfAlreadyStepped();\r\n this._nativeReader.setClassNameFilters(Array.from(classNames));\r\n }\r\n\r\n /**\r\n * Remove the table-name filters\r\n * @throws if [[step]] has already been called and the reader successfully stepped at least once(i.e. returned true for a step() call) or if the native layer encounters an error.\r\n * @beta\r\n */\r\n public clearTableNameFilters(): void {\r\n this.throwIfAlreadyStepped();\r\n this._nativeReader.clearTableNameFilters();\r\n }\r\n\r\n /**\r\n * Remove the op-code filters\r\n * @throws if [[step]] has already been called and the reader successfully stepped at least once(i.e. returned true for a step() call) or if the native layer encounters an error.\r\n * @beta\r\n */\r\n public clearOpCodeFilters(): void {\r\n this.throwIfAlreadyStepped();\r\n this._nativeReader.clearOpCodeFilters();\r\n }\r\n\r\n /**\r\n * Remove the class-name filters\r\n * @throws if [[step]] has already been called and the reader successfully stepped at least once(i.e. returned true for a step() call) or if the native layer encounters an error.\r\n * @beta\r\n */\r\n public clearClassNameFilters(): void {\r\n this.throwIfAlreadyStepped();\r\n this._nativeReader.clearClassNameFilters();\r\n }\r\n\r\n // ---------------------------------------------------------------------------\r\n // Strict mode\r\n // ---------------------------------------------------------------------------\r\n\r\n /**\r\n * Enable strict mode on the reader.\r\n *\r\n * Strict mode affects how the reader handles a **column-count mismatch** between a change\r\n * record and the corresponding live database table. Such a mismatch can occur when columns\r\n * have been added to a table after the changeset was created.\r\n *\r\n * When strict mode is **enabled**: if the number of columns recorded in a change row differs\r\n * from the number of columns currently present in the live table, the reader throws an error\r\n * instead of processing that row.\r\n *\r\n * Use strict mode when you need to be certain that every change row is interpreted against\r\n * exactly the schema that was in effect when the changeset was written.\r\n *\r\n * @see [[disableStrictMode]] — the default (lenient) behaviour.\r\n * @throws if [[step]] has already been called and the reader successfully stepped at least once(i.e. returned true for a step() call) or if the native layer encounters an error.\r\n * @beta\r\n */\r\n public enableStrictMode(): void {\r\n this.throwIfAlreadyStepped();\r\n this._nativeReader.enableStrictMode();\r\n }\r\n\r\n /**\r\n * Disable strict mode on the reader (this is the default).\r\n *\r\n * When strict mode is **disabled**: if the number of columns recorded in a change row differs\r\n * from the number of columns currently present in the live table, the reader takes the\r\n * **minimum** of the two column counts and proceeds normally with that subset. This is safe\r\n * because SQLite only ever appends new columns at the end of a table and never removes them —\r\n * so older change records simply lack the trailing columns that were added later, and those\r\n * missing columns are silently ignored.\r\n *\r\n * @see [[enableStrictMode]] — throw on column-count mismatches instead.\r\n * @throws if [[step]] has already been called and the reader successfully stepped at least once(i.e. returned true for a step() call) or if the native layer encounters an error.\r\n * @beta\r\n */\r\n public disableStrictMode(): void {\r\n this.throwIfAlreadyStepped();\r\n this._nativeReader.disableStrictMode();\r\n }\r\n\r\n // ---------------------------------------------------------------------------\r\n // Iteration\r\n // ---------------------------------------------------------------------------\r\n\r\n /**\r\n * Advance to the next change.\r\n * @returns `true` while positioned on a valid change; `false` when the stream is exhausted.\r\n * @throws if the native layer encounters an error while reading or decoding\r\n * the next change.\r\n * @beta\r\n */\r\n public step(): boolean {\r\n this._cachedInserted = undefined;\r\n this._cachedDeleted = undefined;\r\n if (this._cacheIndex + 1 < this._cache.length) {\r\n // Still have rows in cache — advance the pointer\r\n this._cacheIndex++;\r\n } else {\r\n // Cache empty or fully consumed — fetch next batch from native\r\n const nativeRowOpts = this._rowOptions ? this.toNativeRowOptions(this._rowOptions) : {};\r\n this._cache = this._nativeReader.step(this._batchSize, nativeRowOpts);\r\n this._cacheIndex = 0;\r\n if (this._cache.length === 0) return false;\r\n }\r\n this._changeIndex++;\r\n return true;\r\n }\r\n\r\n /**\r\n * SQLite opcode of the current change.\r\n * Valid only after a successful call to [[step]].\r\n * @throws [[IModelError]] if called before a successful [[step]] call.\r\n * @beta\r\n */\r\n public get op(): SqliteChangeOp {\r\n const opCode = this._currentRow.metadata.opCode;\r\n return opCode === DbOpcode.Insert ? \"Inserted\"\r\n : opCode === DbOpcode.Update ? \"Updated\"\r\n : \"Deleted\";\r\n }\r\n\r\n // ---------------------------------------------------------------------------\r\n // Lifecycle\r\n // ---------------------------------------------------------------------------\r\n\r\n /**\r\n * Close the reader and release all native resources.\r\n *\r\n * @throws if the native layer encounters an error during cleanup. Native resources\r\n * are not fully released when this throws — check the native error\r\n * logs for details.\r\n * @beta\r\n */\r\n public close(): void {\r\n this._changeIndex = 0;\r\n this._cache = [];\r\n this._cacheIndex = 0;\r\n this._cachedInserted = undefined;\r\n this._cachedDeleted = undefined;\r\n this._nativeReader.close();\r\n }\r\n\r\n /**\r\n * Implements the `Disposable` contract — delegates to [[close]].\r\n *\r\n * @throws if the native layer fails to release its resources (re-thrown from [[close]]).\r\n * @beta\r\n */\r\n public [Symbol.dispose](): void {\r\n this.close();\r\n }\r\n}\r\n\r\n"]}
|
|
@@ -29,7 +29,7 @@ export interface RowFormatOptions {
|
|
|
29
29
|
*/
|
|
30
30
|
abbreviateBlobs?: boolean;
|
|
31
31
|
/**
|
|
32
|
-
* When `true`,
|
|
32
|
+
* When `true`, all classId values are converted from hex strings
|
|
33
33
|
* to fully-qualified class names (e.g. `"BisCore.DrawingModel"`).
|
|
34
34
|
*/
|
|
35
35
|
classIdsToClassNames?: boolean;
|
|
@@ -37,6 +37,7 @@ export interface RowFormatOptions {
|
|
|
37
37
|
* When `true`, all property keys and struct sub-keys are returned in camelCase
|
|
38
38
|
* (e.g. `id`, `className`, `lastMod`). Navigation property sub-keys use
|
|
39
39
|
* `{ id, relClassName }` instead of `{ Id, RelECClassId }`.
|
|
40
|
+
* @deprecated We should stick to ECProperty names as is instead.
|
|
40
41
|
*/
|
|
41
42
|
useJsName?: boolean;
|
|
42
43
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChangesetReaderTypes.d.ts","sourceRoot":"","sources":["../../src/ChangesetReaderTypes.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAMlF;;;GAGG;AACH,oBAAY,cAAc;IACxB,kDAAkD;IAClD,GAAG,IAAI;IACP;;;uBAGmB;IACnB,cAAc,IAAI;IAClB,2CAA2C;IAC3C,WAAW,IAAI;CAChB;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;OAGG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B
|
|
1
|
+
{"version":3,"file":"ChangesetReaderTypes.d.ts","sourceRoot":"","sources":["../../src/ChangesetReaderTypes.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAMlF;;;GAGG;AACH,oBAAY,cAAc;IACxB,kDAAkD;IAClD,GAAG,IAAI;IACP;;;uBAGmB;IACnB,cAAc,IAAI;IAClB,2CAA2C;IAC3C,WAAW,IAAI;CAChB;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;OAGG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAMD;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB,iEAAiE;IACjE,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,2CAA2C;IAC3C,EAAE,EAAE,cAAc,CAAC;IACnB,kFAAkF;IAClF,KAAK,EAAE,gBAAgB,CAAC;IACxB,qCAAqC;IACrC,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB,gFAAgF;IAChF,UAAU,EAAE,cAAc,CAAC;IAC3B;;;;;;;+HAO2H;IAC3H,sBAAsB,EAAE,MAAM,EAAE,CAAC;IACjC,8EAA8E;IAC9E,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,oDAAoD;IACpD,gBAAgB,EAAE,OAAO,CAAC;CAC3B;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,kEAAkE;IAClE,KAAK,EAAE,UAAU,CAAC;IAClB,+EAA+E;IAC/E,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAED;;;;GAIG;AACH,MAAM,WAAW,YAAY;IAC3B,mDAAmD;IACnD,QAAQ,CAAC,EAAE,EAAE,cAAc,CAAC;IAC5B;;;OAGG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,cAAc,CAAC;IACnC;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,cAAc,CAAC;CACnC;AAMD;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,yFAAyF;IACzF,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IACnB,sCAAsC;IACtC,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAC1B,4EAA4E;IAC5E,QAAQ,CAAC,UAAU,CAAC,EAAE,gBAAgB,CAAC;IACvC,mGAAmG;IACnG,QAAQ,CAAC,UAAU,CAAC,EAAE,cAAc,CAAC;CACtC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChangesetReaderTypes.js","sourceRoot":"","sources":["../../src/ChangesetReaderTypes.ts"],"names":[],"mappings":";;;AASA,8EAA8E;AAC9E,eAAe;AACf,8EAA8E;AAE9E;;;GAGG;AACH,IAAY,cAUX;AAVD,WAAY,cAAc;IACxB,kDAAkD;IAClD,iDAAO,CAAA;IACP;;;uBAGmB;IACnB,uEAAkB,CAAA;IAClB,2CAA2C;IAC3C,iEAAe,CAAA;AACjB,CAAC,EAVW,cAAc,8BAAd,cAAc,QAUzB","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module ECDb\r\n */\r\nimport { AnyDb, SqliteChangeOp, SqliteValueStage } from \"./SqliteChangesetReader\";\r\n\r\n// ---------------------------------------------------------------------------\r\n// Type aliases\r\n// ---------------------------------------------------------------------------\r\n\r\n/**\r\n * Controls which properties are included in the output of [ChangesetReader]($backend).\r\n * @beta\r\n */\r\nexport enum PropertyFilter {\r\n /** All EC properties mapped to changed tables. */\r\n All = 0,\r\n /** For classes whose base class is `BisCore:Element`, only `BisCore:Element` properties\r\n * mapped to changed tables are returned. If no `BisCore:Element` class property changed,\r\n * only `ECInstanceId` and `ECClassId` are returned. For other classes all mapped properties\r\n * are returned. */\r\n BisCoreElement = 1,\r\n /** Only `ECInstanceId` and `ECClassId`. */\r\n InstanceKey = 2,\r\n}\r\n\r\n/**\r\n * Row-formatting options for [ChangesetReader]($backend) factory methods.\r\n * Controls how EC property values are represented in the returned instances.\r\n * @beta\r\n */\r\nexport interface RowFormatOptions {\r\n /**\r\n * When `false`, binary properties are returned as full `Uint8Array` values.\r\n * When `true` (or omitted), binary properties are summarized as `{ bytes: N }`.\r\n */\r\n abbreviateBlobs?: boolean;\r\n /**\r\n * When `true`,
|
|
1
|
+
{"version":3,"file":"ChangesetReaderTypes.js","sourceRoot":"","sources":["../../src/ChangesetReaderTypes.ts"],"names":[],"mappings":";;;AASA,8EAA8E;AAC9E,eAAe;AACf,8EAA8E;AAE9E;;;GAGG;AACH,IAAY,cAUX;AAVD,WAAY,cAAc;IACxB,kDAAkD;IAClD,iDAAO,CAAA;IACP;;;uBAGmB;IACnB,uEAAkB,CAAA;IAClB,2CAA2C;IAC3C,iEAAe,CAAA;AACjB,CAAC,EAVW,cAAc,8BAAd,cAAc,QAUzB","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module ECDb\r\n */\r\nimport { AnyDb, SqliteChangeOp, SqliteValueStage } from \"./SqliteChangesetReader\";\r\n\r\n// ---------------------------------------------------------------------------\r\n// Type aliases\r\n// ---------------------------------------------------------------------------\r\n\r\n/**\r\n * Controls which properties are included in the output of [ChangesetReader]($backend).\r\n * @beta\r\n */\r\nexport enum PropertyFilter {\r\n /** All EC properties mapped to changed tables. */\r\n All = 0,\r\n /** For classes whose base class is `BisCore:Element`, only `BisCore:Element` properties\r\n * mapped to changed tables are returned. If no `BisCore:Element` class property changed,\r\n * only `ECInstanceId` and `ECClassId` are returned. For other classes all mapped properties\r\n * are returned. */\r\n BisCoreElement = 1,\r\n /** Only `ECInstanceId` and `ECClassId`. */\r\n InstanceKey = 2,\r\n}\r\n\r\n/**\r\n * Row-formatting options for [ChangesetReader]($backend) factory methods.\r\n * Controls how EC property values are represented in the returned instances.\r\n * @beta\r\n */\r\nexport interface RowFormatOptions {\r\n /**\r\n * When `false`, binary properties are returned as full `Uint8Array` values.\r\n * When `true` (or omitted), binary properties are summarized as `{ bytes: N }`.\r\n */\r\n abbreviateBlobs?: boolean;\r\n /**\r\n * When `true`, all classId values are converted from hex strings\r\n * to fully-qualified class names (e.g. `\"BisCore.DrawingModel\"`).\r\n */\r\n classIdsToClassNames?: boolean;\r\n /**\r\n * When `true`, all property keys and struct sub-keys are returned in camelCase\r\n * (e.g. `id`, `className`, `lastMod`). Navigation property sub-keys use\r\n * `{ id, relClassName }` instead of `{ Id, RelECClassId }`.\r\n * @deprecated We should stick to ECProperty names as is instead.\r\n */\r\n useJsName?: boolean;\r\n}\r\n\r\n// ---------------------------------------------------------------------------\r\n// Public interfaces\r\n// ---------------------------------------------------------------------------\r\n\r\n/**\r\n * Metadata attached to every [[ChangeInstance]].\r\n * @beta\r\n */\r\nexport interface ChangeMeta {\r\n /** SQLite tables that contributed columns to this change row. */\r\n tables: string[];\r\n /** Operation that produced this change. */\r\n op: SqliteChangeOp;\r\n /** Whether this is the pre-change (`\"Old\"`) or post-change (`\"New\"`) snapshot. */\r\n stage: SqliteValueStage;\r\n /** Change-stream index positions. */\r\n changeIndexes: number[];\r\n /**\r\n * ECInstanceId and class Id in format \"<ECInstanceId>-<ECClassId>\".\r\n */\r\n instanceKey: string;\r\n /** Reader property filter that was active when this change row was captured. */\r\n propFilter: PropertyFilter;\r\n /** EC property names fetched from the current row of changeset or transaction or any other change stream.\r\n For compound data properties like point2d, point3d or navigation properties,\r\n the full name of the property is returned in case all the components of the property are fetched from the change.\r\n If all of the components are not fetched from the changes(meaning they did not change),\r\n then the individual component names which changed are returned smartly by using `.` as a separator (e.g. \"MyPoint.X\", \"MyPoint.Y\" for a point3d property \"MyPoint\" if only X and Y changed).\r\n For struct properties the property names are always returned in the \"StructProp.MemberName\" format.\r\n So if only X changed for a point2d property named \"Myp2d\" inide a struct \"CustomStruct\", the returned property name will be \"CustomStruct.Myp2d.X\".\r\n Similaly if both X and Y changed for the same point2d property, the returned property name will be \"CustomStruct.Myp2d\". */\r\n changeFetchedPropNames: string[];\r\n /** Row adaptor options that were active when this change row was captured. */\r\n rowOptions?: RowFormatOptions;\r\n /** `true` when the change was applied indirectly */\r\n isIndirectChange: boolean;\r\n}\r\n\r\n/**\r\n * An EC instance produced by [ChangesetReader]($backend) after each `step()`.\r\n * Contains the EC property bag plus mandatory `$meta` metadata.\r\n * @beta\r\n */\r\nexport interface ChangeInstance {\r\n /** Metadata describing the origin and identity of this change. */\r\n $meta: ChangeMeta;\r\n /** EC property bag (ECClassId, ECInstanceId, user-defined properties, ...). */\r\n [key: string]: any;\r\n}\r\n\r\n/**\r\n * Contract for any reader that produces EC-typed changed instances compatible with\r\n * [PartialChangeUnifier]($backend).\r\n * @beta\r\n */\r\nexport interface ChangeSource {\r\n /** The SQLite opcode of the current change row. */\r\n readonly op: SqliteChangeOp;\r\n /**\r\n * The newly-inserted or post-update EC instance.\r\n * `undefined` when the current row is a Delete, or when `isECTable` is `false`.\r\n */\r\n readonly inserted?: ChangeInstance;\r\n /**\r\n * The deleted or pre-update EC instance.\r\n * `undefined` when the current row is an Insert, or when `isECTable` is `false`.\r\n */\r\n readonly deleted?: ChangeInstance;\r\n}\r\n\r\n// ---------------------------------------------------------------------------\r\n// ChangesetReader args / options\r\n// ---------------------------------------------------------------------------\r\n\r\n/**\r\n * Arguments common to all [ChangesetReader]($backend) `open*` factory methods.\r\n * @beta\r\n */\r\nexport interface ChangesetReaderArgs {\r\n /** The db used to resolve EC schema. Must be at or ahead of the changeset being read. */\r\n readonly db: AnyDb;\r\n /** invert the changeset operations */\r\n readonly invert?: boolean;\r\n /** Row adaptor options controlling how EC property values are formatted. */\r\n readonly rowOptions?: RowFormatOptions;\r\n /** Controls which properties are included in the change output. Defaults to PropertyFilter.All. */\r\n readonly propFilter?: PropertyFilter;\r\n}"]}
|
package/lib/cjs/IModelDb.d.ts
CHANGED
|
@@ -139,31 +139,38 @@ export interface ComputedProjectExtents {
|
|
|
139
139
|
* @beta
|
|
140
140
|
*/
|
|
141
141
|
export interface IntegrityCheckOptions {
|
|
142
|
-
/**
|
|
142
|
+
/**
|
|
143
|
+
* If true, perform a quick check of the ten integrity checks other than the missing child rows check.
|
|
144
|
+
* The quick check reports pass/fail for each check without problem details. If false is specified without
|
|
145
|
+
* enabling a specific check, the quick check is still performed by default.
|
|
146
|
+
*/
|
|
143
147
|
quickCheck?: boolean;
|
|
144
|
-
/**
|
|
148
|
+
/**
|
|
149
|
+
* Options for performing specific integrity checks with detailed results. Each selected check returns all
|
|
150
|
+
* problem rows. If quickCheck is also true, the selected checks are performed again in specific mode.
|
|
151
|
+
*/
|
|
145
152
|
specificChecks?: {
|
|
146
|
-
/** If true, checks
|
|
153
|
+
/** If true, checks for missing nonvirtual physical columns in mapped data tables. It does not compare column types. */
|
|
147
154
|
checkDataColumns?: boolean;
|
|
148
|
-
/** If true, checks
|
|
155
|
+
/** If true, checks expected EC profile tables, indexes, and iModel triggers for missing or mismatching SQL definitions. It does not check be_* tables. */
|
|
149
156
|
checkECProfile?: boolean;
|
|
150
|
-
/** If true, checks
|
|
157
|
+
/** If true, checks that each non-null persisted RelECClassId is the declared relationship class or one of its derived classes. */
|
|
151
158
|
checkNavigationClassIds?: boolean;
|
|
152
|
-
/** If true, checks
|
|
159
|
+
/** If true, checks that a navigation property's non-null .Id (the referenced instance's ECInstanceId) resolves to a row in the first relationship constraint class in the navigation direction, including derived classes. */
|
|
153
160
|
checkNavigationIds?: boolean;
|
|
154
|
-
/** If true, checks
|
|
161
|
+
/** If true, checks that SourceECClassId and TargetECClassId have matching meta.ECClassDef entries. This checks class existence only, not endpoint-class validity. */
|
|
155
162
|
checkLinktableForeignKeyClassIds?: boolean;
|
|
156
|
-
/** If true, checks
|
|
163
|
+
/** If true, checks SourceECInstanceId and TargetECInstanceId for null or an unresolved row in the first endpoint constraint class, including derived classes. */
|
|
157
164
|
checkLinktableForeignKeyIds?: boolean;
|
|
158
|
-
/** If true, checks persisted ECClassId
|
|
165
|
+
/** If true, checks persisted ECClassId values for a corresponding class definition. This checks class existence, not whether the class belongs in that table. */
|
|
159
166
|
checkClassIds?: boolean;
|
|
160
|
-
/** If true, checks
|
|
167
|
+
/** If true, checks for missing mapped data tables and indexes. Results report object names and types, not DDL differences. */
|
|
161
168
|
checkDataSchema?: boolean;
|
|
162
|
-
/** If true, checks
|
|
169
|
+
/** If true, checks whether the schema manager can load each schema recorded in the database. A problem reports the schema name without a reason. */
|
|
163
170
|
checkSchemaLoad?: boolean;
|
|
164
|
-
/** If true, checks
|
|
171
|
+
/** If true, checks whether each existing bis_Element row has all required mapped child-table rows. */
|
|
165
172
|
checkMissingChildRows?: boolean;
|
|
166
|
-
/** If true, checks
|
|
173
|
+
/** If true, checks whether an inherited property maps to different columns for a base and derived class under the same physical table root. */
|
|
167
174
|
checkDivergedPropMaps?: boolean;
|
|
168
175
|
};
|
|
169
176
|
}
|
|
@@ -520,24 +527,30 @@ export declare abstract class IModelDb extends IModel {
|
|
|
520
527
|
analyze(): void;
|
|
521
528
|
/**
|
|
522
529
|
* Performs integrity checks on this iModel.
|
|
523
|
-
* Types of integrity checks that can be performed are:
|
|
524
530
|
*
|
|
525
|
-
*
|
|
526
|
-
*
|
|
531
|
+
* The quick check runs the ten checks below other than Missing Child Rows. It reports pass/fail for each check
|
|
532
|
+
* based on the first problem found, without returning problem details. The specific checks return all problem rows.
|
|
533
|
+
* Selecting both quickCheck and specific checks repeats the selected work in both modes.
|
|
534
|
+
*
|
|
535
|
+
* The checks are:
|
|
536
|
+
* - Data Columns Check: Checks for missing nonvirtual physical columns in mapped data tables. It does not compare column types.
|
|
537
|
+
* - EC Profile Check: Checks expected EC profile tables, indexes, and iModel triggers for missing or mismatching SQL definitions. It does not check be_* tables.
|
|
538
|
+
* - Navigation Class Ids Check: Checks that each non-null persisted RelECClassId is the declared relationship class or one of its derived classes.
|
|
539
|
+
* - Navigation Ids Check: Checks that a navigation property's non-null .Id (the referenced instance's ECInstanceId) resolves to a row in the first relationship constraint class in the navigation direction, including derived classes.
|
|
540
|
+
* - Linktable Foreign Key Class Ids Check: Checks that SourceECClassId and TargetECClassId have matching meta.ECClassDef entries. This checks class existence only, not endpoint-class validity.
|
|
541
|
+
* - Linktable Foreign Key Ids Check: Checks SourceECInstanceId and TargetECInstanceId for null or an unresolved row in the first endpoint constraint class, including derived classes.
|
|
542
|
+
* - Class Ids Check: Checks persisted ECClassId values for a corresponding class definition. This checks class existence, not whether the class belongs in that table.
|
|
543
|
+
* - Data Schema Check: Checks for missing mapped data tables and indexes. Results report object names and types, not DDL differences.
|
|
544
|
+
* - Schema Load Check: Checks whether the schema manager can load each schema recorded in the database. A problem reports the schema name without a reason.
|
|
545
|
+
* - Missing Child Rows Check: Checks whether each existing bis_Element row has all required mapped child-table rows.
|
|
546
|
+
* - Diverged Property Maps Check: Checks whether an inherited property maps to different columns for a base and derived class under the same physical table root.
|
|
527
547
|
*
|
|
528
|
-
*
|
|
529
|
-
*
|
|
530
|
-
*
|
|
531
|
-
* - Navigation Class Ids Check: Checks if RelClassId of a Navigation property is a valid ECClassId. It does not check the value to match the relationship class.
|
|
532
|
-
* - Navigation Ids Check: Checks if Id of a Navigation property matches a valid row primary class.
|
|
533
|
-
* - Linktable Foreign Key Class Ids Check: Checks if SourceECClassId or TargetECClassId of a link table matches a valid ECClassId.
|
|
534
|
-
* - Linktable Foreign Key Ids Check: Checks if SourceECInstanceId or TargetECInstanceId of a link table matches a valid row in primary class.
|
|
535
|
-
* - Class Ids Check: Checks persisted ECClassId in all data tables and makes sure they are valid.
|
|
536
|
-
* - Data Schema Check: Checks if all the required data tables and indexes exist for mapped classes. Issues are returned as a list of tables/columns which were not found or have different DDL.
|
|
537
|
-
* - Schema Load Check: Checks if all schemas can be loaded into memory.
|
|
538
|
-
* - Missing Child Rows Check: Checks if all child rows have a corresponding parent row.
|
|
548
|
+
* If no options are provided, or if quickCheck is false and no specific check is enabled, a quick check is performed by default.
|
|
549
|
+
* The checks are read-only and use the current primary connection. They have no callbacks, and the native operation
|
|
550
|
+
* blocks the backend while each check runs.
|
|
539
551
|
*
|
|
540
|
-
* @
|
|
552
|
+
* @see [ECSQL integrity checks]($docs/learning/ECSqlReference/Pragmas.md#pragma-integrity_check-experimental)
|
|
553
|
+
* @param options Options specifying which integrity checks to perform.
|
|
541
554
|
* @returns An array of integrity check results.
|
|
542
555
|
* @throws [[IModelError]] if the iModel is not open.
|
|
543
556
|
* @beta
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IModelDb.d.ts","sourceRoot":"","sources":["../../src/IModelDb.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"IModelDb.d.ts","sourceRoot":"","sources":["../../src/IModelDb.ts"],"names":[],"mappings":"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"}
|
package/lib/cjs/IModelDb.js
CHANGED
|
@@ -444,24 +444,30 @@ class IModelDb extends core_common_1.IModel {
|
|
|
444
444
|
}
|
|
445
445
|
/**
|
|
446
446
|
* Performs integrity checks on this iModel.
|
|
447
|
-
* Types of integrity checks that can be performed are:
|
|
448
447
|
*
|
|
449
|
-
*
|
|
450
|
-
*
|
|
448
|
+
* The quick check runs the ten checks below other than Missing Child Rows. It reports pass/fail for each check
|
|
449
|
+
* based on the first problem found, without returning problem details. The specific checks return all problem rows.
|
|
450
|
+
* Selecting both quickCheck and specific checks repeats the selected work in both modes.
|
|
451
451
|
*
|
|
452
|
-
*
|
|
453
|
-
* - Data Columns Check: Checks
|
|
454
|
-
* - EC Profile Check: Checks
|
|
455
|
-
* - Navigation Class Ids Check: Checks
|
|
456
|
-
* - Navigation Ids Check: Checks
|
|
457
|
-
* - Linktable Foreign Key Class Ids Check: Checks
|
|
458
|
-
* - Linktable Foreign Key Ids Check: Checks
|
|
459
|
-
* - Class Ids Check: Checks persisted ECClassId
|
|
460
|
-
* - Data Schema Check: Checks
|
|
461
|
-
* - Schema Load Check: Checks
|
|
462
|
-
* - Missing Child Rows Check: Checks
|
|
452
|
+
* The checks are:
|
|
453
|
+
* - Data Columns Check: Checks for missing nonvirtual physical columns in mapped data tables. It does not compare column types.
|
|
454
|
+
* - EC Profile Check: Checks expected EC profile tables, indexes, and iModel triggers for missing or mismatching SQL definitions. It does not check be_* tables.
|
|
455
|
+
* - Navigation Class Ids Check: Checks that each non-null persisted RelECClassId is the declared relationship class or one of its derived classes.
|
|
456
|
+
* - Navigation Ids Check: Checks that a navigation property's non-null .Id (the referenced instance's ECInstanceId) resolves to a row in the first relationship constraint class in the navigation direction, including derived classes.
|
|
457
|
+
* - Linktable Foreign Key Class Ids Check: Checks that SourceECClassId and TargetECClassId have matching meta.ECClassDef entries. This checks class existence only, not endpoint-class validity.
|
|
458
|
+
* - Linktable Foreign Key Ids Check: Checks SourceECInstanceId and TargetECInstanceId for null or an unresolved row in the first endpoint constraint class, including derived classes.
|
|
459
|
+
* - Class Ids Check: Checks persisted ECClassId values for a corresponding class definition. This checks class existence, not whether the class belongs in that table.
|
|
460
|
+
* - Data Schema Check: Checks for missing mapped data tables and indexes. Results report object names and types, not DDL differences.
|
|
461
|
+
* - Schema Load Check: Checks whether the schema manager can load each schema recorded in the database. A problem reports the schema name without a reason.
|
|
462
|
+
* - Missing Child Rows Check: Checks whether each existing bis_Element row has all required mapped child-table rows.
|
|
463
|
+
* - Diverged Property Maps Check: Checks whether an inherited property maps to different columns for a base and derived class under the same physical table root.
|
|
463
464
|
*
|
|
464
|
-
*
|
|
465
|
+
* If no options are provided, or if quickCheck is false and no specific check is enabled, a quick check is performed by default.
|
|
466
|
+
* The checks are read-only and use the current primary connection. They have no callbacks, and the native operation
|
|
467
|
+
* blocks the backend while each check runs.
|
|
468
|
+
*
|
|
469
|
+
* @see [ECSQL integrity checks]($docs/learning/ECSqlReference/Pragmas.md#pragma-integrity_check-experimental)
|
|
470
|
+
* @param options Options specifying which integrity checks to perform.
|
|
465
471
|
* @returns An array of integrity check results.
|
|
466
472
|
* @throws [[IModelError]] if the iModel is not open.
|
|
467
473
|
* @beta
|