Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions common/api/core-bentley.api.md
Original file line number Diff line number Diff line change
Expand Up @@ -360,12 +360,14 @@ export enum DbResult {
BE_SQLITE_ERROR_InvalidChangeSetVersion = 234881034,
BE_SQLITE_ERROR_InvalidProfileVersion = 117440522,
BE_SQLITE_ERROR_NoPropertyTable = 50331658,
BE_SQLITE_ERROR_NOTOPEN = 16777217,
BE_SQLITE_ERROR_NoTxnActive = 83886090,
BE_SQLITE_ERROR_ProfileTooNew = 201326602,
BE_SQLITE_ERROR_ProfileTooNewForReadWrite = 184549386,
BE_SQLITE_ERROR_ProfileTooOld = 167772170,
BE_SQLITE_ERROR_ProfileTooOldForReadWrite = 150994954,
BE_SQLITE_ERROR_ProfileUpgradeFailed = 134217738,
BE_SQLITE_ERROR_PropagateChangesFailed = 33554433,
BE_SQLITE_ERROR_SchemaImportFailed = 335544330,
BE_SQLITE_ERROR_SchemaLockFailed = 301989898,
BE_SQLITE_ERROR_SchemaTooNew = 268435466,
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
{
"changes": [
{
"packageName": "@itwin/core-backend",
"comment": "Fix crash when their is a cycle in EDE.",
"type": "none"
}
],
"packageName": "@itwin/core-backend"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
{
"changes": [
{
"packageName": "@itwin/core-bentley",
"comment": "Fix crash when their is a cycle in EDE.",
"type": "none"
}
],
"packageName": "@itwin/core-bentley"
}
3 changes: 3 additions & 0 deletions core/backend/src/IModelDb.ts
Original file line number Diff line number Diff line change
Expand Up @@ -853,6 +853,9 @@ export abstract class IModelDb extends IModel {
}

const stat = this[_nativeDb].saveChanges(args ? JSON.stringify(args) : undefined);
if (DbResult.BE_SQLITE_ERROR_PropagateChangesFailed === stat)
throw new IModelError(stat, `Could not save changes due to propagation failure.`);

if (DbResult.BE_SQLITE_OK !== stat)
throw new IModelError(stat, `Could not save changes (${args?.description})`);
}
Expand Down
Loading