@itwin/core-backend 5.5.0-dev.1 → 5.5.0-dev.11
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/CHANGELOG.md +34 -1
- package/lib/cjs/ChangesetECAdaptor.d.ts.map +1 -1
- package/lib/cjs/ChangesetECAdaptor.js +0 -2
- package/lib/cjs/ChangesetECAdaptor.js.map +1 -1
- package/lib/cjs/IModelDb.d.ts +15 -1
- package/lib/cjs/IModelDb.d.ts.map +1 -1
- package/lib/cjs/IModelDb.js +17 -15
- package/lib/cjs/IModelDb.js.map +1 -1
- package/lib/cjs/TxnManager.d.ts +2 -1
- package/lib/cjs/TxnManager.d.ts.map +1 -1
- package/lib/cjs/TxnManager.js +7 -2
- package/lib/cjs/TxnManager.js.map +1 -1
- package/lib/esm/ChangesetECAdaptor.d.ts.map +1 -1
- package/lib/esm/ChangesetECAdaptor.js +0 -2
- package/lib/esm/ChangesetECAdaptor.js.map +1 -1
- package/lib/esm/IModelDb.d.ts +15 -1
- package/lib/esm/IModelDb.d.ts.map +1 -1
- package/lib/esm/IModelDb.js +17 -15
- package/lib/esm/IModelDb.js.map +1 -1
- package/lib/esm/TxnManager.d.ts +2 -1
- package/lib/esm/TxnManager.d.ts.map +1 -1
- package/lib/esm/TxnManager.js +7 -2
- package/lib/esm/TxnManager.js.map +1 -1
- package/lib/esm/test/annotations/Fields.test.js +2 -2
- package/lib/esm/test/annotations/Fields.test.js.map +1 -1
- package/lib/esm/test/assets/IncrementalSchemaLocater/configs/simple.config.js +5 -5
- package/lib/esm/test/assets/IncrementalSchemaLocater/configs/simple.config.js.map +1 -1
- package/lib/esm/test/ecdb/ConcurrentQuery.test.js +43 -0
- package/lib/esm/test/ecdb/ConcurrentQuery.test.js.map +1 -1
- package/lib/esm/test/hubaccess/Rebase.test.js +43 -0
- package/lib/esm/test/hubaccess/Rebase.test.js.map +1 -1
- package/lib/esm/test/imodel/IModel.test.js +31 -2
- package/lib/esm/test/imodel/IModel.test.js.map +1 -1
- package/lib/esm/test/incrementalSchemaLocater/ECSqlQueries.test.js +432 -198
- package/lib/esm/test/incrementalSchemaLocater/ECSqlQueries.test.js.map +1 -1
- package/lib/esm/test/incrementalSchemaLocater/IncrementalLoading.test.js +272 -190
- package/lib/esm/test/incrementalSchemaLocater/IncrementalLoading.test.js.map +1 -1
- package/lib/esm/test/incrementalSchemaLocater/TestContext.d.ts +27 -0
- package/lib/esm/test/incrementalSchemaLocater/TestContext.d.ts.map +1 -0
- package/lib/esm/test/incrementalSchemaLocater/TestContext.js +136 -0
- package/lib/esm/test/incrementalSchemaLocater/TestContext.js.map +1 -0
- package/lib/esm/test/standalone/ChangesetReader.test.js +222 -3
- package/lib/esm/test/standalone/ChangesetReader.test.js.map +1 -1
- package/lib/esm/test/standalone/RenderTimeline.test.js +1 -1
- package/lib/esm/test/standalone/RenderTimeline.test.js.map +1 -1
- package/lib/esm/test/standalone/StandaloneDb.test.d.ts +2 -0
- package/lib/esm/test/standalone/StandaloneDb.test.d.ts.map +1 -0
- package/lib/esm/test/standalone/StandaloneDb.test.js +103 -0
- package/lib/esm/test/standalone/StandaloneDb.test.js.map +1 -0
- package/lib/esm/test/standalone/TxnManager.test.js +43 -0
- package/lib/esm/test/standalone/TxnManager.test.js.map +1 -1
- package/package.json +13 -13
- package/lib/esm/test/incrementalSchemaLocater/utils/IModelSchemaLocater.d.ts +0 -11
- package/lib/esm/test/incrementalSchemaLocater/utils/IModelSchemaLocater.d.ts.map +0 -1
- package/lib/esm/test/incrementalSchemaLocater/utils/IModelSchemaLocater.js +0 -36
- package/lib/esm/test/incrementalSchemaLocater/utils/IModelSchemaLocater.js.map +0 -1
- package/lib/esm/test/incrementalSchemaLocater/utils/IncrementalTestHelper.d.ts +0 -20
- package/lib/esm/test/incrementalSchemaLocater/utils/IncrementalTestHelper.d.ts.map +0 -1
- package/lib/esm/test/incrementalSchemaLocater/utils/IncrementalTestHelper.js +0 -126
- package/lib/esm/test/incrementalSchemaLocater/utils/IncrementalTestHelper.js.map +0 -1
- package/lib/esm/test/incrementalSchemaLocater/utils/TestSqlSchemaLocater.d.ts +0 -24
- package/lib/esm/test/incrementalSchemaLocater/utils/TestSqlSchemaLocater.d.ts.map +0 -1
- package/lib/esm/test/incrementalSchemaLocater/utils/TestSqlSchemaLocater.js +0 -67
- package/lib/esm/test/incrementalSchemaLocater/utils/TestSqlSchemaLocater.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"simple.config.js","sourceRoot":"","sources":["../../../../../../src/test/assets/IncrementalSchemaLocater/configs/simple.config.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable @typescript-eslint/naming-convention */\r\nexport default {\r\n \"label\": \"Simple Profile iModel\",\r\n \"bimFile\": \"SimpleIModel.bim\",\r\n \"schemas\": [\r\n {\r\n \"name\": \"SimpleSchema\",\r\n \"description\": \"A simple test schema\",\r\n \"label\": \"Simple Schema\",\r\n \"references\": [\r\n \"BisCore\",\r\n \"CoreCustomAttributes\",\r\n \"Formats\",\r\n \"Units\"\r\n ],\r\n \"itemCount\": 30,\r\n \"checkStubs\": [\r\n {\r\n \"item\": \"SimpleSchema.UnitSystem_Test\",\r\n \"properties\": {\r\n \"schemaItemType\": \"UnitSystem\",\r\n \"label\": \"Test\",\r\n \"description\": \"UnitSystem Test\"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.Phenomenon_Test\",\r\n \"properties\": {\r\n \"schemaItemType\": \"Phenomenon\",\r\n \"label\": \"Test\",\r\n \"description\": \"Phenomenon Test\",\r\n \"definition\": \"TEST\"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.Category_Test\",\r\n \"properties\": {\r\n \"schemaItemType\": \"PropertyCategory\",\r\n \"label\": \"Test\",\r\n \"description\": \"PropertyCategory Test\",\r\n \"priority\": 1000\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.Enumeration_Integer\",\r\n \"properties\": {\r\n \"schemaItemType\": \"Enumeration\",\r\n \"label\": \"Test\",\r\n \"description\": \"Enumeration Integer\",\r\n \"type\": \"int\",\r\n \"isStrict\": true,\r\n \"enumerators\": [\r\n {\r\n \"name\": \"Enumerator0\",\r\n \"value\": 0,\r\n \"label\": \"0\",\r\n \"description\": \"Enumerator 0\"\r\n },\r\n {\r\n \"name\": \"Enumerator1\",\r\n \"value\": 1,\r\n \"label\": \"1\",\r\n \"description\": \"Enumerator 1\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.Enumeration_String\",\r\n \"properties\": {\r\n \"schemaItemType\": \"Enumeration\",\r\n \"label\": \"Test\",\r\n \"description\": \"Enumeration String\",\r\n \"type\": \"string\",\r\n \"isStrict\": false,\r\n \"enumerators\": [\r\n {\r\n \"name\": \"Enumerator0\",\r\n \"value\": \"0\"\r\n },\r\n {\r\n \"name\": \"Enumerator1\",\r\n \"value\": \"1\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.Unit_Test1\",\r\n \"properties\": {\r\n \"schemaItemType\": \"Unit\",\r\n \"label\": \"Test1\",\r\n \"description\": \"Unit Test1\",\r\n \"phenomenon\": \"SimpleSchema.Phenomenon_Test\",\r\n \"unitSystem\": \"SimpleSchema.UnitSystem_Test\",\r\n \"definition\": \"TEST1\",\r\n \"numerator\": 10.0\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.Unit_Test2\",\r\n \"properties\": {\r\n \"schemaItemType\": \"Unit\",\r\n \"label\": \"Test2\",\r\n \"description\": \"Unit Test2\",\r\n \"phenomenon\": \"Units.TEMPERATURE\", \r\n \"unitSystem\": \"Units.USCUSTOM\",\r\n \"definition\": \"TEST2\",\r\n \"numerator\": 5.0,\r\n \"denominator\": 3.0,\r\n \"offset\": 0.01325\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.InvertedUnit_Test1\",\r\n \"properties\": {\r\n \"schemaItemType\": \"InvertedUnit\",\r\n \"label\": \"Test1\",\r\n \"description\": \"InvertedUnit Test1\",\r\n \"invertsUnit\": \"SimpleSchema.Unit_Test1\",\r\n \"unitSystem\": \"SimpleSchema.UnitSystem_Test\"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.InvertedUnit_Test2\",\r\n \"properties\": {\r\n \"schemaItemType\": \"InvertedUnit\",\r\n \"label\": \"Test2\",\r\n \"description\": \"InvertedUnit Test2\",\r\n \"invertsUnit\": \"Units.FT_PER_FT\",\r\n \"unitSystem\": \"Units.USCUSTOM\"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.Constant_Test1\",\r\n \"properties\": {\r\n \"schemaItemType\": \"Constant\",\r\n \"label\": \"Test1\",\r\n \"description\": \"Constant Test1\",\r\n \"phenomenon\": \"SimpleSchema.Phenomenon_Test\",\r\n \"definition\": \"TEST1\",\r\n \"numerator\": 1.0e3\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.Constant_Test2\",\r\n \"properties\": {\r\n \"schemaItemType\": \"Constant\",\r\n \"label\": \"Test2\",\r\n \"description\": \"Constant Test2\",\r\n \"phenomenon\": \"Units.ANGLE\",\r\n \"definition\": \"TEST2\",\r\n \"numerator\": 180.0,\r\n \"denominator\": 0.5\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.Format_Station\",\r\n \"properties\": {\r\n \"schemaItemType\": \"Format\",\r\n \"label\": \"Test\",\r\n \"description\": \"Format Station\",\r\n \"type\": \"Station\",\r\n \"precision\": 2,\r\n \"formatTraits\": [\r\n \"TrailZeroes\",\r\n \"KeepSingleZero\",\r\n \"KeepDecimalPoint\"\r\n ],\r\n \"thousandSeparator\": \" \",\r\n \"decimalSeparator\": \",\",\r\n \"stationSeparator\": \"+\",\r\n \"stationOffsetSize\": 3,\r\n \"minWidth\": 3\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.Format_Scientific\",\r\n \"properties\": {\r\n \"schemaItemType\": \"Format\",\r\n \"label\": \"Test\",\r\n \"description\": \"Format Scientific\",\r\n \"type\": \"Scientific\",\r\n \"scientificType\": \"Normalized\",\r\n \"precision\": 6,\r\n \"formatTraits\": [\r\n \"KeepSingleZero\"\r\n ],\r\n \"decimalSeparator\": \",\",\r\n \"thousandSeparator\": \" \"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.Format_Decimal\",\r\n \"properties\": {\r\n \"schemaItemType\": \"Format\",\r\n \"label\": \"Test\",\r\n \"description\": \"Format Decimal\",\r\n \"type\": \"Decimal\",\r\n \"precision\": 4,\r\n \"showSignOption\": \"NoSign\",\r\n \"formatTraits\": [\r\n \"KeepSingleZero\",\r\n \"KeepDecimalPoint\"\r\n ],\r\n \"thousandSeparator\": \" \",\r\n \"decimalSeparator\": \",\",\r\n \"minWidth\": 3,\r\n \"roundFactor\": 0.1\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.Format_Fractional\",\r\n \"properties\": {\r\n \"schemaItemType\": \"Format\",\r\n \"label\": \"Test\",\r\n \"description\": \"Format Fractional\",\r\n \"type\": \"Fractional\",\r\n \"precision\": 8,\r\n \"formatTraits\": [\r\n \"KeepSingleZero\",\r\n \"ShowUnitLabel\"\r\n ],\r\n \"uomSeparator\": \"\"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.KindOfQuantity_Test1\",\r\n \"properties\": {\r\n \"schemaItemType\": \"KindOfQuantity\",\r\n \"label\": \"Test1\",\r\n \"description\": \"KindOfQuantity Test1\"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.KindOfQuantity_Test2\",\r\n \"properties\": {\r\n \"schemaItemType\": \"KindOfQuantity\",\r\n \"label\": \"Test2\",\r\n \"description\": \"KindOfQuantity Test2\"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.StructClass_Test1\",\r\n \"properties\": {\r\n \"schemaItemType\": \"StructClass\",\r\n \"modifier\": \"Abstract\",\r\n \"label\": \"Test1\",\r\n \"description\": \"StructClass Test1\"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.StructClass_Test2\",\r\n \"properties\": {\r\n \"schemaItemType\": \"StructClass\",\r\n \"modifier\": \"Sealed\",\r\n \"baseClass\": \"SimpleSchema.StructClass_Test1\",\r\n \"label\": \"Test2\",\r\n \"description\": \"StructClass Test2\"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.CustomAttributeClass_Test1\",\r\n \"properties\": {\r\n \"schemaItemType\": \"CustomAttributeClass\",\r\n \"appliesTo\": \"AnyClass\",\r\n \"modifier\": \"Abstract\",\r\n \"label\": \"Test1\",\r\n \"description\": \"CustomAttributeClass Test1\"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.CustomAttributeClass_Test2\",\r\n \"properties\": {\r\n \"schemaItemType\": \"CustomAttributeClass\",\r\n \"appliesTo\": \"AnyProperty\",\r\n \"baseClass\": \"BisCore.CustomHandledProperty\",\r\n \"label\": \"Test2\",\r\n \"description\": \"CustomAttributeClass Test2\"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.CustomAttributeClass_Test3\",\r\n \"properties\": {\r\n \"schemaItemType\": \"CustomAttributeClass\",\r\n \"modifier\": \"Sealed\",\r\n \"appliesTo\": \"Any\",\r\n \"baseClass\": \"SimpleSchema.CustomAttributeClass_Test1\",\r\n \"label\": \"Test3\",\r\n \"description\": \"CustomAttributeClass Test3\"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.IMixin_Test1\",\r\n \"properties\": {\r\n \"schemaItemType\": \"Mixin\",\r\n \"appliesTo\": \"BisCore.Element\",\r\n \"label\": \"Test1\",\r\n \"description\": \"Mixin Test1\"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.IMixin_Test2\",\r\n \"properties\": {\r\n \"schemaItemType\": \"Mixin\",\r\n \"baseClass\": \"SimpleSchema.IMixin_Test1\",\r\n \"appliesTo\": \"BisCore.PhysicalElement\",\r\n \"label\": \"Test2\",\r\n \"description\": \"Mixin Test2\"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.EntityClass_Test1\",\r\n \"properties\": {\r\n \"schemaItemType\": \"EntityClass\",\r\n \"baseClass\": \"BisCore.PhysicalElement\",\r\n \"label\": \"Test1\",\r\n \"description\": \"EntityClass Test1\",\r\n \"mixins\": [\r\n \"SimpleSchema.IMixin_Test1\"\r\n ]\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.EntityClass_Test2\",\r\n \"properties\": {\r\n \"schemaItemType\": \"EntityClass\",\r\n \"modifier\": \"Abstract\",\r\n \"baseClass\": \"SimpleSchema.EntityClass_Test1\",\r\n \"label\": \"Test2\",\r\n \"description\": \"EntityClass Test2\",\r\n \"mixins\": [\r\n \"SimpleSchema.IMixin_Test2\"\r\n ]\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.EntityClass_Test3\",\r\n \"properties\": {\r\n \"schemaItemType\": \"EntityClass\",\r\n \"modifier\": \"Sealed\",\r\n \"baseClass\": \"SimpleSchema.EntityClass_Test2\",\r\n \"label\": \"Test3\",\r\n \"description\": \"EntityClass Test3\"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.EntityClass_Test3\",\r\n \"properties\": {\r\n \"schemaItemType\": \"EntityClass\",\r\n \"baseClass\": \"SimpleSchema.EntityClass_Test2\",\r\n \"label\": \"Test3\",\r\n \"description\": \"EntityClass Test3\"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.RelationshipClass_Test1\",\r\n \"properties\": {\r\n \"schemaItemType\": \"RelationshipClass\",\r\n \"modifier\": \"Sealed\",\r\n \"baseClass\": \"BisCore.ElementRefersToElements\",\r\n \"label\": \"Test1\",\r\n \"description\": \"RelationshipClass Test1\",\r\n \"strength\": \"Referencing\",\r\n \"strengthDirection\": \"Forward\"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.RelationshipClass_Test2\",\r\n \"properties\": {\r\n \"schemaItemType\": \"RelationshipClass\",\r\n \"modifier\": \"None\",\r\n \"baseClass\": \"BisCore.ModelModelsElement\",\r\n \"label\": \"Test2\",\r\n \"description\": \"RelationshipClass Test2\",\r\n \"strength\": \"Embedding\",\r\n \"strengthDirection\": \"Backward\"\r\n }\r\n }\r\n ],\r\n \"checkHierachy\": {\r\n \"derivedClass\": \"SimpleSchema.EntityClass_Test3\",\r\n \"baseClass\": \"SimpleSchema.IMixin_Test1\"\r\n },\r\n \"checkFullLoad\": [\r\n {\r\n \"item\": \"SimpleSchema.Format_Decimal\",\r\n \"properties\": {\r\n \"schemaItemType\": \"Format\",\r\n \"label\": \"Test\",\r\n \"description\": \"Format Decimal\",\r\n \"type\": \"Decimal\",\r\n \"precision\": 4,\r\n \"showSignOption\": \"NoSign\",\r\n \"formatTraits\": [\r\n \"KeepSingleZero\",\r\n \"KeepDecimalPoint\"\r\n ],\r\n \"thousandSeparator\": \" \",\r\n \"decimalSeparator\": \",\",\r\n \"minWidth\": 3,\r\n \"roundFactor\": 0.1,\r\n \"composite\": {\r\n \"spacer\": \"\",\r\n \"includeZero\": false,\r\n \"units\": [\r\n {\r\n \"name\": \"Units.G\",\r\n \"label\": \"g\"\r\n },\r\n {\r\n \"name\": \"Units.MG\",\r\n \"label\": \"mg\"\r\n }\r\n ]\r\n }\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.Format_Fractional\",\r\n \"properties\": {\r\n \"schemaItemType\": \"Format\",\r\n \"label\": \"Test\",\r\n \"description\": \"Format Fractional\",\r\n \"type\": \"Fractional\",\r\n \"precision\": 8,\r\n \"formatTraits\": [\r\n \"KeepSingleZero\",\r\n \"ShowUnitLabel\"\r\n ],\r\n \"uomSeparator\": \"\",\r\n \"composite\": {\r\n \"spacer\": \"\",\r\n \"units\": [\r\n {\r\n \"name\": \"SimpleSchema.Unit_Test1\",\r\n \"label\": \"test\"\r\n }\r\n ]\r\n }\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.KindOfQuantity_Test1\",\r\n \"properties\": {\r\n \"schemaItemType\": \"KindOfQuantity\",\r\n \"label\": \"Test1\",\r\n \"description\": \"KindOfQuantity Test1\",\r\n \"relativeError\": 0.001,\r\n \"persistenceUnit\": \"SimpleSchema.Unit_Test1\",\r\n \"presentationUnits\": [\r\n \"SimpleSchema.Format_Fractional(4)[SimpleSchema.Unit_Test1]\"\r\n ]\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.KindOfQuantity_Test2\",\r\n \"properties\": {\r\n \"schemaItemType\": \"KindOfQuantity\",\r\n \"label\": \"Test2\",\r\n \"description\": \"KindOfQuantity Test2\",\r\n \"relativeError\": 0.0001,\r\n \"persistenceUnit\": \"Units.MG\",\r\n \"presentationUnits\": [\r\n \"Formats.DefaultRealU[Units.MG]\",\r\n \"Formats.DefaultRealU(1)[Units.G]\"\r\n ]\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.StructClass_Test1\",\r\n \"properties\": {\r\n \"schemaItemType\": \"StructClass\",\r\n \"modifier\": \"Abstract\",\r\n \"label\": \"Test1\",\r\n \"description\": \"StructClass Test1\",\r\n \"properties\": [\r\n {\r\n \"name\": \"DoubleProperty\",\r\n \"type\": \"PrimitiveProperty\",\r\n \"category\": \"SimpleSchema.Category_Test\",\r\n \"label\": \"Double\",\r\n \"description\": \"Double Property\",\r\n \"typeName\": \"double\"\r\n },\r\n {\r\n \"name\": \"Point3dProperty\",\r\n \"type\": \"PrimitiveProperty\",\r\n \"isReadOnly\": true,\r\n \"label\": \"Point3\",\r\n \"description\": \"Point3 Property\",\r\n \"typeName\": \"point3d\",\r\n \"customAttributes\": [\r\n {\r\n \"className\": \"CoreCustomAttributes.HiddenProperty\"\r\n },\r\n {\r\n \"className\": \"BisCore.CustomHandledProperty\"\r\n }\r\n ]\r\n },\r\n {\r\n \"name\": \"LongArrayProperty\",\r\n \"type\": \"PrimitiveArrayProperty\",\r\n \"minOccurs\": 0,\r\n \"maxOccurs\": 52,\r\n \"label\": \"LongArray\",\r\n \"description\": \"LongArray Property\",\r\n \"typeName\": \"long\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.StructClass_Test2\",\r\n \"properties\": {\r\n \"schemaItemType\": \"StructClass\",\r\n \"modifier\": \"Sealed\",\r\n \"baseClass\": \"SimpleSchema.StructClass_Test1\",\r\n \"label\": \"Test2\",\r\n \"description\": \"StructClass Test2\",\r\n \"customAttributes\": [\r\n {\r\n \"className\": \"BisCore.ClassHasHandler\"\r\n }\r\n ],\r\n \"properties\": [\r\n {\r\n \"name\": \"DateTimeProperty\",\r\n \"type\": \"PrimitiveProperty\",\r\n \"kindOfQuantity\": \"SimpleSchema.KindOfQuantity_Test1\",\r\n \"label\": \"DateTime\",\r\n \"description\": \"DateTime Property\",\r\n \"typeName\": \"dateTime\"\r\n },\r\n {\r\n \"name\": \"BooleanProperty\",\r\n \"type\": \"PrimitiveProperty\",\r\n \"priority\": 1001,\r\n \"label\": \"Boolean\",\r\n \"description\": \"Boolean Property\",\r\n \"typeName\": \"boolean\"\r\n },\r\n {\r\n \"name\": \"StringEnumerationArrayProperty\",\r\n \"type\": \"PrimitiveArrayProperty\",\r\n \"minOccurs\": 0,\r\n \"maxOccurs\": 3,\r\n \"label\": \"StringEnumerationArray\",\r\n \"description\": \"StringEnumerationArray Property\",\r\n \"typeName\": \"SimpleSchema.Enumeration_String\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.CustomAttributeClass_Test1\",\r\n \"properties\": {\r\n \"schemaItemType\": \"CustomAttributeClass\",\r\n \"appliesTo\": \"AnyClass\",\r\n \"modifier\": \"Abstract\",\r\n \"label\": \"Test1\",\r\n \"description\": \"CustomAttributeClass Test1\",\r\n \"properties\": [\r\n {\r\n \"name\": \"StringProperty\",\r\n \"type\": \"PrimitiveProperty\",\r\n \"label\": \"String\",\r\n \"description\": \"String Property\",\r\n \"extendedTypeName\": \"Json\",\r\n \"minLength\": 1,\r\n \"maxLength\": 150,\r\n \"typeName\": \"string\"\r\n },\r\n {\r\n \"name\": \"StructProperty\",\r\n \"type\": \"StructProperty\",\r\n \"label\": \"Struct\",\r\n \"description\": \"Struct Property\",\r\n \"typeName\": \"SimpleSchema.StructClass_Test2\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.CustomAttributeClass_Test2\",\r\n \"properties\": {\r\n \"schemaItemType\": \"CustomAttributeClass\",\r\n \"appliesTo\": \"AnyProperty\",\r\n \"baseClass\": \"BisCore.CustomHandledProperty\",\r\n \"label\": \"Test2\",\r\n \"description\": \"CustomAttributeClass Test2\",\r\n \"customAttributes\": [\r\n {\r\n \"className\": \"SimpleSchema.CustomAttributeClass_Test3\"\r\n }\r\n ],\r\n \"properties\": [\r\n {\r\n \"name\": \"BinaryProperty\",\r\n \"type\": \"PrimitiveProperty\",\r\n \"label\": \"Binary\",\r\n \"description\": \"Binary Property\",\r\n \"typeName\": \"binary\"\r\n },\r\n {\r\n \"name\": \"IntegerArrayProperty\",\r\n \"type\": \"PrimitiveArrayProperty\",\r\n \"minOccurs\": 0,\r\n \"maxOccurs\": 150,\r\n \"maxValue\": 1000,\r\n \"label\": \"IntegerArray\",\r\n \"description\": \"IntegerArray Property\",\r\n \"typeName\": \"int\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.CustomAttributeClass_Test3\",\r\n \"properties\": {\r\n \"schemaItemType\": \"CustomAttributeClass\",\r\n \"modifier\": \"Sealed\",\r\n \"appliesTo\": \"Any\",\r\n \"baseClass\": \"SimpleSchema.CustomAttributeClass_Test1\",\r\n \"label\": \"Test3\",\r\n \"description\": \"CustomAttributeClass Test3\",\r\n \"properties\": [\r\n {\r\n \"name\": \"IntegerProperty\",\r\n \"type\": \"PrimitiveProperty\",\r\n \"minValue\": 1,\r\n \"maxValue\": 101,\r\n \"label\": \"Integer\",\r\n \"description\": \"Integer Property\",\r\n \"typeName\": \"int\",\r\n \"customAttributes\": [\r\n {\r\n \"className\": \"BisCore.AutoHandledProperty\",\r\n \"StatementTypes\": 3\r\n }\r\n ]\r\n },\r\n {\r\n \"name\": \"IntegerEnumerationArray\",\r\n \"type\": \"PrimitiveArrayProperty\",\r\n \"label\": \"IntegerEnumerationArray\",\r\n \"description\": \"IntegerEnumerationArray Property\",\r\n \"minOccurs\": 0,\r\n \"maxOccurs\": 2147483647,\r\n \"typeName\": \"BisCore.SectionType\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.IMixin_Test1\",\r\n \"properties\": {\r\n \"schemaItemType\": \"Mixin\",\r\n \"appliesTo\": \"BisCore.Element\",\r\n \"label\": \"Test1\",\r\n \"description\": \"Mixin Test1\",\r\n \"properties\": [\r\n {\r\n \"name\": \"LongProperty\",\r\n \"type\": \"PrimitiveProperty\",\r\n \"category\": \"SimpleSchema.Category_Test\",\r\n \"label\": \"Long\",\r\n \"description\": \"Long Property\",\r\n \"typeName\": \"long\"\r\n },\r\n {\r\n \"name\": \"BooleanArrayProperty\",\r\n \"type\": \"PrimitiveArrayProperty\",\r\n \"minOccurs\": 1,\r\n \"maxOccurs\": 5,\r\n \"label\": \"BooleanArray\",\r\n \"description\": \"BooleanArray Property\",\r\n \"typeName\": \"boolean\"\r\n }\r\n ],\r\n \"customAttributes\": [\r\n {\r\n \"className\": \"SimpleSchema.CustomAttributeClass_Test3\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.IMixin_Test2\",\r\n \"properties\": {\r\n \"schemaItemType\": \"Mixin\",\r\n \"baseClass\": \"SimpleSchema.IMixin_Test1\",\r\n \"appliesTo\": \"BisCore.PhysicalElement\",\r\n \"label\": \"Test2\",\r\n \"description\": \"Mixin Test2\",\r\n \"properties\": [\r\n {\r\n \"name\": \"IGeometryProperty\",\r\n \"type\": \"PrimitiveProperty\",\r\n \"label\": \"IGeometry\",\r\n \"description\": \"IGeometry Property\",\r\n \"typeName\": \"Bentley.Geometry.Common.IGeometry\",\r\n \"customAttributes\": [\r\n {\r\n \"className\": \"CoreCustomAttributes.Deprecated\",\r\n \"Description\": \"Deprecated renamed property.\"\r\n },\r\n {\r\n \"className\": \"CoreCustomAttributes.HiddenProperty\"\r\n }\r\n ]\r\n },\r\n {\r\n \"name\": \"DoubleArrayProperty\",\r\n \"type\": \"PrimitiveArrayProperty\",\r\n \"minValue\": 0.1,\r\n \"maxValue\": 9.9,\r\n \"maxOccurs\": 10,\r\n \"minOccurs\": 2,\r\n \"label\": \"DoubleArray\",\r\n \"description\": \"DoubleArray Property\",\r\n \"typeName\": \"double\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.EntityClass_Test3\",\r\n \"properties\": {\r\n \"schemaItemType\": \"EntityClass\",\r\n \"modifier\": \"Sealed\",\r\n \"baseClass\": \"SimpleSchema.EntityClass_Test2\",\r\n \"label\": \"Test3\",\r\n \"description\": \"EntityClass Test3\",\r\n \"properties\": [\r\n {\r\n \"name\": \"StringEnumerationProperty\",\r\n \"type\": \"PrimitiveProperty\",\r\n \"label\": \"StringEnumeration\",\r\n \"description\": \"StringEnumeration Property\",\r\n \"typeName\": \"CoreCustomAttributes.ProductionStatusValue\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.RelationshipClass_Test1\",\r\n \"properties\": {\r\n \"schemaItemType\": \"RelationshipClass\",\r\n \"modifier\": \"Sealed\",\r\n \"baseClass\": \"BisCore.ElementRefersToElements\",\r\n \"label\": \"Test1\",\r\n \"description\": \"RelationshipClass Test1\",\r\n \"strength\": \"Referencing\",\r\n \"strengthDirection\": \"Forward\",\r\n \"customAttributes\": [\r\n {\r\n \"className\": \"CoreCustomAttributes.HiddenClass\",\r\n \"Show\": false\r\n }\r\n ],\r\n \"properties\": [\r\n {\r\n \"name\": \"Point2dArrayProperty\",\r\n \"type\": \"PrimitiveArrayProperty\",\r\n \"minOccurs\": 5,\r\n \"maxOccurs\": 75,\r\n \"label\": \"Point2dArray\",\r\n \"description\": \"Point2dArray Property\",\r\n \"typeName\": \"point2d\"\r\n },\r\n {\r\n \"name\": \"Point3dArrayProperty\",\r\n \"type\": \"PrimitiveArrayProperty\",\r\n \"minOccurs\": 3,\r\n \"maxOccurs\": 13,\r\n \"label\": \"Point3dArray\",\r\n \"description\": \"Point3dArray Property\",\r\n \"typeName\": \"point3d\"\r\n }\r\n ],\r\n \"source\": {\r\n \"multiplicity\": \"(0..*)\",\r\n \"roleLabel\": \"refers to\",\r\n \"polymorphic\": true,\r\n \"abstractConstraint\": \"BisCore.Element\",\r\n \"constraintClasses\": [\r\n \"BisCore.Element\"\r\n ],\r\n \"customAttributes\": [\r\n {\r\n \"className\": \"SimpleSchema.CustomAttributeClass_Test4\",\r\n \"StringProperty\": \"Source\"\r\n }\r\n ]\r\n },\r\n \"target\": {\r\n \"multiplicity\": \"(0..*)\",\r\n \"roleLabel\": \"is referenced by\",\r\n \"polymorphic\": true,\r\n \"abstractConstraint\": \"BisCore.Element\",\r\n \"constraintClasses\": [\r\n \"BisCore.Element\"\r\n ],\r\n \"customAttributes\": [\r\n {\r\n \"className\": \"SimpleSchema.CustomAttributeClass_Test4\",\r\n \"StringProperty\": \"Target\"\r\n }\r\n ]\r\n }\r\n }\r\n },\r\n {\r\n \"item\": \"BisCore.Drawing\",\r\n \"properties\": {\r\n \"schemaItemType\": \"EntityClass\",\r\n \"baseClass\": \"BisCore.Document\",\r\n \"description\": \"A bis:Drawing is a bis:Document of a 2D drawing.\",\r\n \"customAttributes\": [\r\n {\r\n \"className\": \"BisCore.ClassHasHandler\"\r\n }\r\n ],\r\n \"mixins\": [\r\n \"BisCore.ISubModeledElement\"\r\n ]\r\n }\r\n }\r\n ]\r\n }\r\n ]\r\n}"]}
|
|
1
|
+
{"version":3,"file":"simple.config.js","sourceRoot":"","sources":["../../../../../../src/test/assets/IncrementalSchemaLocater/configs/simple.config.ts"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable @typescript-eslint/naming-convention */\r\nexport default {\r\n \"label\": \"Simple Profile iModel\",\r\n \"bimFile\": \"SimpleIModel.bim\",\r\n \"schemas\": [\r\n {\r\n \"name\": \"SimpleSchema\",\r\n \"description\": \"A simple test schema\",\r\n \"label\": \"Simple Schema\",\r\n \"references\": [\r\n \"BisCore\",\r\n \"CoreCustomAttributes\",\r\n \"Formats\",\r\n \"Units\"\r\n ],\r\n \"itemCount\": 30,\r\n \"checkStubs\": [\r\n {\r\n \"item\": \"SimpleSchema.UnitSystem_Test\",\r\n \"properties\": {\r\n \"schemaItemType\": \"UnitSystem\",\r\n \"label\": \"Test\",\r\n \"description\": \"UnitSystem Test\"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.Phenomenon_Test\",\r\n \"properties\": {\r\n \"schemaItemType\": \"Phenomenon\",\r\n \"label\": \"Test\",\r\n \"description\": \"Phenomenon Test\",\r\n \"definition\": \"u:NUMBER\"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.Category_Test\",\r\n \"properties\": {\r\n \"schemaItemType\": \"PropertyCategory\",\r\n \"label\": \"Test\",\r\n \"description\": \"PropertyCategory Test\",\r\n \"priority\": 1000\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.Enumeration_Integer\",\r\n \"properties\": {\r\n \"schemaItemType\": \"Enumeration\",\r\n \"label\": \"Test\",\r\n \"description\": \"Enumeration Integer\",\r\n \"type\": \"int\",\r\n \"isStrict\": true,\r\n \"enumerators\": [\r\n {\r\n \"name\": \"Enumerator0\",\r\n \"value\": 0,\r\n \"label\": \"0\",\r\n \"description\": \"Enumerator 0\"\r\n },\r\n {\r\n \"name\": \"Enumerator1\",\r\n \"value\": 1,\r\n \"label\": \"1\",\r\n \"description\": \"Enumerator 1\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.Enumeration_String\",\r\n \"properties\": {\r\n \"schemaItemType\": \"Enumeration\",\r\n \"label\": \"Test\",\r\n \"description\": \"Enumeration String\",\r\n \"type\": \"string\",\r\n \"isStrict\": false,\r\n \"enumerators\": [\r\n {\r\n \"name\": \"Enumerator0\",\r\n \"value\": \"0\"\r\n },\r\n {\r\n \"name\": \"Enumerator1\",\r\n \"value\": \"1\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.Unit_Test1\",\r\n \"properties\": {\r\n \"schemaItemType\": \"Unit\",\r\n \"label\": \"Test1\",\r\n \"description\": \"Unit Test1\",\r\n \"phenomenon\": \"SimpleSchema.Phenomenon_Test\",\r\n \"unitSystem\": \"SimpleSchema.UnitSystem_Test\",\r\n \"definition\": \"u:ONE\",\r\n \"numerator\": 10.0\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.Unit_Test2\",\r\n \"properties\": {\r\n \"schemaItemType\": \"Unit\",\r\n \"label\": \"Test2\",\r\n \"description\": \"Unit Test2\",\r\n \"phenomenon\": \"Units.TEMPERATURE\",\r\n \"unitSystem\": \"Units.USCUSTOM\",\r\n \"definition\": \"u:ONE\",\r\n \"numerator\": 5.0,\r\n \"denominator\": 3.0,\r\n \"offset\": 0.01325\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.InvertedUnit_Test1\",\r\n \"properties\": {\r\n \"schemaItemType\": \"InvertedUnit\",\r\n \"label\": \"Test1\",\r\n \"description\": \"InvertedUnit Test1\",\r\n \"invertsUnit\": \"SimpleSchema.Unit_Test1\",\r\n \"unitSystem\": \"SimpleSchema.UnitSystem_Test\"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.InvertedUnit_Test2\",\r\n \"properties\": {\r\n \"schemaItemType\": \"InvertedUnit\",\r\n \"label\": \"Test2\",\r\n \"description\": \"InvertedUnit Test2\",\r\n \"invertsUnit\": \"Units.FT_PER_FT\",\r\n \"unitSystem\": \"Units.USCUSTOM\"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.Constant_Test1\",\r\n \"properties\": {\r\n \"schemaItemType\": \"Constant\",\r\n \"label\": \"Test1\",\r\n \"description\": \"Constant Test1\",\r\n \"phenomenon\": \"SimpleSchema.Phenomenon_Test\",\r\n \"definition\": \"Unit_Test1\",\r\n \"numerator\": 1.0e3\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.Constant_Test2\",\r\n \"properties\": {\r\n \"schemaItemType\": \"Constant\",\r\n \"label\": \"Test2\",\r\n \"description\": \"Constant Test2\",\r\n \"phenomenon\": \"Units.ANGLE\",\r\n \"definition\": \"Unit_Test2\",\r\n \"numerator\": 180.0,\r\n \"denominator\": 0.5\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.Format_Station\",\r\n \"properties\": {\r\n \"schemaItemType\": \"Format\",\r\n \"label\": \"Test\",\r\n \"description\": \"Format Station\",\r\n \"type\": \"Station\",\r\n \"precision\": 2,\r\n \"formatTraits\": [\r\n \"TrailZeroes\",\r\n \"KeepSingleZero\",\r\n \"KeepDecimalPoint\"\r\n ],\r\n \"thousandSeparator\": \" \",\r\n \"decimalSeparator\": \",\",\r\n \"stationSeparator\": \"+\",\r\n \"stationOffsetSize\": 3,\r\n \"minWidth\": 3\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.Format_Scientific\",\r\n \"properties\": {\r\n \"schemaItemType\": \"Format\",\r\n \"label\": \"Test\",\r\n \"description\": \"Format Scientific\",\r\n \"type\": \"Scientific\",\r\n \"scientificType\": \"Normalized\",\r\n \"precision\": 6,\r\n \"formatTraits\": [\r\n \"KeepSingleZero\"\r\n ],\r\n \"decimalSeparator\": \",\",\r\n \"thousandSeparator\": \" \"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.Format_Decimal\",\r\n \"properties\": {\r\n \"schemaItemType\": \"Format\",\r\n \"label\": \"Test\",\r\n \"description\": \"Format Decimal\",\r\n \"type\": \"Decimal\",\r\n \"precision\": 4,\r\n \"showSignOption\": \"NoSign\",\r\n \"formatTraits\": [\r\n \"KeepSingleZero\",\r\n \"KeepDecimalPoint\"\r\n ],\r\n \"thousandSeparator\": \" \",\r\n \"decimalSeparator\": \",\",\r\n \"minWidth\": 3,\r\n \"roundFactor\": 0.1\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.Format_Fractional\",\r\n \"properties\": {\r\n \"schemaItemType\": \"Format\",\r\n \"label\": \"Test\",\r\n \"description\": \"Format Fractional\",\r\n \"type\": \"Fractional\",\r\n \"precision\": 8,\r\n \"formatTraits\": [\r\n \"KeepSingleZero\",\r\n \"ShowUnitLabel\"\r\n ],\r\n \"uomSeparator\": \"\"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.KindOfQuantity_Test1\",\r\n \"properties\": {\r\n \"schemaItemType\": \"KindOfQuantity\",\r\n \"label\": \"Test1\",\r\n \"description\": \"KindOfQuantity Test1\"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.KindOfQuantity_Test2\",\r\n \"properties\": {\r\n \"schemaItemType\": \"KindOfQuantity\",\r\n \"label\": \"Test2\",\r\n \"description\": \"KindOfQuantity Test2\"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.StructClass_Test1\",\r\n \"properties\": {\r\n \"schemaItemType\": \"StructClass\",\r\n \"modifier\": \"Abstract\",\r\n \"label\": \"Test1\",\r\n \"description\": \"StructClass Test1\"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.StructClass_Test2\",\r\n \"properties\": {\r\n \"schemaItemType\": \"StructClass\",\r\n \"modifier\": \"Sealed\",\r\n \"baseClass\": \"SimpleSchema.StructClass_Test1\",\r\n \"label\": \"Test2\",\r\n \"description\": \"StructClass Test2\"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.CustomAttributeClass_Test1\",\r\n \"properties\": {\r\n \"schemaItemType\": \"CustomAttributeClass\",\r\n \"appliesTo\": \"AnyClass\",\r\n \"modifier\": \"Abstract\",\r\n \"label\": \"Test1\",\r\n \"description\": \"CustomAttributeClass Test1\"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.CustomAttributeClass_Test2\",\r\n \"properties\": {\r\n \"schemaItemType\": \"CustomAttributeClass\",\r\n \"appliesTo\": \"AnyProperty\",\r\n \"baseClass\": \"BisCore.CustomHandledProperty\",\r\n \"label\": \"Test2\",\r\n \"description\": \"CustomAttributeClass Test2\"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.CustomAttributeClass_Test3\",\r\n \"properties\": {\r\n \"schemaItemType\": \"CustomAttributeClass\",\r\n \"modifier\": \"Sealed\",\r\n \"appliesTo\": \"Any\",\r\n \"baseClass\": \"SimpleSchema.CustomAttributeClass_Test1\",\r\n \"label\": \"Test3\",\r\n \"description\": \"CustomAttributeClass Test3\"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.IMixin_Test1\",\r\n \"properties\": {\r\n \"schemaItemType\": \"Mixin\",\r\n \"appliesTo\": \"BisCore.Element\",\r\n \"label\": \"Test1\",\r\n \"description\": \"Mixin Test1\"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.IMixin_Test2\",\r\n \"properties\": {\r\n \"schemaItemType\": \"Mixin\",\r\n \"baseClass\": \"SimpleSchema.IMixin_Test1\",\r\n \"appliesTo\": \"BisCore.PhysicalElement\",\r\n \"label\": \"Test2\",\r\n \"description\": \"Mixin Test2\"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.EntityClass_Test1\",\r\n \"properties\": {\r\n \"schemaItemType\": \"EntityClass\",\r\n \"baseClass\": \"BisCore.PhysicalElement\",\r\n \"label\": \"Test1\",\r\n \"description\": \"EntityClass Test1\",\r\n \"mixins\": [\r\n \"SimpleSchema.IMixin_Test1\"\r\n ]\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.EntityClass_Test2\",\r\n \"properties\": {\r\n \"schemaItemType\": \"EntityClass\",\r\n \"modifier\": \"Abstract\",\r\n \"baseClass\": \"SimpleSchema.EntityClass_Test1\",\r\n \"label\": \"Test2\",\r\n \"description\": \"EntityClass Test2\",\r\n \"mixins\": [\r\n \"SimpleSchema.IMixin_Test2\"\r\n ]\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.EntityClass_Test3\",\r\n \"properties\": {\r\n \"schemaItemType\": \"EntityClass\",\r\n \"modifier\": \"Sealed\",\r\n \"baseClass\": \"SimpleSchema.EntityClass_Test2\",\r\n \"label\": \"Test3\",\r\n \"description\": \"EntityClass Test3\"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.EntityClass_Test3\",\r\n \"properties\": {\r\n \"schemaItemType\": \"EntityClass\",\r\n \"baseClass\": \"SimpleSchema.EntityClass_Test2\",\r\n \"label\": \"Test3\",\r\n \"description\": \"EntityClass Test3\"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.RelationshipClass_Test1\",\r\n \"properties\": {\r\n \"schemaItemType\": \"RelationshipClass\",\r\n \"modifier\": \"Sealed\",\r\n \"baseClass\": \"BisCore.ElementRefersToElements\",\r\n \"label\": \"Test1\",\r\n \"description\": \"RelationshipClass Test1\",\r\n \"strength\": \"Referencing\",\r\n \"strengthDirection\": \"Forward\"\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.RelationshipClass_Test2\",\r\n \"properties\": {\r\n \"schemaItemType\": \"RelationshipClass\",\r\n \"modifier\": \"None\",\r\n \"baseClass\": \"BisCore.ModelModelsElement\",\r\n \"label\": \"Test2\",\r\n \"description\": \"RelationshipClass Test2\",\r\n \"strength\": \"Embedding\",\r\n \"strengthDirection\": \"Backward\"\r\n }\r\n }\r\n ],\r\n \"checkHierachy\": {\r\n \"derivedClass\": \"SimpleSchema.EntityClass_Test3\",\r\n \"baseClass\": \"SimpleSchema.IMixin_Test1\"\r\n },\r\n \"checkFullLoad\": [\r\n {\r\n \"item\": \"SimpleSchema.Format_Decimal\",\r\n \"properties\": {\r\n \"schemaItemType\": \"Format\",\r\n \"label\": \"Test\",\r\n \"description\": \"Format Decimal\",\r\n \"type\": \"Decimal\",\r\n \"precision\": 4,\r\n \"showSignOption\": \"NoSign\",\r\n \"formatTraits\": [\r\n \"KeepSingleZero\",\r\n \"KeepDecimalPoint\"\r\n ],\r\n \"thousandSeparator\": \" \",\r\n \"decimalSeparator\": \",\",\r\n \"minWidth\": 3,\r\n \"roundFactor\": 0.1,\r\n \"composite\": {\r\n \"spacer\": \"\",\r\n \"includeZero\": false,\r\n \"units\": [\r\n {\r\n \"name\": \"Units.G\",\r\n \"label\": \"g\"\r\n },\r\n {\r\n \"name\": \"Units.MG\",\r\n \"label\": \"mg\"\r\n }\r\n ]\r\n }\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.Format_Fractional\",\r\n \"properties\": {\r\n \"schemaItemType\": \"Format\",\r\n \"label\": \"Test\",\r\n \"description\": \"Format Fractional\",\r\n \"type\": \"Fractional\",\r\n \"precision\": 8,\r\n \"formatTraits\": [\r\n \"KeepSingleZero\",\r\n \"ShowUnitLabel\"\r\n ],\r\n \"uomSeparator\": \"\",\r\n \"composite\": {\r\n \"spacer\": \"\",\r\n \"units\": [\r\n {\r\n \"name\": \"SimpleSchema.Unit_Test1\",\r\n \"label\": \"test\"\r\n }\r\n ]\r\n }\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.KindOfQuantity_Test1\",\r\n \"properties\": {\r\n \"schemaItemType\": \"KindOfQuantity\",\r\n \"label\": \"Test1\",\r\n \"description\": \"KindOfQuantity Test1\",\r\n \"relativeError\": 0.001,\r\n \"persistenceUnit\": \"SimpleSchema.Unit_Test1\",\r\n \"presentationUnits\": [\r\n \"SimpleSchema.Format_Fractional(4)[SimpleSchema.Unit_Test1]\"\r\n ]\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.KindOfQuantity_Test2\",\r\n \"properties\": {\r\n \"schemaItemType\": \"KindOfQuantity\",\r\n \"label\": \"Test2\",\r\n \"description\": \"KindOfQuantity Test2\",\r\n \"relativeError\": 0.0001,\r\n \"persistenceUnit\": \"Units.MG\",\r\n \"presentationUnits\": [\r\n \"Formats.DefaultRealU[Units.MG]\",\r\n \"Formats.DefaultRealU(1)[Units.G]\"\r\n ]\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.StructClass_Test1\",\r\n \"properties\": {\r\n \"schemaItemType\": \"StructClass\",\r\n \"modifier\": \"Abstract\",\r\n \"label\": \"Test1\",\r\n \"description\": \"StructClass Test1\",\r\n \"properties\": [\r\n {\r\n \"name\": \"DoubleProperty\",\r\n \"type\": \"PrimitiveProperty\",\r\n \"category\": \"SimpleSchema.Category_Test\",\r\n \"label\": \"Double\",\r\n \"description\": \"Double Property\",\r\n \"typeName\": \"double\"\r\n },\r\n {\r\n \"name\": \"Point3dProperty\",\r\n \"type\": \"PrimitiveProperty\",\r\n \"isReadOnly\": true,\r\n \"label\": \"Point3\",\r\n \"description\": \"Point3 Property\",\r\n \"typeName\": \"point3d\",\r\n \"customAttributes\": [\r\n {\r\n \"className\": \"CoreCustomAttributes.HiddenProperty\"\r\n },\r\n {\r\n \"className\": \"BisCore.CustomHandledProperty\"\r\n }\r\n ]\r\n },\r\n {\r\n \"name\": \"LongArrayProperty\",\r\n \"type\": \"PrimitiveArrayProperty\",\r\n \"minOccurs\": 0,\r\n \"maxOccurs\": 52,\r\n \"label\": \"LongArray\",\r\n \"description\": \"LongArray Property\",\r\n \"typeName\": \"long\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.StructClass_Test2\",\r\n \"properties\": {\r\n \"schemaItemType\": \"StructClass\",\r\n \"modifier\": \"Sealed\",\r\n \"baseClass\": \"SimpleSchema.StructClass_Test1\",\r\n \"label\": \"Test2\",\r\n \"description\": \"StructClass Test2\",\r\n \"customAttributes\": [\r\n {\r\n \"className\": \"BisCore.ClassHasHandler\"\r\n }\r\n ],\r\n \"properties\": [\r\n {\r\n \"name\": \"DateTimeProperty\",\r\n \"type\": \"PrimitiveProperty\",\r\n \"kindOfQuantity\": \"SimpleSchema.KindOfQuantity_Test1\",\r\n \"label\": \"DateTime\",\r\n \"description\": \"DateTime Property\",\r\n \"typeName\": \"dateTime\"\r\n },\r\n {\r\n \"name\": \"BooleanProperty\",\r\n \"type\": \"PrimitiveProperty\",\r\n \"priority\": 1001,\r\n \"label\": \"Boolean\",\r\n \"description\": \"Boolean Property\",\r\n \"typeName\": \"boolean\"\r\n },\r\n {\r\n \"name\": \"StringEnumerationArrayProperty\",\r\n \"type\": \"PrimitiveArrayProperty\",\r\n \"minOccurs\": 0,\r\n \"maxOccurs\": 3,\r\n \"label\": \"StringEnumerationArray\",\r\n \"description\": \"StringEnumerationArray Property\",\r\n \"typeName\": \"SimpleSchema.Enumeration_String\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.CustomAttributeClass_Test1\",\r\n \"properties\": {\r\n \"schemaItemType\": \"CustomAttributeClass\",\r\n \"appliesTo\": \"AnyClass\",\r\n \"modifier\": \"Abstract\",\r\n \"label\": \"Test1\",\r\n \"description\": \"CustomAttributeClass Test1\",\r\n \"properties\": [\r\n {\r\n \"name\": \"StringProperty\",\r\n \"type\": \"PrimitiveProperty\",\r\n \"label\": \"String\",\r\n \"description\": \"String Property\",\r\n \"extendedTypeName\": \"Json\",\r\n \"minLength\": 1,\r\n \"maxLength\": 150,\r\n \"typeName\": \"string\"\r\n },\r\n {\r\n \"name\": \"StructProperty\",\r\n \"type\": \"StructProperty\",\r\n \"label\": \"Struct\",\r\n \"description\": \"Struct Property\",\r\n \"typeName\": \"SimpleSchema.StructClass_Test2\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.CustomAttributeClass_Test2\",\r\n \"properties\": {\r\n \"schemaItemType\": \"CustomAttributeClass\",\r\n \"appliesTo\": \"AnyProperty\",\r\n \"baseClass\": \"BisCore.CustomHandledProperty\",\r\n \"label\": \"Test2\",\r\n \"description\": \"CustomAttributeClass Test2\",\r\n \"customAttributes\": [\r\n {\r\n \"className\": \"SimpleSchema.CustomAttributeClass_Test3\"\r\n }\r\n ],\r\n \"properties\": [\r\n {\r\n \"name\": \"BinaryProperty\",\r\n \"type\": \"PrimitiveProperty\",\r\n \"label\": \"Binary\",\r\n \"description\": \"Binary Property\",\r\n \"typeName\": \"binary\"\r\n },\r\n {\r\n \"name\": \"IntegerArrayProperty\",\r\n \"type\": \"PrimitiveArrayProperty\",\r\n \"minOccurs\": 0,\r\n \"maxOccurs\": 150,\r\n \"maxValue\": 1000,\r\n \"label\": \"IntegerArray\",\r\n \"description\": \"IntegerArray Property\",\r\n \"typeName\": \"int\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.CustomAttributeClass_Test3\",\r\n \"properties\": {\r\n \"schemaItemType\": \"CustomAttributeClass\",\r\n \"modifier\": \"Sealed\",\r\n \"appliesTo\": \"Any\",\r\n \"baseClass\": \"SimpleSchema.CustomAttributeClass_Test1\",\r\n \"label\": \"Test3\",\r\n \"description\": \"CustomAttributeClass Test3\",\r\n \"properties\": [\r\n {\r\n \"name\": \"IntegerProperty\",\r\n \"type\": \"PrimitiveProperty\",\r\n \"minValue\": 1,\r\n \"maxValue\": 101,\r\n \"label\": \"Integer\",\r\n \"description\": \"Integer Property\",\r\n \"typeName\": \"int\",\r\n \"customAttributes\": [\r\n {\r\n \"className\": \"BisCore.AutoHandledProperty\",\r\n \"StatementTypes\": 3\r\n }\r\n ]\r\n },\r\n {\r\n \"name\": \"IntegerEnumerationArray\",\r\n \"type\": \"PrimitiveArrayProperty\",\r\n \"label\": \"IntegerEnumerationArray\",\r\n \"description\": \"IntegerEnumerationArray Property\",\r\n \"minOccurs\": 0,\r\n \"maxOccurs\": 2147483647,\r\n \"typeName\": \"BisCore.SectionType\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.IMixin_Test1\",\r\n \"properties\": {\r\n \"schemaItemType\": \"Mixin\",\r\n \"appliesTo\": \"BisCore.Element\",\r\n \"label\": \"Test1\",\r\n \"description\": \"Mixin Test1\",\r\n \"properties\": [\r\n {\r\n \"name\": \"LongProperty\",\r\n \"type\": \"PrimitiveProperty\",\r\n \"category\": \"SimpleSchema.Category_Test\",\r\n \"label\": \"Long\",\r\n \"description\": \"Long Property\",\r\n \"typeName\": \"long\"\r\n },\r\n {\r\n \"name\": \"BooleanArrayProperty\",\r\n \"type\": \"PrimitiveArrayProperty\",\r\n \"minOccurs\": 1,\r\n \"maxOccurs\": 5,\r\n \"label\": \"BooleanArray\",\r\n \"description\": \"BooleanArray Property\",\r\n \"typeName\": \"boolean\"\r\n }\r\n ],\r\n \"customAttributes\": [\r\n {\r\n \"className\": \"SimpleSchema.CustomAttributeClass_Test3\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.IMixin_Test2\",\r\n \"properties\": {\r\n \"schemaItemType\": \"Mixin\",\r\n \"baseClass\": \"SimpleSchema.IMixin_Test1\",\r\n \"appliesTo\": \"BisCore.PhysicalElement\",\r\n \"label\": \"Test2\",\r\n \"description\": \"Mixin Test2\",\r\n \"properties\": [\r\n {\r\n \"name\": \"IGeometryProperty\",\r\n \"type\": \"PrimitiveProperty\",\r\n \"label\": \"IGeometry\",\r\n \"description\": \"IGeometry Property\",\r\n \"typeName\": \"Bentley.Geometry.Common.IGeometry\",\r\n \"customAttributes\": [\r\n {\r\n \"className\": \"CoreCustomAttributes.Deprecated\",\r\n \"Description\": \"Deprecated renamed property.\"\r\n },\r\n {\r\n \"className\": \"CoreCustomAttributes.HiddenProperty\"\r\n }\r\n ]\r\n },\r\n {\r\n \"name\": \"DoubleArrayProperty\",\r\n \"type\": \"PrimitiveArrayProperty\",\r\n \"minValue\": 0.1,\r\n \"maxValue\": 9.9,\r\n \"maxOccurs\": 10,\r\n \"minOccurs\": 2,\r\n \"label\": \"DoubleArray\",\r\n \"description\": \"DoubleArray Property\",\r\n \"typeName\": \"double\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.EntityClass_Test3\",\r\n \"properties\": {\r\n \"schemaItemType\": \"EntityClass\",\r\n \"modifier\": \"Sealed\",\r\n \"baseClass\": \"SimpleSchema.EntityClass_Test2\",\r\n \"label\": \"Test3\",\r\n \"description\": \"EntityClass Test3\",\r\n \"properties\": [\r\n {\r\n \"name\": \"StringEnumerationProperty\",\r\n \"type\": \"PrimitiveProperty\",\r\n \"label\": \"StringEnumeration\",\r\n \"description\": \"StringEnumeration Property\",\r\n \"typeName\": \"CoreCustomAttributes.ProductionStatusValue\"\r\n }\r\n ]\r\n }\r\n },\r\n {\r\n \"item\": \"SimpleSchema.RelationshipClass_Test1\",\r\n \"properties\": {\r\n \"schemaItemType\": \"RelationshipClass\",\r\n \"modifier\": \"Sealed\",\r\n \"baseClass\": \"BisCore.ElementRefersToElements\",\r\n \"label\": \"Test1\",\r\n \"description\": \"RelationshipClass Test1\",\r\n \"strength\": \"Referencing\",\r\n \"strengthDirection\": \"Forward\",\r\n \"customAttributes\": [\r\n {\r\n \"className\": \"CoreCustomAttributes.HiddenClass\",\r\n \"Show\": false\r\n }\r\n ],\r\n \"properties\": [\r\n {\r\n \"name\": \"Point2dArrayProperty\",\r\n \"type\": \"PrimitiveArrayProperty\",\r\n \"minOccurs\": 5,\r\n \"maxOccurs\": 75,\r\n \"label\": \"Point2dArray\",\r\n \"description\": \"Point2dArray Property\",\r\n \"typeName\": \"point2d\"\r\n },\r\n {\r\n \"name\": \"Point3dArrayProperty\",\r\n \"type\": \"PrimitiveArrayProperty\",\r\n \"minOccurs\": 3,\r\n \"maxOccurs\": 13,\r\n \"label\": \"Point3dArray\",\r\n \"description\": \"Point3dArray Property\",\r\n \"typeName\": \"point3d\"\r\n }\r\n ],\r\n \"source\": {\r\n \"multiplicity\": \"(0..*)\",\r\n \"roleLabel\": \"refers to\",\r\n \"polymorphic\": true,\r\n \"abstractConstraint\": \"BisCore.Element\",\r\n \"constraintClasses\": [\r\n \"BisCore.Element\"\r\n ],\r\n \"customAttributes\": [\r\n {\r\n \"className\": \"SimpleSchema.CustomAttributeClass_Test4\",\r\n \"StringProperty\": \"Source\"\r\n }\r\n ]\r\n },\r\n \"target\": {\r\n \"multiplicity\": \"(0..*)\",\r\n \"roleLabel\": \"is referenced by\",\r\n \"polymorphic\": true,\r\n \"abstractConstraint\": \"BisCore.Element\",\r\n \"constraintClasses\": [\r\n \"BisCore.Element\"\r\n ],\r\n \"customAttributes\": [\r\n {\r\n \"className\": \"SimpleSchema.CustomAttributeClass_Test4\",\r\n \"StringProperty\": \"Target\"\r\n }\r\n ]\r\n }\r\n }\r\n },\r\n {\r\n \"item\": \"BisCore.Drawing\",\r\n \"properties\": {\r\n \"schemaItemType\": \"EntityClass\",\r\n \"baseClass\": \"BisCore.Document\",\r\n \"description\": \"A bis:Drawing is a bis:Document of a 2D drawing.\",\r\n \"customAttributes\": [\r\n {\r\n \"className\": \"BisCore.ClassHasHandler\"\r\n }\r\n ],\r\n \"mixins\": [\r\n \"BisCore.ISubModeledElement\"\r\n ]\r\n }\r\n }\r\n ]\r\n }\r\n ]\r\n}"]}
|
|
@@ -160,5 +160,48 @@ describe("ConcurrentQuery", () => {
|
|
|
160
160
|
expect(queueResponses.length).to.be.greaterThanOrEqual(10);
|
|
161
161
|
db.close();
|
|
162
162
|
});
|
|
163
|
+
it("should handle concurrent queries during shutdown without deadlock", async () => {
|
|
164
|
+
const testFile = IModelTestUtils.resolveAssetFile("test.bim");
|
|
165
|
+
const iModelDb = SnapshotDb.openFile(testFile);
|
|
166
|
+
// Configure for maximum contention
|
|
167
|
+
const config = {
|
|
168
|
+
requestQueueSize: 1000,
|
|
169
|
+
statementCacheSizePerWorker: 1, // Force frequent prepare calls
|
|
170
|
+
doNotUsePrimaryConnToPrepare: false, // Force primary connection usage
|
|
171
|
+
};
|
|
172
|
+
// Reset configuration
|
|
173
|
+
ConcurrentQuery.resetConfig(iModelDb[_nativeDb], config);
|
|
174
|
+
const responsePromises = [];
|
|
175
|
+
const spamPromises = [];
|
|
176
|
+
let shouldStop = false;
|
|
177
|
+
const spam = async () => {
|
|
178
|
+
while (!shouldStop) {
|
|
179
|
+
// Use random numbers to prevent query caching
|
|
180
|
+
const query = `
|
|
181
|
+
WITH sequence(n,k) AS (
|
|
182
|
+
SELECT 1,1 UNION ALL SELECT n + 1, random() FROM sequence WHERE n < 10000000
|
|
183
|
+
) SELECT COUNT(*) FROM sequence s
|
|
184
|
+
`;
|
|
185
|
+
const request = { query };
|
|
186
|
+
const p = ConcurrentQuery.executeQueryRequest(iModelDb[_nativeDb], request);
|
|
187
|
+
responsePromises.push(p);
|
|
188
|
+
await new Promise(resolve => setImmediate(resolve));
|
|
189
|
+
}
|
|
190
|
+
};
|
|
191
|
+
// Start spamming simple queries to increase contention
|
|
192
|
+
spamPromises.push(spam());
|
|
193
|
+
// Let queries start and establish contention
|
|
194
|
+
await new Promise(resolve => setTimeout(resolve, 10));
|
|
195
|
+
ConcurrentQuery.shutdown(iModelDb[_nativeDb]);
|
|
196
|
+
shouldStop = true;
|
|
197
|
+
// Wait for all promises to complete
|
|
198
|
+
const results = await Promise.allSettled(responsePromises);
|
|
199
|
+
await Promise.allSettled(spamPromises);
|
|
200
|
+
const satisfiesShutDownResponse = results.some((result) => result.status === "fulfilled" && result.value.status === DbResponseStatus.ShuttingDown);
|
|
201
|
+
expect(satisfiesShutDownResponse).to.be.true; // some queries should face shutdown
|
|
202
|
+
// Restore original config by resetting to default
|
|
203
|
+
ConcurrentQuery.resetConfig(iModelDb[_nativeDb], {});
|
|
204
|
+
iModelDb.close();
|
|
205
|
+
});
|
|
163
206
|
});
|
|
164
207
|
//# sourceMappingURL=ConcurrentQuery.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConcurrentQuery.test.js","sourceRoot":"","sources":["../../../../src/test/ecdb/ConcurrentQuery.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { DbQueryRequest, DbQueryResponse, DbResponseStatus } from \"@itwin/core-common\";\r\nimport { expect } from \"chai\";\r\nimport { ConcurrentQuery } from \"../../ConcurrentQuery\";\r\nimport { SnapshotDb } from \"../../IModelDb\";\r\nimport { _nativeDb } from \"../../core-backend\";\r\nimport { IModelTestUtils } from \"../IModelTestUtils\";\r\n\r\nasync function delay(ms: number): Promise<void> {\r\n return new Promise(resolve => {\r\n setTimeout(resolve, ms);\r\n });\r\n}\r\n\r\ndescribe(\"ConcurrentQuery\", () => {\r\n it(\"default config\", () => {\r\n const testFile = IModelTestUtils.resolveAssetFile(\"test.bim\");\r\n const db = SnapshotDb.openFile(testFile);\r\n const defaultConfig = {\r\n autoShutdownWhenIdleForSeconds: 1800,\r\n doNotUsePrimaryConnToPrepare: false,\r\n globalQuota: { time: 60, memory: 8388608 },\r\n ignoreDelay: true,\r\n ignorePriority: false,\r\n memoryMapFileSize: 0,\r\n monitorPollInterval: 5000,\r\n progressOpCount: 5000,\r\n requestQueueSize: 2000,\r\n statementCacheSizePerWorker: 40,\r\n workerThreads: 4,\r\n };\r\n const config = ConcurrentQuery.resetConfig(db[_nativeDb], {});\r\n expect(config).deep.eq(defaultConfig);\r\n db.close();\r\n });\r\n\r\n it(\"modify config\", () => {\r\n const testFile = IModelTestUtils.resolveAssetFile(\"test.bim\");\r\n const db = SnapshotDb.openFile(testFile);\r\n const modifiedConfig = {\r\n autoShutdownWhenIdleForSeconds: 100,\r\n doNotUsePrimaryConnToPrepare: true,\r\n globalQuota: { time: 10, memory: 1000000 },\r\n ignoreDelay: false,\r\n ignorePriority: true,\r\n memoryMapFileSize: 100,\r\n monitorPollInterval: 2000,\r\n progressOpCount: 6000,\r\n requestQueueSize: 1000,\r\n statementCacheSizePerWorker: 20,\r\n workerThreads: 3,\r\n };\r\n const config = ConcurrentQuery.resetConfig(db[_nativeDb], modifiedConfig);\r\n expect(config).deep.eq(modifiedConfig);\r\n db.close();\r\n });\r\n\r\n it(\"time limit check\", async () => {\r\n const testFile = IModelTestUtils.resolveAssetFile(\"test.bim\");\r\n const db = SnapshotDb.openFile(testFile);\r\n ConcurrentQuery.resetConfig(db[_nativeDb], { globalQuota: { time: 1, memory: 100000 }, progressOpCount: 1000 });\r\n // await runSingleRequest(db, `SELECT 1`);\r\n const req: DbQueryRequest = {\r\n query: `WITH sequence(n,k) AS (\r\n SELECT 1,1 UNION ALL SELECT n + 1, random() FROM sequence WHERE n < 10000000\r\n ) SELECT COUNT(*) FROM sequence s`\r\n };\r\n\r\n const resp = await ConcurrentQuery.executeQueryRequest(db[_nativeDb], req);\r\n expect(resp.status).equals(DbResponseStatus.Partial);\r\n expect(resp.stats.timeLimit).equals(1000);\r\n expect(resp.stats.memLimit).equals(100000);\r\n expect(resp.stats.cpuTime).to.be.closeTo(1000970, 500000);\r\n expect(resp.stats.totalTime).to.be.closeTo(1001, 100);\r\n expect(resp.stats.memUsed).to.be.closeTo(2, 3);\r\n expect(resp.stats.prepareTime).to.be.closeTo(0, 2);\r\n db.close();\r\n });\r\n\r\n it(\"memory limit check\", async () => {\r\n const testFile = IModelTestUtils.resolveAssetFile(\"test.bim\");\r\n const db = SnapshotDb.openFile(testFile);\r\n ConcurrentQuery.resetConfig(db[_nativeDb], { globalQuota: { time: 60, memory: 1000 }, progressOpCount: 1000 });\r\n // await runSingleRequest(db, `SELECT 1`);\r\n const req: DbQueryRequest = {\r\n query: `WITH sequence(n) AS (\r\n SELECT 1\r\n UNION ALL\r\n SELECT n + 1 FROM sequence WHERE n < 10000000\r\n )\r\n SELECT 'xxxxxxxxxx-xxxxxxxxxx-xxxxxxxxxx' FROM sequence s`\r\n };\r\n\r\n const resp = await ConcurrentQuery.executeQueryRequest(db[_nativeDb], req);\r\n expect(resp.status).equals(DbResponseStatus.Partial);\r\n expect(resp.stats.timeLimit).equals(60000);\r\n expect(resp.stats.memLimit).equals(1000);\r\n expect(resp.stats.memUsed).to.be.closeTo(1037, 100);\r\n db.close();\r\n });\r\n\r\n it(\"prepare error\", async () => {\r\n const testFile = IModelTestUtils.resolveAssetFile(\"test.bim\");\r\n const db = SnapshotDb.openFile(testFile);\r\n const req: DbQueryRequest = {\r\n query: `xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx`\r\n };\r\n\r\n const resp = await ConcurrentQuery.executeQueryRequest(db[_nativeDb], req);\r\n expect(resp.status).equals(DbResponseStatus.Error_ECSql_PreparedFailed);\r\n db.close();\r\n });\r\n\r\n it.skip(\"restart query #flaky\", async () => {\r\n const testFile = IModelTestUtils.resolveAssetFile(\"test.bim\");\r\n const db = SnapshotDb.openFile(testFile);\r\n ConcurrentQuery.resetConfig(db[_nativeDb], { globalQuota: { time: 60, memory: 10000000 }, progressOpCount: 1000 });\r\n const req0: DbQueryRequest = {\r\n query: `WITH sequence(n) AS (\r\n SELECT 1 UNION ALL SELECT n + 1 FROM sequence WHERE n < 10000000\r\n ) SELECT n FROM sequence s`,\r\n restartToken: \"Blah\",\r\n };\r\n\r\n const req1: DbQueryRequest = {\r\n query: `WITH sequence(n) AS (\r\n SELECT 1 UNION ALL SELECT n + 1 FROM sequence WHERE n < 1000\r\n ) SELECT n FROM sequence s`,\r\n restartToken: \"Blah\",\r\n };\r\n\r\n const resp1 = ConcurrentQuery.executeQueryRequest(db[_nativeDb], req0);\r\n await delay(1);\r\n const resp2 = ConcurrentQuery.executeQueryRequest(db[_nativeDb], req1);\r\n const resp = await Promise.all([resp1, resp2]);\r\n expect(resp[0].status).equals(DbResponseStatus.Cancel); // can result in DbResponseStatus.Partial instead of DbResponseStatus.Cancel\r\n expect(resp[1].status).equals(DbResponseStatus.Done);\r\n db.close();\r\n });\r\n\r\n it(\"queue limit check\", async () => {\r\n const testFile = IModelTestUtils.resolveAssetFile(\"test.bim\");\r\n const db = SnapshotDb.openFile(testFile);\r\n ConcurrentQuery.resetConfig(db[_nativeDb], { requestQueueSize: 40, globalQuota: { time: 5, memory: 100000 } });\r\n const req: DbQueryRequest = {\r\n query: `WITH sequence(n) AS (\r\n SELECT 1 UNION ALL SELECT n + 1 FROM sequence WHERE n < 10000000\r\n ) SELECT n FROM sequence s`,\r\n };\r\n\r\n const responsePromises: Promise<DbQueryResponse>[] = [];\r\n for (let i = 0; i < 60; ++i) {\r\n responsePromises.push(ConcurrentQuery.executeQueryRequest(db[_nativeDb], req));\r\n }\r\n const responses = await Promise.all(responsePromises);\r\n const queueResponses = Array.from(responses.filter((x) => x.status === DbResponseStatus.QueueFull));\r\n expect(queueResponses.length).to.be.greaterThanOrEqual(10);\r\n db.close();\r\n });\r\n\r\n it(\"timeout check\", async () => {\r\n const testFile = IModelTestUtils.resolveAssetFile(\"test.bim\");\r\n const db = SnapshotDb.openFile(testFile);\r\n ConcurrentQuery.resetConfig(db[_nativeDb], { monitorPollInterval: 1, globalQuota: { time: 5, memory: 10000000 } });\r\n const req: DbQueryRequest = {\r\n query: `WITH sequence(n) AS (\r\n SELECT 1 UNION ALL SELECT n + 1 FROM sequence WHERE n < 10000000\r\n ) SELECT n FROM sequence s`,\r\n };\r\n\r\n const responsePromises: Promise<DbQueryResponse>[] = [];\r\n for (let i = 0; i < 100; ++i) {\r\n responsePromises.push(ConcurrentQuery.executeQueryRequest(db[_nativeDb], req));\r\n }\r\n const responses = await Promise.all(responsePromises);\r\n const queueResponses = Array.from(responses.filter((x) => x.status === DbResponseStatus.Timeout));\r\n expect(queueResponses.length).to.be.greaterThanOrEqual(10);\r\n db.close();\r\n });\r\n});\r\n"]}
|
|
1
|
+
{"version":3,"file":"ConcurrentQuery.test.js","sourceRoot":"","sources":["../../../../src/test/ecdb/ConcurrentQuery.test.ts"],"names":[],"mappings":"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","sourcesContent":["import { DbQueryRequest, DbQueryResponse, DbResponseStatus } from \"@itwin/core-common\";\r\nimport { expect } from \"chai\";\r\nimport { ConcurrentQuery } from \"../../ConcurrentQuery\";\r\nimport { SnapshotDb } from \"../../IModelDb\";\r\nimport { _nativeDb } from \"../../core-backend\";\r\nimport { IModelTestUtils } from \"../IModelTestUtils\";\r\n\r\nasync function delay(ms: number): Promise<void> {\r\n return new Promise(resolve => {\r\n setTimeout(resolve, ms);\r\n });\r\n}\r\n\r\ndescribe(\"ConcurrentQuery\", () => {\r\n it(\"default config\", () => {\r\n const testFile = IModelTestUtils.resolveAssetFile(\"test.bim\");\r\n const db = SnapshotDb.openFile(testFile);\r\n const defaultConfig = {\r\n autoShutdownWhenIdleForSeconds: 1800,\r\n doNotUsePrimaryConnToPrepare: false,\r\n globalQuota: { time: 60, memory: 8388608 },\r\n ignoreDelay: true,\r\n ignorePriority: false,\r\n memoryMapFileSize: 0,\r\n monitorPollInterval: 5000,\r\n progressOpCount: 5000,\r\n requestQueueSize: 2000,\r\n statementCacheSizePerWorker: 40,\r\n workerThreads: 4,\r\n };\r\n const config = ConcurrentQuery.resetConfig(db[_nativeDb], {});\r\n expect(config).deep.eq(defaultConfig);\r\n db.close();\r\n });\r\n\r\n it(\"modify config\", () => {\r\n const testFile = IModelTestUtils.resolveAssetFile(\"test.bim\");\r\n const db = SnapshotDb.openFile(testFile);\r\n const modifiedConfig = {\r\n autoShutdownWhenIdleForSeconds: 100,\r\n doNotUsePrimaryConnToPrepare: true,\r\n globalQuota: { time: 10, memory: 1000000 },\r\n ignoreDelay: false,\r\n ignorePriority: true,\r\n memoryMapFileSize: 100,\r\n monitorPollInterval: 2000,\r\n progressOpCount: 6000,\r\n requestQueueSize: 1000,\r\n statementCacheSizePerWorker: 20,\r\n workerThreads: 3,\r\n };\r\n const config = ConcurrentQuery.resetConfig(db[_nativeDb], modifiedConfig);\r\n expect(config).deep.eq(modifiedConfig);\r\n db.close();\r\n });\r\n\r\n it(\"time limit check\", async () => {\r\n const testFile = IModelTestUtils.resolveAssetFile(\"test.bim\");\r\n const db = SnapshotDb.openFile(testFile);\r\n ConcurrentQuery.resetConfig(db[_nativeDb], { globalQuota: { time: 1, memory: 100000 }, progressOpCount: 1000 });\r\n // await runSingleRequest(db, `SELECT 1`);\r\n const req: DbQueryRequest = {\r\n query: `WITH sequence(n,k) AS (\r\n SELECT 1,1 UNION ALL SELECT n + 1, random() FROM sequence WHERE n < 10000000\r\n ) SELECT COUNT(*) FROM sequence s`\r\n };\r\n\r\n const resp = await ConcurrentQuery.executeQueryRequest(db[_nativeDb], req);\r\n expect(resp.status).equals(DbResponseStatus.Partial);\r\n expect(resp.stats.timeLimit).equals(1000);\r\n expect(resp.stats.memLimit).equals(100000);\r\n expect(resp.stats.cpuTime).to.be.closeTo(1000970, 500000);\r\n expect(resp.stats.totalTime).to.be.closeTo(1001, 100);\r\n expect(resp.stats.memUsed).to.be.closeTo(2, 3);\r\n expect(resp.stats.prepareTime).to.be.closeTo(0, 2);\r\n db.close();\r\n });\r\n\r\n it(\"memory limit check\", async () => {\r\n const testFile = IModelTestUtils.resolveAssetFile(\"test.bim\");\r\n const db = SnapshotDb.openFile(testFile);\r\n ConcurrentQuery.resetConfig(db[_nativeDb], { globalQuota: { time: 60, memory: 1000 }, progressOpCount: 1000 });\r\n // await runSingleRequest(db, `SELECT 1`);\r\n const req: DbQueryRequest = {\r\n query: `WITH sequence(n) AS (\r\n SELECT 1\r\n UNION ALL\r\n SELECT n + 1 FROM sequence WHERE n < 10000000\r\n )\r\n SELECT 'xxxxxxxxxx-xxxxxxxxxx-xxxxxxxxxx' FROM sequence s`\r\n };\r\n\r\n const resp = await ConcurrentQuery.executeQueryRequest(db[_nativeDb], req);\r\n expect(resp.status).equals(DbResponseStatus.Partial);\r\n expect(resp.stats.timeLimit).equals(60000);\r\n expect(resp.stats.memLimit).equals(1000);\r\n expect(resp.stats.memUsed).to.be.closeTo(1037, 100);\r\n db.close();\r\n });\r\n\r\n it(\"prepare error\", async () => {\r\n const testFile = IModelTestUtils.resolveAssetFile(\"test.bim\");\r\n const db = SnapshotDb.openFile(testFile);\r\n const req: DbQueryRequest = {\r\n query: `xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx`\r\n };\r\n\r\n const resp = await ConcurrentQuery.executeQueryRequest(db[_nativeDb], req);\r\n expect(resp.status).equals(DbResponseStatus.Error_ECSql_PreparedFailed);\r\n db.close();\r\n });\r\n\r\n it.skip(\"restart query #flaky\", async () => {\r\n const testFile = IModelTestUtils.resolveAssetFile(\"test.bim\");\r\n const db = SnapshotDb.openFile(testFile);\r\n ConcurrentQuery.resetConfig(db[_nativeDb], { globalQuota: { time: 60, memory: 10000000 }, progressOpCount: 1000 });\r\n const req0: DbQueryRequest = {\r\n query: `WITH sequence(n) AS (\r\n SELECT 1 UNION ALL SELECT n + 1 FROM sequence WHERE n < 10000000\r\n ) SELECT n FROM sequence s`,\r\n restartToken: \"Blah\",\r\n };\r\n\r\n const req1: DbQueryRequest = {\r\n query: `WITH sequence(n) AS (\r\n SELECT 1 UNION ALL SELECT n + 1 FROM sequence WHERE n < 1000\r\n ) SELECT n FROM sequence s`,\r\n restartToken: \"Blah\",\r\n };\r\n\r\n const resp1 = ConcurrentQuery.executeQueryRequest(db[_nativeDb], req0);\r\n await delay(1);\r\n const resp2 = ConcurrentQuery.executeQueryRequest(db[_nativeDb], req1);\r\n const resp = await Promise.all([resp1, resp2]);\r\n expect(resp[0].status).equals(DbResponseStatus.Cancel); // can result in DbResponseStatus.Partial instead of DbResponseStatus.Cancel\r\n expect(resp[1].status).equals(DbResponseStatus.Done);\r\n db.close();\r\n });\r\n\r\n it(\"queue limit check\", async () => {\r\n const testFile = IModelTestUtils.resolveAssetFile(\"test.bim\");\r\n const db = SnapshotDb.openFile(testFile);\r\n ConcurrentQuery.resetConfig(db[_nativeDb], { requestQueueSize: 40, globalQuota: { time: 5, memory: 100000 } });\r\n const req: DbQueryRequest = {\r\n query: `WITH sequence(n) AS (\r\n SELECT 1 UNION ALL SELECT n + 1 FROM sequence WHERE n < 10000000\r\n ) SELECT n FROM sequence s`,\r\n };\r\n\r\n const responsePromises: Promise<DbQueryResponse>[] = [];\r\n for (let i = 0; i < 60; ++i) {\r\n responsePromises.push(ConcurrentQuery.executeQueryRequest(db[_nativeDb], req));\r\n }\r\n const responses = await Promise.all(responsePromises);\r\n const queueResponses = Array.from(responses.filter((x) => x.status === DbResponseStatus.QueueFull));\r\n expect(queueResponses.length).to.be.greaterThanOrEqual(10);\r\n db.close();\r\n });\r\n\r\n it(\"timeout check\", async () => {\r\n const testFile = IModelTestUtils.resolveAssetFile(\"test.bim\");\r\n const db = SnapshotDb.openFile(testFile);\r\n ConcurrentQuery.resetConfig(db[_nativeDb], { monitorPollInterval: 1, globalQuota: { time: 5, memory: 10000000 } });\r\n const req: DbQueryRequest = {\r\n query: `WITH sequence(n) AS (\r\n SELECT 1 UNION ALL SELECT n + 1 FROM sequence WHERE n < 10000000\r\n ) SELECT n FROM sequence s`,\r\n };\r\n\r\n const responsePromises: Promise<DbQueryResponse>[] = [];\r\n for (let i = 0; i < 100; ++i) {\r\n responsePromises.push(ConcurrentQuery.executeQueryRequest(db[_nativeDb], req));\r\n }\r\n const responses = await Promise.all(responsePromises);\r\n const queueResponses = Array.from(responses.filter((x) => x.status === DbResponseStatus.Timeout));\r\n expect(queueResponses.length).to.be.greaterThanOrEqual(10);\r\n db.close();\r\n });\r\n\r\n it(\"should handle concurrent queries during shutdown without deadlock\", async () => {\r\n const testFile = IModelTestUtils.resolveAssetFile(\"test.bim\");\r\n const iModelDb = SnapshotDb.openFile(testFile);\r\n // Configure for maximum contention\r\n const config = {\r\n requestQueueSize: 1000,\r\n statementCacheSizePerWorker: 1, // Force frequent prepare calls\r\n doNotUsePrimaryConnToPrepare: false, // Force primary connection usage\r\n };\r\n\r\n // Reset configuration\r\n ConcurrentQuery.resetConfig(iModelDb[_nativeDb], config);\r\n\r\n const responsePromises: Promise<DbQueryResponse>[] = [];\r\n const spamPromises: Promise<void>[] = [];\r\n let shouldStop = false;\r\n\r\n const spam = async () => {\r\n while (!shouldStop) {\r\n // Use random numbers to prevent query caching\r\n const query = `\r\n WITH sequence(n,k) AS (\r\n SELECT 1,1 UNION ALL SELECT n + 1, random() FROM sequence WHERE n < 10000000\r\n ) SELECT COUNT(*) FROM sequence s\r\n `;\r\n const request: DbQueryRequest = { query };\r\n const p = ConcurrentQuery.executeQueryRequest(iModelDb[_nativeDb], request);\r\n responsePromises.push(p);\r\n await new Promise(resolve => setImmediate(resolve));\r\n }\r\n };\r\n\r\n // Start spamming simple queries to increase contention\r\n spamPromises.push(spam());\r\n // Let queries start and establish contention\r\n await new Promise(resolve => setTimeout(resolve, 10));\r\n\r\n ConcurrentQuery.shutdown(iModelDb[_nativeDb]);\r\n\r\n shouldStop = true;\r\n\r\n // Wait for all promises to complete\r\n const results = await Promise.allSettled(responsePromises);\r\n await Promise.allSettled(spamPromises);\r\n\r\n const satisfiesShutDownResponse = results.some((result) => result.status === \"fulfilled\" && result.value.status === DbResponseStatus.ShuttingDown);\r\n\r\n expect(satisfiesShutDownResponse).to.be.true; // some queries should face shutdown\r\n\r\n // Restore original config by resetting to default\r\n ConcurrentQuery.resetConfig(iModelDb[_nativeDb], {});\r\n iModelDb.close();\r\n });\r\n});\r\n"]}
|
|
@@ -1143,5 +1143,48 @@ describe("rebase changes & stashing api", function () {
|
|
|
1143
1143
|
"0x100000003",
|
|
1144
1144
|
]);
|
|
1145
1145
|
});
|
|
1146
|
+
it("abort rebase should discard in-memory changes", async () => {
|
|
1147
|
+
const b1 = await testIModel.openBriefcase();
|
|
1148
|
+
const b2 = await testIModel.openBriefcase();
|
|
1149
|
+
const e1 = await testIModel.insertElement(b1);
|
|
1150
|
+
b1.saveChanges();
|
|
1151
|
+
await b1.pushChanges({ description: `${e1} inserted` });
|
|
1152
|
+
const e2 = await testIModel.insertElement(b2);
|
|
1153
|
+
chai.expect(e2).to.exist;
|
|
1154
|
+
let e3 = "";
|
|
1155
|
+
b2.saveChanges();
|
|
1156
|
+
b2.txns.rebaser.setCustomHandler({
|
|
1157
|
+
shouldReinstate: (_txnProps) => {
|
|
1158
|
+
return true;
|
|
1159
|
+
},
|
|
1160
|
+
recompute: async (_txnProps) => {
|
|
1161
|
+
chai.expect(BriefcaseManager.containsRestorePoint(b2, BriefcaseManager.PULL_MERGE_RESTORE_POINT_NAME)).is.true;
|
|
1162
|
+
e3 = await testIModel.insertElement(b2);
|
|
1163
|
+
throw new Error("Rebase failed");
|
|
1164
|
+
},
|
|
1165
|
+
});
|
|
1166
|
+
chai.expect(b2.elements.tryGetElementProps(e1)).to.undefined;
|
|
1167
|
+
chai.expect(b2.elements.tryGetElementProps(e2)).to.exist;
|
|
1168
|
+
chai.expect(b2.elements.tryGetElementProps(e3)).to.undefined;
|
|
1169
|
+
chai.expect(b2.changeset.index).to.equals(2);
|
|
1170
|
+
await chai.expect(b2.pullChanges()).to.be.rejectedWith("Rebase failed");
|
|
1171
|
+
chai.expect(b2.changeset.index).to.equals(3);
|
|
1172
|
+
chai.expect(e3).to.exist;
|
|
1173
|
+
chai.expect(b2.elements.tryGetElementProps(e1)).to.exist; // came from incoming changeset
|
|
1174
|
+
chai.expect(b2.elements.tryGetElementProps(e2)).to.undefined; // was local change and reversed during rebase.
|
|
1175
|
+
chai.expect(b2.elements.tryGetElementProps(e3)).to.undefined; // was insert by reCompute() but due to exception the rebase attempt was abandoned.
|
|
1176
|
+
chai.expect(BriefcaseManager.containsRestorePoint(b2, BriefcaseManager.PULL_MERGE_RESTORE_POINT_NAME)).is.true;
|
|
1177
|
+
// make temp change
|
|
1178
|
+
b2.saveFileProperty({ name: "test", namespace: "testNamespace" }, "testValue");
|
|
1179
|
+
chai.expect(b2.txns.hasUnsavedChanges).is.true;
|
|
1180
|
+
chai.expect(b2.txns.rebaser.canAbort()).is.true;
|
|
1181
|
+
// should abort with unsaved local changes
|
|
1182
|
+
await b2.txns.rebaser.abort();
|
|
1183
|
+
chai.expect(b2.changeset.index).to.equals(2);
|
|
1184
|
+
chai.expect(b2.elements.tryGetElementProps(e1)).to.undefined; // reset briefcase should move tip back to where it was before pull
|
|
1185
|
+
chai.expect(b2.elements.tryGetElementProps(e2)).to.exist; // abort should put back e2 which was only change at the time of pull
|
|
1186
|
+
chai.expect(b2.elements.tryGetElementProps(e3)).to.undefined; // add by rebase so should not exist either
|
|
1187
|
+
chai.expect(BriefcaseManager.containsRestorePoint(b2, BriefcaseManager.PULL_MERGE_RESTORE_POINT_NAME)).is.false;
|
|
1188
|
+
});
|
|
1146
1189
|
});
|
|
1147
1190
|
//# sourceMappingURL=Rebase.test.js.map
|