[INFO] Scanning for projects... [INFO] [INFO] ------------------< org.folio:mod-inventory-storage >------------------- [INFO] Building mod-inventory-storage 20.3.0-SNAPSHOT [INFO] --------------------------------[ jar ]--------------------------------- [INFO] [INFO] --- domain-models-maven-plugin:33.0.0-SNAPSHOT:java (generate_interfaces) @ mod-inventory-storage --- DomainModelsMojo.execute() generateInterfaces=true generateClients=false project.baseDir = /home/adam/folio/mod-inventory-storage project.name = mod-inventory-storage project.actifactId = mod-inventory-storage Artifacts: [] ArtifactMap: {} ramlDirs.size=0 schemaPaths.size=0 GenerateRunner.generate Input directory /home/adam/folio/mod-inventory-storage/target/classes/ramls org/folio/rest/jaxrs/model/AlternativeTitleType.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/AlternativeTitleType.java org/folio/rest/jaxrs/model/AlternativeTitleTypes.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java [INFO] Reading from pom.xml [INFO] module name: mod_inventory_storage, version: 20.3.0 org/folio/rest/jaxrs/model/CallNumberType.java org/folio/rest/jaxrs/model/CallNumberTypes.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/CallNumberType.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/ClassificationType.java org/folio/rest/jaxrs/model/ClassificationTypes.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/ClassificationType.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/ContributorNameType.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/ContributorNameType.java org/folio/rest/jaxrs/model/ContributorNameTypes.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/ContributorType.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/ContributorType.java org/folio/rest/jaxrs/model/ContributorTypes.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/ElectronicAccessRelationship.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/ElectronicAccessRelationship.java org/folio/rest/jaxrs/model/ElectronicAccessRelationships.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/HoldingsNoteType.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/HoldingsNoteType.java org/folio/rest/jaxrs/model/HoldingsNoteTypes.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/HoldingsRecordsSource.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/HoldingsRecordsSource.java org/folio/rest/jaxrs/model/HoldingsRecordsSources.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/CirculationNote.java org/folio/rest/jaxrs/model/Diagnostic.java org/folio/rest/jaxrs/model/EffectiveCallNumberComponents.java org/folio/rest/jaxrs/model/ElectronicAccess.java org/folio/rest/jaxrs/model/ElectronicAccess_.java org/folio/rest/jaxrs/model/Entry.java org/folio/rest/jaxrs/model/Facet.java org/folio/rest/jaxrs/model/FacetValue.java org/folio/rest/jaxrs/model/HoldingsInstance.java org/folio/rest/jaxrs/model/HoldingsItem.java org/folio/rest/jaxrs/model/HoldingsNoteTypeVirtual.java org/folio/rest/jaxrs/model/HoldingsRecord.java org/folio/rest/jaxrs/model/HoldingsRecord2.java org/folio/rest/jaxrs/model/HoldingsRecords.java org/folio/rest/jaxrs/model/HoldingsStatement.java org/folio/rest/jaxrs/model/HoldingsStatementsForIndex.java org/folio/rest/jaxrs/model/HoldingsStatementsForSupplement.java org/folio/rest/jaxrs/model/IllPolicyVirtual.java org/folio/rest/jaxrs/model/LastCheckIn.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Note.java org/folio/rest/jaxrs/model/Note_.java org/folio/rest/jaxrs/model/PermanentLocation.java org/folio/rest/jaxrs/model/PermanentLocation_.java org/folio/rest/jaxrs/model/Personal.java org/folio/rest/jaxrs/model/ReceivingHistory.java org/folio/rest/jaxrs/model/ResultInfo.java org/folio/rest/jaxrs/model/Source.java org/folio/rest/jaxrs/model/Status.java org/folio/rest/jaxrs/model/Tags.java org/folio/rest/jaxrs/model/TemporaryLocation.java org/folio/rest/jaxrs/model/itemNoteTypeVirtual.java org/folio/rest/jaxrs/model/materialTypeVirtual.java org/folio/rest/jaxrs/model/CirculationNote.java org/folio/rest/jaxrs/model/EffectiveCallNumberComponents.java org/folio/rest/jaxrs/model/ElectronicAccess.java org/folio/rest/jaxrs/model/ElectronicAccess_.java org/folio/rest/jaxrs/model/Entry.java org/folio/rest/jaxrs/model/HoldingsInstance.java org/folio/rest/jaxrs/model/HoldingsItem.java org/folio/rest/jaxrs/model/HoldingsNoteTypeVirtual.java org/folio/rest/jaxrs/model/HoldingsRecord.java org/folio/rest/jaxrs/model/HoldingsRecord2.java org/folio/rest/jaxrs/model/HoldingsStatement.java org/folio/rest/jaxrs/model/HoldingsStatementsForIndex.java org/folio/rest/jaxrs/model/HoldingsStatementsForSupplement.java org/folio/rest/jaxrs/model/IllPolicyVirtual.java org/folio/rest/jaxrs/model/LastCheckIn.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Note.java org/folio/rest/jaxrs/model/Note_.java org/folio/rest/jaxrs/model/PermanentLocation.java org/folio/rest/jaxrs/model/PermanentLocation_.java org/folio/rest/jaxrs/model/Personal.java org/folio/rest/jaxrs/model/ReceivingHistory.java org/folio/rest/jaxrs/model/Source.java org/folio/rest/jaxrs/model/Status.java org/folio/rest/jaxrs/model/Tags.java org/folio/rest/jaxrs/model/TemporaryLocation.java org/folio/rest/jaxrs/model/itemNoteTypeVirtual.java org/folio/rest/jaxrs/model/materialTypeVirtual.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/CirculationNote.java org/folio/rest/jaxrs/model/EffectiveCallNumberComponents.java org/folio/rest/jaxrs/model/ElectronicAccess.java org/folio/rest/jaxrs/model/ElectronicAccess_.java org/folio/rest/jaxrs/model/Entry.java org/folio/rest/jaxrs/model/HoldingsInstance.java org/folio/rest/jaxrs/model/HoldingsItem.java org/folio/rest/jaxrs/model/HoldingsNoteTypeVirtual.java org/folio/rest/jaxrs/model/HoldingsRecord.java org/folio/rest/jaxrs/model/HoldingsRecord2.java org/folio/rest/jaxrs/model/HoldingsStatement.java org/folio/rest/jaxrs/model/HoldingsStatementsForIndex.java org/folio/rest/jaxrs/model/HoldingsStatementsForSupplement.java org/folio/rest/jaxrs/model/HoldingsrecordsPost.java org/folio/rest/jaxrs/model/IllPolicyVirtual.java org/folio/rest/jaxrs/model/LastCheckIn.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Note.java org/folio/rest/jaxrs/model/Note_.java org/folio/rest/jaxrs/model/PermanentLocation.java org/folio/rest/jaxrs/model/PermanentLocation_.java org/folio/rest/jaxrs/model/Personal.java org/folio/rest/jaxrs/model/ReceivingHistory.java org/folio/rest/jaxrs/model/Source.java org/folio/rest/jaxrs/model/Status.java org/folio/rest/jaxrs/model/Tags.java org/folio/rest/jaxrs/model/TemporaryLocation.java org/folio/rest/jaxrs/model/itemNoteTypeVirtual.java org/folio/rest/jaxrs/model/materialTypeVirtual.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/HoldingsType.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/HoldingsType.java org/folio/rest/jaxrs/model/HoldingsTypes.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/HridSetting.java org/folio/rest/jaxrs/model/HridSettings.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/IdentifierType.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/IdentifierType.java org/folio/rest/jaxrs/model/IdentifierTypes.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/IllPolicies.java org/folio/rest/jaxrs/model/IllPolicy.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/IllPolicy.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/InstanceFormat.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/InstanceFormat.java org/folio/rest/jaxrs/model/InstanceFormats.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/InstanceNoteType.java org/folio/rest/jaxrs/model/InstanceNoteTypes.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/InstanceNoteType.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/Identifier.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/PrecedingSucceedingTitle.java org/folio/rest/jaxrs/model/Identifier.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/PrecedingSucceedingTitle.java org/folio/rest/jaxrs/model/PrecedingSucceedingTitles.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/ReindexJob.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/InstanceRelationshipType.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/InstanceRelationshipType.java org/folio/rest/jaxrs/model/InstanceRelationshipTypes.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/InstanceStatus.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/InstanceStatus.java org/folio/rest/jaxrs/model/InstanceStatuses.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/AlternativeTitle.java org/folio/rest/jaxrs/model/CirculationNote.java org/folio/rest/jaxrs/model/Classification.java org/folio/rest/jaxrs/model/Contributor.java org/folio/rest/jaxrs/model/Diagnostic.java org/folio/rest/jaxrs/model/EffectiveCallNumberComponents.java org/folio/rest/jaxrs/model/ElectronicAccess.java org/folio/rest/jaxrs/model/ElectronicAccess_.java org/folio/rest/jaxrs/model/ElectronicAccess__.java org/folio/rest/jaxrs/model/Entry.java org/folio/rest/jaxrs/model/Facet.java org/folio/rest/jaxrs/model/FacetValue.java org/folio/rest/jaxrs/model/HoldingsInstance.java org/folio/rest/jaxrs/model/HoldingsItem.java org/folio/rest/jaxrs/model/HoldingsNoteTypeVirtual.java org/folio/rest/jaxrs/model/HoldingsRecord2.java org/folio/rest/jaxrs/model/HoldingsRecords2.java org/folio/rest/jaxrs/model/HoldingsStatement.java org/folio/rest/jaxrs/model/HoldingsStatementsForIndex.java org/folio/rest/jaxrs/model/HoldingsStatementsForSupplement.java org/folio/rest/jaxrs/model/Identifier.java org/folio/rest/jaxrs/model/IdentifierTypeObject.java org/folio/rest/jaxrs/model/IllPolicyVirtual.java org/folio/rest/jaxrs/model/Instance.java org/folio/rest/jaxrs/model/InstanceFormat.java org/folio/rest/jaxrs/model/Instances.java org/folio/rest/jaxrs/model/LastCheckIn.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Note.java org/folio/rest/jaxrs/model/Note_.java org/folio/rest/jaxrs/model/Note__.java org/folio/rest/jaxrs/model/PermanentLocation.java org/folio/rest/jaxrs/model/PermanentLocation_.java org/folio/rest/jaxrs/model/Personal.java org/folio/rest/jaxrs/model/Publication.java org/folio/rest/jaxrs/model/ReceivingHistory.java org/folio/rest/jaxrs/model/ResultInfo.java org/folio/rest/jaxrs/model/Source.java org/folio/rest/jaxrs/model/Status.java org/folio/rest/jaxrs/model/Tags.java org/folio/rest/jaxrs/model/TemporaryLocation.java org/folio/rest/jaxrs/model/classificationTypeVirtual.java org/folio/rest/jaxrs/model/contributorNameTypeVirtual.java org/folio/rest/jaxrs/model/itemNoteTypeVirtual.java org/folio/rest/jaxrs/model/materialTypeVirtual.java org/folio/rest/jaxrs/model/AlternativeTitle.java org/folio/rest/jaxrs/model/CirculationNote.java org/folio/rest/jaxrs/model/Classification.java org/folio/rest/jaxrs/model/Contributor.java org/folio/rest/jaxrs/model/EffectiveCallNumberComponents.java org/folio/rest/jaxrs/model/ElectronicAccess.java org/folio/rest/jaxrs/model/ElectronicAccess_.java org/folio/rest/jaxrs/model/ElectronicAccess__.java org/folio/rest/jaxrs/model/Entry.java org/folio/rest/jaxrs/model/HoldingsInstance.java org/folio/rest/jaxrs/model/HoldingsItem.java org/folio/rest/jaxrs/model/HoldingsNoteTypeVirtual.java org/folio/rest/jaxrs/model/HoldingsRecord2.java org/folio/rest/jaxrs/model/HoldingsRecords2.java org/folio/rest/jaxrs/model/HoldingsStatement.java org/folio/rest/jaxrs/model/HoldingsStatementsForIndex.java org/folio/rest/jaxrs/model/HoldingsStatementsForSupplement.java org/folio/rest/jaxrs/model/Identifier.java org/folio/rest/jaxrs/model/IdentifierTypeObject.java org/folio/rest/jaxrs/model/IllPolicyVirtual.java org/folio/rest/jaxrs/model/Instance.java org/folio/rest/jaxrs/model/InstanceFormat.java org/folio/rest/jaxrs/model/InstancesBatchResponse.java org/folio/rest/jaxrs/model/LastCheckIn.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Note.java org/folio/rest/jaxrs/model/Note_.java org/folio/rest/jaxrs/model/Note__.java org/folio/rest/jaxrs/model/PermanentLocation.java org/folio/rest/jaxrs/model/PermanentLocation_.java org/folio/rest/jaxrs/model/Personal.java org/folio/rest/jaxrs/model/Publication.java org/folio/rest/jaxrs/model/ReceivingHistory.java org/folio/rest/jaxrs/model/Source.java org/folio/rest/jaxrs/model/Status.java org/folio/rest/jaxrs/model/Tags.java org/folio/rest/jaxrs/model/TemporaryLocation.java org/folio/rest/jaxrs/model/classificationTypeVirtual.java org/folio/rest/jaxrs/model/contributorNameTypeVirtual.java org/folio/rest/jaxrs/model/itemNoteTypeVirtual.java org/folio/rest/jaxrs/model/materialTypeVirtual.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/AlternativeTitle.java org/folio/rest/jaxrs/model/CirculationNote.java org/folio/rest/jaxrs/model/Classification.java org/folio/rest/jaxrs/model/Contributor.java org/folio/rest/jaxrs/model/EffectiveCallNumberComponents.java org/folio/rest/jaxrs/model/ElectronicAccess.java org/folio/rest/jaxrs/model/ElectronicAccess_.java org/folio/rest/jaxrs/model/ElectronicAccess__.java org/folio/rest/jaxrs/model/Entry.java org/folio/rest/jaxrs/model/HoldingsInstance.java org/folio/rest/jaxrs/model/HoldingsItem.java org/folio/rest/jaxrs/model/HoldingsNoteTypeVirtual.java org/folio/rest/jaxrs/model/HoldingsRecord2.java org/folio/rest/jaxrs/model/HoldingsRecords2.java org/folio/rest/jaxrs/model/HoldingsStatement.java org/folio/rest/jaxrs/model/HoldingsStatementsForIndex.java org/folio/rest/jaxrs/model/HoldingsStatementsForSupplement.java org/folio/rest/jaxrs/model/Identifier.java org/folio/rest/jaxrs/model/IdentifierTypeObject.java org/folio/rest/jaxrs/model/IllPolicyVirtual.java org/folio/rest/jaxrs/model/Instance.java org/folio/rest/jaxrs/model/InstanceFormat.java org/folio/rest/jaxrs/model/LastCheckIn.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Note.java org/folio/rest/jaxrs/model/Note_.java org/folio/rest/jaxrs/model/Note__.java org/folio/rest/jaxrs/model/PermanentLocation.java org/folio/rest/jaxrs/model/PermanentLocation_.java org/folio/rest/jaxrs/model/Personal.java org/folio/rest/jaxrs/model/Publication.java org/folio/rest/jaxrs/model/ReceivingHistory.java org/folio/rest/jaxrs/model/Source.java org/folio/rest/jaxrs/model/Status.java org/folio/rest/jaxrs/model/Tags.java org/folio/rest/jaxrs/model/TemporaryLocation.java org/folio/rest/jaxrs/model/classificationTypeVirtual.java org/folio/rest/jaxrs/model/contributorNameTypeVirtual.java org/folio/rest/jaxrs/model/itemNoteTypeVirtual.java org/folio/rest/jaxrs/model/materialTypeVirtual.java org/folio/rest/jaxrs/model/AlternativeTitle.java org/folio/rest/jaxrs/model/CirculationNote.java org/folio/rest/jaxrs/model/Classification.java org/folio/rest/jaxrs/model/Contributor.java org/folio/rest/jaxrs/model/Diagnostic.java org/folio/rest/jaxrs/model/EffectiveCallNumberComponents.java org/folio/rest/jaxrs/model/ElectronicAccess.java org/folio/rest/jaxrs/model/ElectronicAccess_.java org/folio/rest/jaxrs/model/ElectronicAccess__.java org/folio/rest/jaxrs/model/Entry.java org/folio/rest/jaxrs/model/Facet.java org/folio/rest/jaxrs/model/FacetValue.java org/folio/rest/jaxrs/model/HoldingsInstance.java org/folio/rest/jaxrs/model/HoldingsItem.java org/folio/rest/jaxrs/model/HoldingsNoteTypeVirtual.java org/folio/rest/jaxrs/model/HoldingsRecord2.java org/folio/rest/jaxrs/model/HoldingsRecords2.java org/folio/rest/jaxrs/model/HoldingsStatement.java org/folio/rest/jaxrs/model/HoldingsStatementsForIndex.java org/folio/rest/jaxrs/model/HoldingsStatementsForSupplement.java org/folio/rest/jaxrs/model/Identifier.java org/folio/rest/jaxrs/model/IdentifierTypeObject.java org/folio/rest/jaxrs/model/IllPolicyVirtual.java org/folio/rest/jaxrs/model/Instance.java org/folio/rest/jaxrs/model/InstanceFormat.java org/folio/rest/jaxrs/model/Instances.java org/folio/rest/jaxrs/model/LastCheckIn.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Note.java org/folio/rest/jaxrs/model/Note_.java org/folio/rest/jaxrs/model/Note__.java org/folio/rest/jaxrs/model/PermanentLocation.java org/folio/rest/jaxrs/model/PermanentLocation_.java org/folio/rest/jaxrs/model/Personal.java org/folio/rest/jaxrs/model/Publication.java org/folio/rest/jaxrs/model/ReceivingHistory.java org/folio/rest/jaxrs/model/ResultInfo.java org/folio/rest/jaxrs/model/Source.java org/folio/rest/jaxrs/model/Status.java org/folio/rest/jaxrs/model/Tags.java org/folio/rest/jaxrs/model/TemporaryLocation.java org/folio/rest/jaxrs/model/classificationTypeVirtual.java org/folio/rest/jaxrs/model/contributorNameTypeVirtual.java org/folio/rest/jaxrs/model/itemNoteTypeVirtual.java org/folio/rest/jaxrs/model/materialTypeVirtual.java org/folio/rest/jaxrs/model/MarcJson.java org/folio/rest/jaxrs/model/InstanceRelationship.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/InstanceRelationship.java org/folio/rest/jaxrs/model/InstanceRelationships.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/AlternativeTitle.java org/folio/rest/jaxrs/model/CirculationNote.java org/folio/rest/jaxrs/model/Classification.java org/folio/rest/jaxrs/model/Contributor.java org/folio/rest/jaxrs/model/EffectiveCallNumberComponents.java org/folio/rest/jaxrs/model/ElectronicAccess.java org/folio/rest/jaxrs/model/ElectronicAccess_.java org/folio/rest/jaxrs/model/ElectronicAccess__.java org/folio/rest/jaxrs/model/Entry.java org/folio/rest/jaxrs/model/HoldingsInstance.java org/folio/rest/jaxrs/model/HoldingsItem.java org/folio/rest/jaxrs/model/HoldingsNoteTypeVirtual.java org/folio/rest/jaxrs/model/HoldingsRecord2.java org/folio/rest/jaxrs/model/HoldingsRecords2.java org/folio/rest/jaxrs/model/HoldingsStatement.java org/folio/rest/jaxrs/model/HoldingsStatementsForIndex.java org/folio/rest/jaxrs/model/HoldingsStatementsForSupplement.java org/folio/rest/jaxrs/model/Identifier.java org/folio/rest/jaxrs/model/IdentifierTypeObject.java org/folio/rest/jaxrs/model/IllPolicyVirtual.java org/folio/rest/jaxrs/model/Instance.java org/folio/rest/jaxrs/model/InstanceFormat.java org/folio/rest/jaxrs/model/InstancesPost.java org/folio/rest/jaxrs/model/LastCheckIn.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Note.java org/folio/rest/jaxrs/model/Note_.java org/folio/rest/jaxrs/model/Note__.java org/folio/rest/jaxrs/model/PermanentLocation.java org/folio/rest/jaxrs/model/PermanentLocation_.java org/folio/rest/jaxrs/model/Personal.java org/folio/rest/jaxrs/model/Publication.java org/folio/rest/jaxrs/model/ReceivingHistory.java org/folio/rest/jaxrs/model/Source.java org/folio/rest/jaxrs/model/Status.java org/folio/rest/jaxrs/model/Tags.java org/folio/rest/jaxrs/model/TemporaryLocation.java org/folio/rest/jaxrs/model/classificationTypeVirtual.java org/folio/rest/jaxrs/model/contributorNameTypeVirtual.java org/folio/rest/jaxrs/model/itemNoteTypeVirtual.java org/folio/rest/jaxrs/model/materialTypeVirtual.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/InstanceType.java org/folio/rest/jaxrs/model/InstanceTypes.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/InstanceType.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/CallNumber.java org/folio/rest/jaxrs/model/CallNumber_.java org/folio/rest/jaxrs/model/EffectiveLocation.java org/folio/rest/jaxrs/model/ElectronicAccess.java org/folio/rest/jaxrs/model/ElectronicAccess_.java org/folio/rest/jaxrs/model/Entry.java org/folio/rest/jaxrs/model/Holding.java org/folio/rest/jaxrs/model/HoldingsStatement.java org/folio/rest/jaxrs/model/HoldingsStatementsForIndex.java org/folio/rest/jaxrs/model/HoldingsStatementsForSupplement.java org/folio/rest/jaxrs/model/InventoryItemsAndHoldings.java org/folio/rest/jaxrs/model/Item.java org/folio/rest/jaxrs/model/Location.java org/folio/rest/jaxrs/model/Location_.java org/folio/rest/jaxrs/model/Location__.java org/folio/rest/jaxrs/model/Note.java org/folio/rest/jaxrs/model/Note_.java org/folio/rest/jaxrs/model/PermanentLocation.java org/folio/rest/jaxrs/model/PermanentLocation_.java org/folio/rest/jaxrs/model/ReceivingHistory.java org/folio/rest/jaxrs/model/StatisticalCode.java org/folio/rest/jaxrs/model/StatisticalCode_.java org/folio/rest/jaxrs/model/Tags.java org/folio/rest/jaxrs/model/Tags_.java org/folio/rest/jaxrs/model/TemporaryLocation.java org/folio/rest/jaxrs/model/TemporaryLocation_.java org/folio/rest/jaxrs/model/InventoryInstanceIds.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/InventoryUpdatedInstanceIds.java org/folio/rest/jaxrs/model/AlternativeTitle.java org/folio/rest/jaxrs/model/CirculationNote.java org/folio/rest/jaxrs/model/Classification.java org/folio/rest/jaxrs/model/Contributor.java org/folio/rest/jaxrs/model/EffectiveCallNumberComponents.java org/folio/rest/jaxrs/model/ElectronicAccess.java org/folio/rest/jaxrs/model/ElectronicAccess_.java org/folio/rest/jaxrs/model/ElectronicAccess__.java org/folio/rest/jaxrs/model/Entry.java org/folio/rest/jaxrs/model/HoldingsInstance.java org/folio/rest/jaxrs/model/HoldingsItem.java org/folio/rest/jaxrs/model/HoldingsNoteTypeVirtual.java org/folio/rest/jaxrs/model/HoldingsRecord2.java org/folio/rest/jaxrs/model/HoldingsRecords2.java org/folio/rest/jaxrs/model/HoldingsStatement.java org/folio/rest/jaxrs/model/HoldingsStatementsForIndex.java org/folio/rest/jaxrs/model/HoldingsStatementsForSupplement.java org/folio/rest/jaxrs/model/Identifier.java org/folio/rest/jaxrs/model/IdentifierTypeObject.java org/folio/rest/jaxrs/model/IllPolicyVirtual.java org/folio/rest/jaxrs/model/Instance.java org/folio/rest/jaxrs/model/InstanceFormat.java org/folio/rest/jaxrs/model/InventoryViewInstance.java org/folio/rest/jaxrs/model/LastCheckIn.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Note.java org/folio/rest/jaxrs/model/Note_.java org/folio/rest/jaxrs/model/Note__.java org/folio/rest/jaxrs/model/PermanentLocation.java org/folio/rest/jaxrs/model/PermanentLocation_.java org/folio/rest/jaxrs/model/Personal.java org/folio/rest/jaxrs/model/Publication.java org/folio/rest/jaxrs/model/ReceivingHistory.java org/folio/rest/jaxrs/model/Source.java org/folio/rest/jaxrs/model/Status.java org/folio/rest/jaxrs/model/Tags.java org/folio/rest/jaxrs/model/TemporaryLocation.java org/folio/rest/jaxrs/model/classificationTypeVirtual.java org/folio/rest/jaxrs/model/contributorNameTypeVirtual.java org/folio/rest/jaxrs/model/itemNoteTypeVirtual.java org/folio/rest/jaxrs/model/materialTypeVirtual.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/ItemDamageStatus.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/ItemDamageStatus.java org/folio/rest/jaxrs/model/ItemDamageStatuses.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/ItemNoteType.java org/folio/rest/jaxrs/model/ItemNoteTypes.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/ItemNoteType.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/CirculationNote.java org/folio/rest/jaxrs/model/EffectiveCallNumberComponents.java org/folio/rest/jaxrs/model/ElectronicAccess.java org/folio/rest/jaxrs/model/HoldingsRecord2.java org/folio/rest/jaxrs/model/Item.java org/folio/rest/jaxrs/model/LastCheckIn.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Note.java org/folio/rest/jaxrs/model/PermanentLocation.java org/folio/rest/jaxrs/model/Personal.java org/folio/rest/jaxrs/model/Source.java org/folio/rest/jaxrs/model/Status.java org/folio/rest/jaxrs/model/Tags.java org/folio/rest/jaxrs/model/TemporaryLocation.java org/folio/rest/jaxrs/model/itemNoteTypeVirtual.java org/folio/rest/jaxrs/model/materialTypeVirtual.java org/folio/rest/jaxrs/model/CirculationNote.java org/folio/rest/jaxrs/model/Diagnostic.java org/folio/rest/jaxrs/model/EffectiveCallNumberComponents.java org/folio/rest/jaxrs/model/ElectronicAccess.java org/folio/rest/jaxrs/model/Facet.java org/folio/rest/jaxrs/model/FacetValue.java org/folio/rest/jaxrs/model/HoldingsRecord2.java org/folio/rest/jaxrs/model/Item.java org/folio/rest/jaxrs/model/Items.java org/folio/rest/jaxrs/model/LastCheckIn.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Note.java org/folio/rest/jaxrs/model/PermanentLocation.java org/folio/rest/jaxrs/model/Personal.java org/folio/rest/jaxrs/model/ResultInfo.java org/folio/rest/jaxrs/model/Source.java org/folio/rest/jaxrs/model/Status.java org/folio/rest/jaxrs/model/Tags.java org/folio/rest/jaxrs/model/TemporaryLocation.java org/folio/rest/jaxrs/model/itemNoteTypeVirtual.java org/folio/rest/jaxrs/model/materialTypeVirtual.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/CirculationNote.java org/folio/rest/jaxrs/model/EffectiveCallNumberComponents.java org/folio/rest/jaxrs/model/ElectronicAccess.java org/folio/rest/jaxrs/model/HoldingsRecord2.java org/folio/rest/jaxrs/model/Item.java org/folio/rest/jaxrs/model/ItemsPost.java org/folio/rest/jaxrs/model/LastCheckIn.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Note.java org/folio/rest/jaxrs/model/PermanentLocation.java org/folio/rest/jaxrs/model/Personal.java org/folio/rest/jaxrs/model/Source.java org/folio/rest/jaxrs/model/Status.java org/folio/rest/jaxrs/model/Tags.java org/folio/rest/jaxrs/model/TemporaryLocation.java org/folio/rest/jaxrs/model/itemNoteTypeVirtual.java org/folio/rest/jaxrs/model/materialTypeVirtual.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/Loantype.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Loantype.java org/folio/rest/jaxrs/model/Loantypes.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/Campus.java org/folio/rest/jaxrs/model/Details.java org/folio/rest/jaxrs/model/HoldShelfExpiryPeriod.java org/folio/rest/jaxrs/model/Institution.java org/folio/rest/jaxrs/model/Library.java org/folio/rest/jaxrs/model/Location.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/PrimaryServicePointObject.java org/folio/rest/jaxrs/model/StaffSlip.java org/folio/rest/jaxrs/model/Campus.java org/folio/rest/jaxrs/model/Details.java org/folio/rest/jaxrs/model/HoldShelfExpiryPeriod.java org/folio/rest/jaxrs/model/Institution.java org/folio/rest/jaxrs/model/Library.java org/folio/rest/jaxrs/model/Location.java org/folio/rest/jaxrs/model/Locations.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/PrimaryServicePointObject.java org/folio/rest/jaxrs/model/StaffSlip.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/Locinst.java org/folio/rest/jaxrs/model/Locinsts.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Loccamp.java org/folio/rest/jaxrs/model/Loccamps.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Loclib.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Locinst.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Loccamp.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Loclib.java org/folio/rest/jaxrs/model/Loclibs.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Mtype.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Mtype.java org/folio/rest/jaxrs/model/Mtypes.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/IssuanceMode.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/IssuanceMode.java org/folio/rest/jaxrs/model/IssuanceModes.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/NatureOfContentTerm.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/NatureOfContentTerm.java org/folio/rest/jaxrs/model/NatureOfContentTerms.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/OaipmhInstanceIds.java org/folio/rest/jaxrs/model/OaipmhInstances.java org/folio/rest/jaxrs/model/OaipmhUpdatedInstanceIds.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/ItemsAndHoldingsFields.java org/folio/rest/jaxrs/model/OaipmhEnrichedInstances.java org/folio/rest/jaxrs/model/Diagnostic.java org/folio/rest/jaxrs/model/Facet.java org/folio/rest/jaxrs/model/FacetValue.java org/folio/rest/jaxrs/model/Ids.java org/folio/rest/jaxrs/model/ResultInfo.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/HoldShelfExpiryPeriod.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Servicepoint.java org/folio/rest/jaxrs/model/Servicepoints.java org/folio/rest/jaxrs/model/StaffSlip.java org/folio/rest/jaxrs/model/HoldShelfExpiryPeriod.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/Servicepoint.java org/folio/rest/jaxrs/model/StaffSlip.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/ServicePointsUser.java org/folio/rest/jaxrs/model/ServicePointsUsers.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/ServicePointsUser.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/Shelflocation.java org/folio/rest/jaxrs/model/Shelflocations.java org/folio/rest/jaxrs/model/Shelflocation.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/StatisticalCodeType.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/StatisticalCodeType.java org/folio/rest/jaxrs/model/StatisticalCodeTypes.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/StatisticalCode.java org/folio/rest/jaxrs/model/Metadata.java org/folio/rest/jaxrs/model/StatisticalCode.java org/folio/rest/jaxrs/model/StatisticalCodes.java org/folio/rest/jaxrs/model/Error.java org/folio/rest/jaxrs/model/Errors.java org/folio/rest/jaxrs/model/Parameter.java [INFO] [INFO] --- build-helper-maven-plugin:3.0.0:add-source (addGeneratedSourceFolder) @ mod-inventory-storage --- [INFO] Source directory: /home/adam/folio/mod-inventory-storage/target/generated-sources/raml-jaxrs added. [INFO] [INFO] --- maven-resources-plugin:3.0.1:copy-resources (filter-descriptor-inputs) @ mod-inventory-storage --- [INFO] Using 'UTF-8' encoding to copy filtered resources. [INFO] Copying 4 resources [INFO] [INFO] --- copy-rename-maven-plugin:1.0:rename (rename-descriptor-outputs) @ mod-inventory-storage --- [INFO] Renamed /home/adam/folio/mod-inventory-storage/target/ModuleDescriptor-template.json to /home/adam/folio/mod-inventory-storage/target/ModuleDescriptor.json [INFO] Renamed /home/adam/folio/mod-inventory-storage/target/DeploymentDescriptor-template.json to /home/adam/folio/mod-inventory-storage/target/DeploymentDescriptor.json [INFO] Renamed /home/adam/folio/mod-inventory-storage/target/DeploymentDescriptor-environment-template.json to /home/adam/folio/mod-inventory-storage/target/DeploymentDescriptor-environment.json [INFO] Renamed /home/adam/folio/mod-inventory-storage/target/Install-template.json to /home/adam/folio/mod-inventory-storage/target/Install.json [INFO] [INFO] --- license-maven-plugin:2.0.0:add-third-party (add-third-party) @ mod-inventory-storage --- [INFO] Load missingFile /home/adam/folio/mod-inventory-storage/src/license/THIRD-PARTY.properties [INFO] Missing file /home/adam/folio/mod-inventory-storage/src/license/THIRD-PARTY.properties is up-to-date. [INFO] Writing third-party file to /home/adam/folio/mod-inventory-storage/target/generated-sources/license/THIRD-PARTY.txt [INFO] Will attach third party file from /home/adam/folio/mod-inventory-storage/src/license/THIRD-PARTY.properties [INFO] [INFO] --- maven-resources-plugin:3.0.1:resources (default-resources) @ mod-inventory-storage --- [INFO] Using 'UTF-8' encoding to copy filtered resources. [INFO] Copying 34 resources [INFO] skip non existing resourceDirectory /home/adam/folio/mod-inventory-storage/target/generated-resources [INFO] Copying 1 resource [INFO] [INFO] --- maven-resources-plugin:3.0.1:copy-resources (copy-resources) @ mod-inventory-storage --- [INFO] Using 'UTF-8' encoding to copy filtered resources. [INFO] Copying 318 resources [INFO] [INFO] --- maven-resources-plugin:3.0.1:copy-resources (copy-reference-data) @ mod-inventory-storage --- [INFO] Using 'UTF-8' encoding to copy filtered resources. [INFO] Copying 596 resources [INFO] [INFO] --- maven-resources-plugin:3.0.1:copy-resources (copy-user-sample-data) @ mod-inventory-storage --- [INFO] Using 'UTF-8' encoding to copy filtered resources. [INFO] Copying 300 resources [INFO] [INFO] --- maven-resources-plugin:3.0.1:copy-resources (copy-sample-data) @ mod-inventory-storage --- [INFO] Using 'UTF-8' encoding to copy filtered resources. [INFO] Copying 70 resources [INFO] [INFO] --- maven-compiler-plugin:3.8.1:compile (default-compile) @ mod-inventory-storage --- [INFO] Changes detected - recompiling the module! [INFO] Compiling 292 source files to /home/adam/folio/mod-inventory-storage/target/classes [INFO] /home/adam/folio/mod-inventory-storage/src/main/java/org/folio/rest/impl/AbstractInstanceRecordsAPI.java: Some input files use or override a deprecated API. [INFO] /home/adam/folio/mod-inventory-storage/src/main/java/org/folio/rest/impl/AbstractInstanceRecordsAPI.java: Recompile with -Xlint:deprecation for details. [INFO] [INFO] --- aspectj-maven-plugin:1.12.6:compile (default) @ mod-inventory-storage --- [INFO] Showing AJC message detail for messages of types: [error, warning, fail] [WARNING] You aren't using a compiler supported by lombok, so lombok will not work and has been disabled. Your processor is: org.aspectj.org.eclipse.jdt.internal.compiler.apt.dispatch.BatchProcessingEnvImpl Lombok supports: OpenJDK javac, ECJ : [INFO] Join point 'method-execution(void org.folio.rest.impl.HridSettingsStorageAPI.getHridSettingsStorageHridSettings(java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.HridSettingsStorageAPI' (HridSettingsStorageAPI.java:25) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.HridSettingsStorageAPI.putHridSettingsStorageHridSettings(org.folio.rest.jaxrs.model.HridSettings, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.HridSettingsStorageAPI' (HridSettingsStorageAPI.java:47) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.PrecedingSucceedingTitleAPI.getPrecedingSucceedingTitles(int, int, java.lang.String, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.PrecedingSucceedingTitleAPI' (PrecedingSucceedingTitleAPI.java:23) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.PrecedingSucceedingTitleAPI.postPrecedingSucceedingTitles(java.lang.String, org.folio.rest.jaxrs.model.PrecedingSucceedingTitle, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.PrecedingSucceedingTitleAPI' (PrecedingSucceedingTitleAPI.java:31) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.PrecedingSucceedingTitleAPI.getPrecedingSucceedingTitlesByPrecedingSucceedingTitleId(java.lang.String, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.PrecedingSucceedingTitleAPI' (PrecedingSucceedingTitleAPI.java:44) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.PrecedingSucceedingTitleAPI.deletePrecedingSucceedingTitlesByPrecedingSucceedingTitleId(java.lang.String, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.PrecedingSucceedingTitleAPI' (PrecedingSucceedingTitleAPI.java:52) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.PrecedingSucceedingTitleAPI.putPrecedingSucceedingTitlesByPrecedingSucceedingTitleId(java.lang.String, java.lang.String, org.folio.rest.jaxrs.model.PrecedingSucceedingTitle, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.PrecedingSucceedingTitleAPI' (PrecedingSucceedingTitleAPI.java:60) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(io.vertx.core.Future org.folio.rest.impl.TenantRefAPI.loadData(org.folio.rest.jaxrs.model.TenantAttributes, java.lang.String, java.util.Map, io.vertx.core.Context))' in Type 'org.folio.rest.impl.TenantRefAPI' (TenantRefAPI.java:86) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.IdentifierTypeAPI.getIdentifierTypes(java.lang.String, int, int, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.IdentifierTypeAPI' (IdentifierTypeAPI.java:44) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.IdentifierTypeAPI.postIdentifierTypes(java.lang.String, org.folio.rest.jaxrs.model.IdentifierType, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.IdentifierTypeAPI' (IdentifierTypeAPI.java:98) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.IdentifierTypeAPI.getIdentifierTypesByIdentifierTypeId(java.lang.String, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.IdentifierTypeAPI' (IdentifierTypeAPI.java:141) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.IdentifierTypeAPI.deleteIdentifierTypesByIdentifierTypeId(java.lang.String, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.IdentifierTypeAPI' (IdentifierTypeAPI.java:156) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.IdentifierTypeAPI.putIdentifierTypesByIdentifierTypeId(java.lang.String, java.lang.String, org.folio.rest.jaxrs.model.IdentifierType, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.IdentifierTypeAPI' (IdentifierTypeAPI.java:206) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.LoanTypeAPI.getLoanTypes(java.lang.String, int, int, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.LoanTypeAPI' (LoanTypeAPI.java:56) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.LoanTypeAPI.postLoanTypes(java.lang.String, org.folio.rest.jaxrs.model.Loantype, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.LoanTypeAPI' (LoanTypeAPI.java:103) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.LoanTypeAPI.getLoanTypesByLoantypeId(java.lang.String, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.LoanTypeAPI' (LoanTypeAPI.java:145) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.LoanTypeAPI.deleteLoanTypesByLoantypeId(java.lang.String, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.LoanTypeAPI' (LoanTypeAPI.java:154) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.LoanTypeAPI.putLoanTypesByLoantypeId(java.lang.String, java.lang.String, org.folio.rest.jaxrs.model.Loantype, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.LoanTypeAPI' (LoanTypeAPI.java:197) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.InstanceRelationshipTypeAPI.getInstanceRelationshipTypes(java.lang.String, int, int, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.InstanceRelationshipTypeAPI' (InstanceRelationshipTypeAPI.java:47) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.InstanceRelationshipTypeAPI.postInstanceRelationshipTypes(java.lang.String, org.folio.rest.jaxrs.model.InstanceRelationshipType, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.InstanceRelationshipTypeAPI' (InstanceRelationshipTypeAPI.java:101) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.InstanceRelationshipTypeAPI.getInstanceRelationshipTypesByRelationshipTypeId(java.lang.String, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.InstanceRelationshipTypeAPI' (InstanceRelationshipTypeAPI.java:144) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.InstanceRelationshipTypeAPI.deleteInstanceRelationshipTypesByRelationshipTypeId(java.lang.String, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.InstanceRelationshipTypeAPI' (InstanceRelationshipTypeAPI.java:159) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.InstanceRelationshipTypeAPI.putInstanceRelationshipTypesByRelationshipTypeId(java.lang.String, java.lang.String, org.folio.rest.jaxrs.model.InstanceRelationshipType, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.InstanceRelationshipTypeAPI' (InstanceRelationshipTypeAPI.java:209) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.HoldingsBatchSyncAPI.postHoldingsStorageBatchSynchronous(boolean, org.folio.rest.jaxrs.model.HoldingsrecordsPost, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.HoldingsBatchSyncAPI' (HoldingsBatchSyncAPI.java:22) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.RecordBulkAPI.getRecordBulkIds(org.folio.rest.jaxrs.model.RecordBulkIdsGetField, org.folio.rest.jaxrs.model.RecordBulkIdsGetRecordType, int, java.lang.String, int, java.lang.String, io.vertx.ext.web.RoutingContext, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.RecordBulkAPI' (RecordBulkAPI.java:40) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.CallNumberTypeAPI.getCallNumberTypes(java.lang.String, int, int, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.CallNumberTypeAPI' (CallNumberTypeAPI.java:45) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.CallNumberTypeAPI.postCallNumberTypes(java.lang.String, org.folio.rest.jaxrs.model.CallNumberType, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.CallNumberTypeAPI' (CallNumberTypeAPI.java:52) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.CallNumberTypeAPI.getCallNumberTypesById(java.lang.String, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.CallNumberTypeAPI' (CallNumberTypeAPI.java:92) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.CallNumberTypeAPI.deleteCallNumberTypesById(java.lang.String, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.CallNumberTypeAPI' (CallNumberTypeAPI.java:99) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.CallNumberTypeAPI.putCallNumberTypesById(java.lang.String, java.lang.String, org.folio.rest.jaxrs.model.CallNumberType, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.CallNumberTypeAPI' (CallNumberTypeAPI.java:140) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.InstanceTypeAPI.getInstanceTypes(java.lang.String, int, int, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.InstanceTypeAPI' (InstanceTypeAPI.java:44) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.InstanceTypeAPI.postInstanceTypes(java.lang.String, org.folio.rest.jaxrs.model.InstanceType, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.InstanceTypeAPI' (InstanceTypeAPI.java:98) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.InstanceTypeAPI.getInstanceTypesByInstanceTypeId(java.lang.String, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.InstanceTypeAPI' (InstanceTypeAPI.java:141) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.InstanceTypeAPI.deleteInstanceTypesByInstanceTypeId(java.lang.String, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.InstanceTypeAPI' (InstanceTypeAPI.java:156) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.InstanceTypeAPI.putInstanceTypesByInstanceTypeId(java.lang.String, java.lang.String, org.folio.rest.jaxrs.model.InstanceType, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.InstanceTypeAPI' (InstanceTypeAPI.java:206) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.HoldingsStorageAPI.deleteHoldingsStorageHoldings(java.lang.String, io.vertx.ext.web.RoutingContext, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.HoldingsStorageAPI' (HoldingsStorageAPI.java:46) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.HoldingsStorageAPI.getHoldingsStorageHoldings(int, int, java.lang.String, java.lang.String, io.vertx.ext.web.RoutingContext, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.HoldingsStorageAPI' (HoldingsStorageAPI.java:60) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.HoldingsStorageAPI.postHoldingsStorageHoldings(java.lang.String, org.folio.rest.jaxrs.model.HoldingsRecord, io.vertx.ext.web.RoutingContext, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.HoldingsStorageAPI' (HoldingsStorageAPI.java:72) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.HoldingsStorageAPI.getHoldingsStorageHoldingsByHoldingsRecordId(java.lang.String, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.HoldingsStorageAPI' (HoldingsStorageAPI.java:86) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.HoldingsStorageAPI.deleteHoldingsStorageHoldingsByHoldingsRecordId(java.lang.String, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.HoldingsStorageAPI' (HoldingsStorageAPI.java:159) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.HoldingsStorageAPI.putHoldingsStorageHoldingsByHoldingsRecordId(java.lang.String, java.lang.String, org.folio.rest.jaxrs.model.HoldingsRecord, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.HoldingsStorageAPI' (HoldingsStorageAPI.java:173) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.ItemStorageAPI.getItemStorageItems(int, int, java.lang.String, java.lang.String, io.vertx.ext.web.RoutingContext, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.ItemStorageAPI' (ItemStorageAPI.java:29) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.ItemStorageAPI.postItemStorageItems(java.lang.String, org.folio.rest.jaxrs.model.Item, io.vertx.ext.web.RoutingContext, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.ItemStorageAPI' (ItemStorageAPI.java:41) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.ItemStorageAPI.getItemStorageItemsByItemId(java.lang.String, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.ItemStorageAPI' (ItemStorageAPI.java:54) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.ItemStorageAPI.deleteItemStorageItems(java.lang.String, io.vertx.ext.web.RoutingContext, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.ItemStorageAPI' (ItemStorageAPI.java:65) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.ItemStorageAPI.putItemStorageItemsByItemId(java.lang.String, java.lang.String, org.folio.rest.jaxrs.model.Item, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.ItemStorageAPI' (ItemStorageAPI.java:77) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.ItemStorageAPI.deleteItemStorageItemsByItemId(java.lang.String, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.ItemStorageAPI' (ItemStorageAPI.java:89) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.ItemBatchSyncAPI.postItemStorageBatchSynchronous(boolean, org.folio.rest.jaxrs.model.ItemsPost, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.ItemBatchSyncAPI' (ItemBatchSyncAPI.java:22) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.InstanceBatchSyncAPI.postInstanceStorageBatchSynchronous(boolean, org.folio.rest.jaxrs.model.InstancesPost, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.InstanceBatchSyncAPI' (InstanceBatchSyncAPI.java:21) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.InventoryHierarchyAPI.getInventoryHierarchyUpdatedInstanceIds(java.lang.String, java.lang.String, boolean, boolean, boolean, java.lang.String, io.vertx.ext.web.RoutingContext, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.InventoryHierarchyAPI' (InventoryHierarchyAPI.java:41) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.InventoryHierarchyAPI.postInventoryHierarchyItemsAndHoldings(org.folio.rest.jaxrs.model.InventoryInstanceIds, io.vertx.ext.web.RoutingContext, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.InventoryHierarchyAPI' (InventoryHierarchyAPI.java:67) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.ClassificationTypeAPI.getClassificationTypes(java.lang.String, int, int, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.ClassificationTypeAPI' (ClassificationTypeAPI.java:48) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.ClassificationTypeAPI.postClassificationTypes(java.lang.String, org.folio.rest.jaxrs.model.ClassificationType, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.ClassificationTypeAPI' (ClassificationTypeAPI.java:102) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.ClassificationTypeAPI.getClassificationTypesByClassificationTypeId(java.lang.String, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.ClassificationTypeAPI' (ClassificationTypeAPI.java:145) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.ClassificationTypeAPI.deleteClassificationTypesByClassificationTypeId(java.lang.String, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.ClassificationTypeAPI' (ClassificationTypeAPI.java:161) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.ClassificationTypeAPI.putClassificationTypesByClassificationTypeId(java.lang.String, java.lang.String, org.folio.rest.jaxrs.model.ClassificationType, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.ClassificationTypeAPI' (ClassificationTypeAPI.java:211) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.InstanceFormatAPI.getInstanceFormats(java.lang.String, int, int, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.InstanceFormatAPI' (InstanceFormatAPI.java:44) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.InstanceFormatAPI.postInstanceFormats(java.lang.String, org.folio.rest.jaxrs.model.InstanceFormat, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.InstanceFormatAPI' (InstanceFormatAPI.java:98) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.InstanceFormatAPI.getInstanceFormatsByInstanceFormatId(java.lang.String, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.InstanceFormatAPI' (InstanceFormatAPI.java:142) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.InstanceFormatAPI.deleteInstanceFormatsByInstanceFormatId(java.lang.String, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.InstanceFormatAPI' (InstanceFormatAPI.java:157) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.InstanceFormatAPI.putInstanceFormatsByInstanceFormatId(java.lang.String, java.lang.String, org.folio.rest.jaxrs.model.InstanceFormat, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.InstanceFormatAPI' (InstanceFormatAPI.java:207) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.OaiPmhViewInstancesAPI.getOaiPmhViewInstances(java.lang.String, java.lang.String, boolean, boolean, java.lang.String, io.vertx.ext.web.RoutingContext, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.OaiPmhViewInstancesAPI' (OaiPmhViewInstancesAPI.java:26) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.OaiPmhViewInstancesAPI.postOaiPmhViewEnrichedInstances(org.folio.rest.jaxrs.model.OaipmhInstanceIds, io.vertx.ext.web.RoutingContext, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.OaiPmhViewInstancesAPI' (OaiPmhViewInstancesAPI.java:38) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.OaiPmhViewInstancesAPI.getOaiPmhViewUpdatedInstanceIds(java.lang.String, java.lang.String, boolean, boolean, java.lang.String, io.vertx.ext.web.RoutingContext, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.OaiPmhViewInstancesAPI' (OaiPmhViewInstancesAPI.java:51) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.MaterialTypeAPI.getMaterialTypes(java.lang.String, int, int, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.MaterialTypeAPI' (MaterialTypeAPI.java:49) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.MaterialTypeAPI.postMaterialTypes(java.lang.String, org.folio.rest.jaxrs.model.Mtype, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.MaterialTypeAPI' (MaterialTypeAPI.java:97) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.MaterialTypeAPI.getMaterialTypesByMaterialtypeId(java.lang.String, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.MaterialTypeAPI' (MaterialTypeAPI.java:151) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.MaterialTypeAPI.deleteMaterialTypesByMaterialtypeId(java.lang.String, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.MaterialTypeAPI' (MaterialTypeAPI.java:161) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.MaterialTypeAPI.putMaterialTypesByMaterialtypeId(java.lang.String, java.lang.String, org.folio.rest.jaxrs.model.Mtype, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.MaterialTypeAPI' (MaterialTypeAPI.java:170) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.IllPolicyAPI.getIllPolicies(java.lang.String, int, int, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.IllPolicyAPI' (IllPolicyAPI.java:49) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.AlternativeTitleTypeAPI.getAlternativeTitleTypes(java.lang.String, int, int, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.AlternativeTitleTypeAPI' (AlternativeTitleTypeAPI.java:42) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.AlternativeTitleTypeAPI.postAlternativeTitleTypes(java.lang.String, org.folio.rest.jaxrs.model.AlternativeTitleType, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.AlternativeTitleTypeAPI' (AlternativeTitleTypeAPI.java:52) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.AlternativeTitleTypeAPI.getAlternativeTitleTypesById(java.lang.String, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.AlternativeTitleTypeAPI' (AlternativeTitleTypeAPI.java:92) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.AlternativeTitleTypeAPI.deleteAlternativeTitleTypesById(java.lang.String, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.AlternativeTitleTypeAPI' (AlternativeTitleTypeAPI.java:99) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.AlternativeTitleTypeAPI.putAlternativeTitleTypesById(java.lang.String, java.lang.String, org.folio.rest.jaxrs.model.AlternativeTitleType, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.AlternativeTitleTypeAPI' (AlternativeTitleTypeAPI.java:140) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.ContributorNameTypeAPI.getContributorNameTypes(java.lang.String, int, int, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.ContributorNameTypeAPI' (ContributorNameTypeAPI.java:32) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.ContributorNameTypeAPI.postContributorNameTypes(java.lang.String, org.folio.rest.jaxrs.model.ContributorNameType, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.ContributorNameTypeAPI' (ContributorNameTypeAPI.java:50) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.ContributorNameTypeAPI.getContributorNameTypesByContributorNameTypeId(java.lang.String, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.ContributorNameTypeAPI' (ContributorNameTypeAPI.java:92) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.ContributorNameTypeAPI.deleteContributorNameTypesByContributorNameTypeId(java.lang.String, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.ContributorNameTypeAPI' (ContributorNameTypeAPI.java:108) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.ContributorNameTypeAPI.putContributorNameTypesByContributorNameTypeId(java.lang.String, java.lang.String, org.folio.rest.jaxrs.model.ContributorNameType, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.ContributorNameTypeAPI' (ContributorNameTypeAPI.java:158) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.ContributorTypeAPI.getContributorTypes(java.lang.String, int, int, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.ContributorTypeAPI' (ContributorTypeAPI.java:44) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.ContributorTypeAPI.postContributorTypes(java.lang.String, org.folio.rest.jaxrs.model.ContributorType, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.ContributorTypeAPI' (ContributorTypeAPI.java:98) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.ContributorTypeAPI.getContributorTypesByContributorTypeId(java.lang.String, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.ContributorTypeAPI' (ContributorTypeAPI.java:141) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.ContributorTypeAPI.deleteContributorTypesByContributorTypeId(java.lang.String, java.lang.String, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.ContributorTypeAPI' (ContributorTypeAPI.java:156) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] Join point 'method-execution(void org.folio.rest.impl.ContributorTypeAPI.putContributorTypesByContributorTypeId(java.lang.String, java.lang.String, org.folio.rest.jaxrs.model.ContributorType, java.util.Map, io.vertx.core.Handler, io.vertx.core.Context))' in Type 'org.folio.rest.impl.ContributorTypeAPI' (ContributorTypeAPI.java:206) advised by before advice from 'org.folio.rest.annotations.RestValidator' (domain-models-api-aspects-33.0.0-SNAPSHOT.jar!RestValidator.class:37(from RestValidator.aj)) [INFO] [INFO] --- maven-resources-plugin:3.0.1:testResources (default-testResources) @ mod-inventory-storage --- [INFO] Using 'UTF-8' encoding to copy filtered resources. [INFO] Copying 4 resources [INFO] [INFO] --- maven-compiler-plugin:3.8.1:testCompile (default-testCompile) @ mod-inventory-storage --- [INFO] Changes detected - recompiling the module! [INFO] Compiling 121 source files to /home/adam/folio/mod-inventory-storage/target/test-classes [INFO] /home/adam/folio/mod-inventory-storage/src/test/java/org/folio/rest/api/HridSettingsStorageParameterizedTest.java: Some input files use or override a deprecated API. [INFO] /home/adam/folio/mod-inventory-storage/src/test/java/org/folio/rest/api/HridSettingsStorageParameterizedTest.java: Recompile with -Xlint:deprecation for details. [INFO] /home/adam/folio/mod-inventory-storage/src/test/java/org/folio/rest/api/InstanceStorageTest.java: Some input files use unchecked or unsafe operations. [INFO] /home/adam/folio/mod-inventory-storage/src/test/java/org/folio/rest/api/InstanceStorageTest.java: Recompile with -Xlint:unchecked for details. [INFO] [INFO] --- maven-surefire-plugin:2.19.1:test (default-test) @ mod-inventory-storage --- ------------------------------------------------------- T E S T S ------------------------------------------------------- Running org.folio.rest.api.ItemShelvingOrderMigrationServiceApiTest 11:53:29 [] [] [] [] INFO TestBase starting @BeforeClass testBaseBeforeClass() SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder". SLF4J: Defaulting to no-operation (NOP) logger implementation SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details. 11:53:29 [] [] [] [] INFO StorageTestSuite starting @BeforeClass before() 11:53:34 [] [] [] [] INFO StorageTestSuite starting Kafka host=localhost port=49275 11:53:34 [] [] [] [] INFO StorageTestSuite starting RestVerticle 11:53:34 [] [] [] [] INFO RestVerticle git: git@github.com:folio-org/raml-module-builder.git f11a2a52f2a547cdd4b949fb580a686da8c3debd 11:53:34 [] [] [] [] INFO RestVerticle metrics enabled: false 11:53:34 [] [] [] [] INFO Messages Loading messages from /infra-messages/APIMessages_de.properties ................................ 11:53:34 [] [] [] [] INFO Messages Loading messages from /infra-messages/APIMessages_en.properties ................................ 11:53:34 [] [] [] [] INFO Version HV000001: Hibernate Validator 6.1.5.Final 11:53:35 [] [] [] [] INFO RestRouting Adding route DELETE /nature-of-content-terms/{id} -> deleteNatureOfContentTermsById 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /nature-of-content-terms/{id} -> getNatureOfContentTermsById 11:53:35 [] [] [] [] INFO RestRouting Adding route PUT /nature-of-content-terms/{id} -> putNatureOfContentTermsById 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /nature-of-content-terms -> getNatureOfContentTerms 11:53:35 [] [] [] [] INFO RestRouting Adding route POST /nature-of-content-terms -> postNatureOfContentTerms 11:53:35 [] [] [] [] INFO RestRouting Adding route DELETE /holdings-types/{id} -> deleteHoldingsTypesById 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /holdings-types/{id} -> getHoldingsTypesById 11:53:35 [] [] [] [] INFO RestRouting Adding route PUT /holdings-types/{id} -> putHoldingsTypesById 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /holdings-types -> getHoldingsTypes 11:53:35 [] [] [] [] INFO RestRouting Adding route POST /holdings-types -> postHoldingsTypes 11:53:35 [] [] [] [] INFO RestRouting Adding route DELETE /call-number-types/{id} -> deleteCallNumberTypesById 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /call-number-types/{id} -> getCallNumberTypesById 11:53:35 [] [] [] [] INFO RestRouting Adding route PUT /call-number-types/{id} -> putCallNumberTypesById 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /call-number-types -> getCallNumberTypes 11:53:35 [] [] [] [] INFO RestRouting Adding route POST /call-number-types -> postCallNumberTypes 11:53:35 [] [] [] [] INFO RestRouting Adding route DELETE /item-note-types/{id} -> deleteItemNoteTypesById 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /item-note-types/{id} -> getItemNoteTypesById 11:53:35 [] [] [] [] INFO RestRouting Adding route PUT /item-note-types/{id} -> putItemNoteTypesById 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /item-note-types -> getItemNoteTypes 11:53:35 [] [] [] [] INFO RestRouting Adding route POST /item-note-types -> postItemNoteTypes 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /_/jsonSchemas -> getJsonSchemas 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /inventory-view/instances -> getInventoryViewInstances 11:53:35 [] [] [] [] INFO RestRouting Adding route DELETE /statistical-codes/{statisticalCodeId} -> deleteStatisticalCodesByStatisticalCodeId 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /statistical-codes/{statisticalCodeId} -> getStatisticalCodesByStatisticalCodeId 11:53:35 [] [] [] [] INFO RestRouting Adding route PUT /statistical-codes/{statisticalCodeId} -> putStatisticalCodesByStatisticalCodeId 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /statistical-codes -> getStatisticalCodes 11:53:35 [] [] [] [] INFO RestRouting Adding route POST /statistical-codes -> postStatisticalCodes 11:53:35 [] [] [] [] INFO RestRouting Adding route DELETE /preceding-succeeding-titles/{precedingSucceedingTitleId} -> deletePrecedingSucceedingTitlesByPrecedingSucceedingTitleId 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /preceding-succeeding-titles/{precedingSucceedingTitleId} -> getPrecedingSucceedingTitlesByPrecedingSucceedingTitleId 11:53:35 [] [] [] [] INFO RestRouting Adding route PUT /preceding-succeeding-titles/{precedingSucceedingTitleId} -> putPrecedingSucceedingTitlesByPrecedingSucceedingTitleId 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /preceding-succeeding-titles -> getPrecedingSucceedingTitles 11:53:35 [] [] [] [] INFO RestRouting Adding route POST /preceding-succeeding-titles -> postPrecedingSucceedingTitles 11:53:35 [] [] [] [] INFO RestRouting Adding route DELETE /loan-types -> deleteLoanTypes 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /loan-types -> getLoanTypes 11:53:35 [] [] [] [] INFO RestRouting Adding route POST /loan-types -> postLoanTypes 11:53:35 [] [] [] [] INFO RestRouting Adding route DELETE /loan-types/{loantypeId} -> deleteLoanTypesByLoantypeId 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /loan-types/{loantypeId} -> getLoanTypesByLoantypeId 11:53:35 [] [] [] [] INFO RestRouting Adding route PUT /loan-types/{loantypeId} -> putLoanTypesByLoantypeId 11:53:35 [] [] [] [] INFO RestRouting Adding route DELETE /modes-of-issuance -> deleteModesOfIssuance 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /modes-of-issuance -> getModesOfIssuance 11:53:35 [] [] [] [] INFO RestRouting Adding route POST /modes-of-issuance -> postModesOfIssuance 11:53:35 [] [] [] [] INFO RestRouting Adding route DELETE /modes-of-issuance/{modeOfIssuanceId} -> deleteModesOfIssuanceByModeOfIssuanceId 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /modes-of-issuance/{modeOfIssuanceId} -> getModesOfIssuanceByModeOfIssuanceId 11:53:35 [] [] [] [] INFO RestRouting Adding route PUT /modes-of-issuance/{modeOfIssuanceId} -> putModesOfIssuanceByModeOfIssuanceId 11:53:35 [] [] [] [] INFO RestRouting Adding route POST /holdings-storage/batch/synchronous -> postHoldingsStorageBatchSynchronous 11:53:35 [] [] [] [] INFO RestRouting Adding route DELETE /instance-types/{instanceTypeId} -> deleteInstanceTypesByInstanceTypeId 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /instance-types/{instanceTypeId} -> getInstanceTypesByInstanceTypeId 11:53:35 [] [] [] [] INFO RestRouting Adding route PUT /instance-types/{instanceTypeId} -> putInstanceTypesByInstanceTypeId 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /instance-types -> getInstanceTypes 11:53:35 [] [] [] [] INFO RestRouting Adding route POST /instance-types -> postInstanceTypes 11:53:35 [] [] [] [] INFO RestRouting Adding route DELETE /contributor-name-types/{contributorNameTypeId} -> deleteContributorNameTypesByContributorNameTypeId 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /contributor-name-types/{contributorNameTypeId} -> getContributorNameTypesByContributorNameTypeId 11:53:35 [] [] [] [] INFO RestRouting Adding route PUT /contributor-name-types/{contributorNameTypeId} -> putContributorNameTypesByContributorNameTypeId 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /contributor-name-types -> getContributorNameTypes 11:53:35 [] [] [] [] INFO RestRouting Adding route POST /contributor-name-types -> postContributorNameTypes 11:53:35 [] [] [] [] INFO RestRouting Adding route DELETE /classification-types/{classificationTypeId} -> deleteClassificationTypesByClassificationTypeId 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /classification-types/{classificationTypeId} -> getClassificationTypesByClassificationTypeId 11:53:35 [] [] [] [] INFO RestRouting Adding route PUT /classification-types/{classificationTypeId} -> putClassificationTypesByClassificationTypeId 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /classification-types -> getClassificationTypes 11:53:35 [] [] [] [] INFO RestRouting Adding route POST /classification-types -> postClassificationTypes 11:53:35 [] [] [] [] INFO RestRouting Adding route DELETE /item-damaged-statuses/{id} -> deleteItemDamagedStatusesById 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /item-damaged-statuses/{id} -> getItemDamagedStatusesById 11:53:35 [] [] [] [] INFO RestRouting Adding route PUT /item-damaged-statuses/{id} -> putItemDamagedStatusesById 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /item-damaged-statuses -> getItemDamagedStatuses 11:53:35 [] [] [] [] INFO RestRouting Adding route POST /item-damaged-statuses -> postItemDamagedStatuses 11:53:35 [] [] [] [] INFO RestRouting Adding route DELETE /item-storage/items -> deleteItemStorageItems 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /item-storage/items -> getItemStorageItems 11:53:35 [] [] [] [] INFO RestRouting Adding route POST /item-storage/items -> postItemStorageItems 11:53:35 [] [] [] [] INFO RestRouting Adding route DELETE /item-storage/items/{itemId} -> deleteItemStorageItemsByItemId 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /item-storage/items/{itemId} -> getItemStorageItemsByItemId 11:53:35 [] [] [] [] INFO RestRouting Adding route PUT /item-storage/items/{itemId} -> putItemStorageItemsByItemId 11:53:35 [] [] [] [] INFO RestRouting Looks like org.folio.rest.jaxrs.resource.Rmbtests is not implemented 11:53:35 [] [] [] [] INFO RestRouting Adding route DELETE /instance-relationship-types/{relationshipTypeId} -> deleteInstanceRelationshipTypesByRelationshipTypeId 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /instance-relationship-types/{relationshipTypeId} -> getInstanceRelationshipTypesByRelationshipTypeId 11:53:35 [] [] [] [] INFO RestRouting Adding route PUT /instance-relationship-types/{relationshipTypeId} -> putInstanceRelationshipTypesByRelationshipTypeId 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /instance-relationship-types -> getInstanceRelationshipTypes 11:53:35 [] [] [] [] INFO RestRouting Adding route POST /instance-relationship-types -> postInstanceRelationshipTypes 11:53:35 [] [] [] [] INFO RestRouting Adding route DELETE /shelf-locations -> deleteShelfLocations 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /shelf-locations -> getShelfLocations 11:53:35 [] [] [] [] INFO RestRouting Adding route POST /shelf-locations -> postShelfLocations 11:53:35 [] [] [] [] INFO RestRouting Adding route DELETE /shelf-locations/{id} -> deleteShelfLocationsById 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /shelf-locations/{id} -> getShelfLocationsById 11:53:35 [] [] [] [] INFO RestRouting Adding route PUT /shelf-locations/{id} -> putShelfLocationsById 11:53:35 [] [] [] [] INFO RestRouting Adding route DELETE /service-points-users -> deleteServicePointsUsers 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /service-points-users -> getServicePointsUsers 11:53:35 [] [] [] [] INFO RestRouting Adding route POST /service-points-users -> postServicePointsUsers 11:53:35 [] [] [] [] INFO RestRouting Adding route DELETE /service-points-users/{servicePointsUserId} -> deleteServicePointsUsersByServicePointsUserId 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /service-points-users/{servicePointsUserId} -> getServicePointsUsersByServicePointsUserId 11:53:35 [] [] [] [] INFO RestRouting Adding route PUT /service-points-users/{servicePointsUserId} -> putServicePointsUsersByServicePointsUserId 11:53:35 [] [] [] [] INFO RestRouting Adding route DELETE /_/tenant/{operation_id} -> deleteTenantByOperationId 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /_/tenant/{operation_id} -> getTenantByOperationId 11:53:35 [] [] [] [] INFO RestRouting Adding route POST /_/tenant -> postTenant 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /oai-pmh-view/instances -> getOaiPmhViewInstances 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /oai-pmh-view/updatedInstanceIds -> getOaiPmhViewUpdatedInstanceIds 11:53:35 [] [] [] [] INFO RestRouting Adding route POST /oai-pmh-view/enrichedInstances -> postOaiPmhViewEnrichedInstances 11:53:35 [] [] [] [] INFO RestRouting Adding route DELETE /instance-storage/reindex/{id} -> deleteInstanceStorageReindexById 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /instance-storage/reindex/{id} -> getInstanceStorageReindexById 11:53:35 [] [] [] [] INFO RestRouting Adding route POST /instance-storage/reindex -> postInstanceStorageReindex 11:53:35 [] [] [] [] INFO RestRouting Adding route POST /item-storage/batch/synchronous -> postItemStorageBatchSynchronous 11:53:35 [] [] [] [] INFO RestRouting Adding route DELETE /ill-policies/{id} -> deleteIllPoliciesById 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /ill-policies/{id} -> getIllPoliciesById 11:53:35 [] [] [] [] INFO RestRouting Adding route PUT /ill-policies/{id} -> putIllPoliciesById 11:53:35 [] [] [] [] INFO RestRouting Adding route GET /ill-policies -> getIllPolicies 11:53:35 [] [] [] [] INFO RestRouting Adding route POST /ill-policies -> postIllPolicies 11:53:36 [] [] [] [] INFO RestRouting Adding route DELETE /instance-note-types/{id} -> deleteInstanceNoteTypesById 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /instance-note-types/{id} -> getInstanceNoteTypesById 11:53:36 [] [] [] [] INFO RestRouting Adding route PUT /instance-note-types/{id} -> putInstanceNoteTypesById 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /instance-note-types -> getInstanceNoteTypes 11:53:36 [] [] [] [] INFO RestRouting Adding route POST /instance-note-types -> postInstanceNoteTypes 11:53:36 [] [] [] [] INFO RestRouting Adding route DELETE /identifier-types/{identifierTypeId} -> deleteIdentifierTypesByIdentifierTypeId 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /identifier-types/{identifierTypeId} -> getIdentifierTypesByIdentifierTypeId 11:53:36 [] [] [] [] INFO RestRouting Adding route PUT /identifier-types/{identifierTypeId} -> putIdentifierTypesByIdentifierTypeId 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /identifier-types -> getIdentifierTypes 11:53:36 [] [] [] [] INFO RestRouting Adding route POST /identifier-types -> postIdentifierTypes 11:53:36 [] [] [] [] INFO RestRouting Adding route DELETE /alternative-title-types/{id} -> deleteAlternativeTitleTypesById 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /alternative-title-types/{id} -> getAlternativeTitleTypesById 11:53:36 [] [] [] [] INFO RestRouting Adding route PUT /alternative-title-types/{id} -> putAlternativeTitleTypesById 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /alternative-title-types -> getAlternativeTitleTypes 11:53:36 [] [] [] [] INFO RestRouting Adding route POST /alternative-title-types -> postAlternativeTitleTypes 11:53:36 [] [] [] [] INFO RestRouting Adding route POST /instance-storage/batch/synchronous -> postInstanceStorageBatchSynchronous 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /inventory-hierarchy/updated-instance-ids -> getInventoryHierarchyUpdatedInstanceIds 11:53:36 [] [] [] [] INFO RestRouting Adding route POST /inventory-hierarchy/items-and-holdings -> postInventoryHierarchyItemsAndHoldings 11:53:36 [] [] [] [] INFO RestRouting Adding route DELETE /service-points -> deleteServicePoints 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /service-points -> getServicePoints 11:53:36 [] [] [] [] INFO RestRouting Adding route POST /service-points -> postServicePoints 11:53:36 [] [] [] [] INFO RestRouting Adding route DELETE /service-points/{servicepointId} -> deleteServicePointsByServicepointId 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /service-points/{servicepointId} -> getServicePointsByServicepointId 11:53:36 [] [] [] [] INFO RestRouting Adding route PUT /service-points/{servicepointId} -> putServicePointsByServicepointId 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /_/ramls -> getRamls 11:53:36 [] [] [] [] INFO RestRouting Adding route DELETE /holdings-note-types/{id} -> deleteHoldingsNoteTypesById 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /holdings-note-types/{id} -> getHoldingsNoteTypesById 11:53:36 [] [] [] [] INFO RestRouting Adding route PUT /holdings-note-types/{id} -> putHoldingsNoteTypesById 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /holdings-note-types -> getHoldingsNoteTypes 11:53:36 [] [] [] [] INFO RestRouting Adding route POST /holdings-note-types -> postHoldingsNoteTypes 11:53:36 [] [] [] [] INFO RestRouting Adding route DELETE /holdings-storage/holdings -> deleteHoldingsStorageHoldings 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /holdings-storage/holdings -> getHoldingsStorageHoldings 11:53:36 [] [] [] [] INFO RestRouting Adding route POST /holdings-storage/holdings -> postHoldingsStorageHoldings 11:53:36 [] [] [] [] INFO RestRouting Adding route DELETE /holdings-storage/holdings/{holdingsRecordId} -> deleteHoldingsStorageHoldingsByHoldingsRecordId 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /holdings-storage/holdings/{holdingsRecordId} -> getHoldingsStorageHoldingsByHoldingsRecordId 11:53:36 [] [] [] [] INFO RestRouting Adding route PUT /holdings-storage/holdings/{holdingsRecordId} -> putHoldingsStorageHoldingsByHoldingsRecordId 11:53:36 [] [] [] [] INFO RestRouting Adding route POST /instance-storage/batch/instances -> postInstanceStorageBatchInstances 11:53:36 [] [] [] [] INFO RestRouting Adding route DELETE /locations -> deleteLocations 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /locations -> getLocations 11:53:36 [] [] [] [] INFO RestRouting Adding route POST /locations -> postLocations 11:53:36 [] [] [] [] INFO RestRouting Adding route DELETE /locations/{id} -> deleteLocationsById 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /locations/{id} -> getLocationsById 11:53:36 [] [] [] [] INFO RestRouting Adding route PUT /locations/{id} -> putLocationsById 11:53:36 [] [] [] [] INFO RestRouting Adding route DELETE /material-types -> deleteMaterialTypes 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /material-types -> getMaterialTypes 11:53:36 [] [] [] [] INFO RestRouting Adding route POST /material-types -> postMaterialTypes 11:53:36 [] [] [] [] INFO RestRouting Adding route DELETE /material-types/{materialtypeId} -> deleteMaterialTypesByMaterialtypeId 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /material-types/{materialtypeId} -> getMaterialTypesByMaterialtypeId 11:53:36 [] [] [] [] INFO RestRouting Adding route PUT /material-types/{materialtypeId} -> putMaterialTypesByMaterialtypeId 11:53:36 [] [] [] [] INFO RestRouting Adding route DELETE /instance-statuses -> deleteInstanceStatuses 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /instance-statuses -> getInstanceStatuses 11:53:36 [] [] [] [] INFO RestRouting Adding route POST /instance-statuses -> postInstanceStatuses 11:53:36 [] [] [] [] INFO RestRouting Adding route DELETE /instance-statuses/{instanceStatusId} -> deleteInstanceStatusesByInstanceStatusId 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /instance-statuses/{instanceStatusId} -> getInstanceStatusesByInstanceStatusId 11:53:36 [] [] [] [] INFO RestRouting Adding route PUT /instance-statuses/{instanceStatusId} -> putInstanceStatusesByInstanceStatusId 11:53:36 [] [] [] [] INFO RestRouting Adding route DELETE /instance-storage/instance-relationships/{relationshipId} -> deleteInstanceStorageInstanceRelationshipsByRelationshipId 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /instance-storage/instance-relationships/{relationshipId} -> getInstanceStorageInstanceRelationshipsByRelationshipId 11:53:36 [] [] [] [] INFO RestRouting Adding route PUT /instance-storage/instance-relationships/{relationshipId} -> putInstanceStorageInstanceRelationshipsByRelationshipId 11:53:36 [] [] [] [] INFO RestRouting Adding route DELETE /instance-storage/instances -> deleteInstanceStorageInstances 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /instance-storage/instances -> getInstanceStorageInstances 11:53:36 [] [] [] [] INFO RestRouting Adding route POST /instance-storage/instances -> postInstanceStorageInstances 11:53:36 [] [] [] [] INFO RestRouting Adding route DELETE /instance-storage/instances/{instanceId} -> deleteInstanceStorageInstancesByInstanceId 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /instance-storage/instances/{instanceId} -> getInstanceStorageInstancesByInstanceId 11:53:36 [] [] [] [] INFO RestRouting Adding route PUT /instance-storage/instances/{instanceId} -> putInstanceStorageInstancesByInstanceId 11:53:36 [] [] [] [] INFO RestRouting Adding route DELETE /instance-storage/instances/{instanceId}/source-record -> deleteInstanceStorageInstancesSourceRecordByInstanceId 11:53:36 [] [] [] [] INFO RestRouting Adding route DELETE /instance-storage/instances/{instanceId}/source-record/marc-json -> deleteInstanceStorageInstancesSourceRecordMarcJsonByInstanceId 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /instance-storage/instances/{instanceId}/source-record/marc-json -> getInstanceStorageInstancesSourceRecordMarcJsonByInstanceId 11:53:36 [] [] [] [] INFO RestRouting Adding route PUT /instance-storage/instances/{instanceId}/source-record/marc-json -> putInstanceStorageInstancesSourceRecordMarcJsonByInstanceId 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /instance-storage/instance-relationships -> getInstanceStorageInstanceRelationships 11:53:36 [] [] [] [] INFO RestRouting Adding route POST /instance-storage/instance-relationships -> postInstanceStorageInstanceRelationships 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /instance-storage/instances/{instanceId}/source-record/mods -> getInstanceStorageInstancesSourceRecordModsByInstanceId 11:53:36 [] [] [] [] INFO RestRouting Adding route PUT /instance-storage/instances/{instanceId}/source-record/mods -> putInstanceStorageInstancesSourceRecordModsByInstanceId 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /record-bulk/ids -> getRecordBulkIds 11:53:36 [] [] [] [] INFO RestRouting Adding route DELETE /statistical-code-types -> deleteStatisticalCodeTypes 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /statistical-code-types -> getStatisticalCodeTypes 11:53:36 [] [] [] [] INFO RestRouting Adding route POST /statistical-code-types -> postStatisticalCodeTypes 11:53:36 [] [] [] [] INFO RestRouting Adding route DELETE /statistical-code-types/{statisticalCodeTypeId} -> deleteStatisticalCodeTypesByStatisticalCodeTypeId 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /statistical-code-types/{statisticalCodeTypeId} -> getStatisticalCodeTypesByStatisticalCodeTypeId 11:53:36 [] [] [] [] INFO RestRouting Adding route PUT /statistical-code-types/{statisticalCodeTypeId} -> putStatisticalCodeTypesByStatisticalCodeTypeId 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /hrid-settings-storage/hrid-settings -> getHridSettingsStorageHridSettings 11:53:36 [] [] [] [] INFO RestRouting Adding route PUT /hrid-settings-storage/hrid-settings -> putHridSettingsStorageHridSettings 11:53:36 [] [] [] [] INFO RestRouting Adding route DELETE /location-units/campuses -> deleteLocationUnitsCampuses 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /location-units/campuses -> getLocationUnitsCampuses 11:53:36 [] [] [] [] INFO RestRouting Adding route POST /location-units/campuses -> postLocationUnitsCampuses 11:53:36 [] [] [] [] INFO RestRouting Adding route DELETE /location-units/campuses/{id} -> deleteLocationUnitsCampusesById 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /location-units/campuses/{id} -> getLocationUnitsCampusesById 11:53:36 [] [] [] [] INFO RestRouting Adding route PUT /location-units/campuses/{id} -> putLocationUnitsCampusesById 11:53:36 [] [] [] [] INFO RestRouting Adding route DELETE /location-units/institutions -> deleteLocationUnitsInstitutions 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /location-units/institutions -> getLocationUnitsInstitutions 11:53:36 [] [] [] [] INFO RestRouting Adding route POST /location-units/institutions -> postLocationUnitsInstitutions 11:53:36 [] [] [] [] INFO RestRouting Adding route DELETE /location-units/institutions/{id} -> deleteLocationUnitsInstitutionsById 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /location-units/institutions/{id} -> getLocationUnitsInstitutionsById 11:53:36 [] [] [] [] INFO RestRouting Adding route PUT /location-units/institutions/{id} -> putLocationUnitsInstitutionsById 11:53:36 [] [] [] [] INFO RestRouting Adding route DELETE /location-units/libraries -> deleteLocationUnitsLibraries 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /location-units/libraries -> getLocationUnitsLibraries 11:53:36 [] [] [] [] INFO RestRouting Adding route POST /location-units/libraries -> postLocationUnitsLibraries 11:53:36 [] [] [] [] INFO RestRouting Adding route DELETE /location-units/libraries/{id} -> deleteLocationUnitsLibrariesById 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /location-units/libraries/{id} -> getLocationUnitsLibrariesById 11:53:36 [] [] [] [] INFO RestRouting Adding route PUT /location-units/libraries/{id} -> putLocationUnitsLibrariesById 11:53:36 [] [] [] [] INFO RestRouting Adding route DELETE /holdings-sources/{id} -> deleteHoldingsSourcesById 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /holdings-sources/{id} -> getHoldingsSourcesById 11:53:36 [] [] [] [] INFO RestRouting Adding route PUT /holdings-sources/{id} -> putHoldingsSourcesById 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /holdings-sources -> getHoldingsSources 11:53:36 [] [] [] [] INFO RestRouting Adding route POST /holdings-sources -> postHoldingsSources 11:53:36 [] [] [] [] INFO RestRouting Adding route DELETE /electronic-access-relationships/{electronicAccessRelationshipId} -> deleteElectronicAccessRelationshipsByElectronicAccessRelationshipId 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /electronic-access-relationships/{electronicAccessRelationshipId} -> getElectronicAccessRelationshipsByElectronicAccessRelationshipId 11:53:36 [] [] [] [] INFO RestRouting Adding route PUT /electronic-access-relationships/{electronicAccessRelationshipId} -> putElectronicAccessRelationshipsByElectronicAccessRelationshipId 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /electronic-access-relationships -> getElectronicAccessRelationships 11:53:36 [] [] [] [] INFO RestRouting Adding route POST /electronic-access-relationships -> postElectronicAccessRelationships 11:53:36 [] [] [] [] INFO RestRouting Adding route DELETE /instance-formats/{instanceFormatId} -> deleteInstanceFormatsByInstanceFormatId 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /instance-formats/{instanceFormatId} -> getInstanceFormatsByInstanceFormatId 11:53:36 [] [] [] [] INFO RestRouting Adding route PUT /instance-formats/{instanceFormatId} -> putInstanceFormatsByInstanceFormatId 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /instance-formats -> getInstanceFormats 11:53:36 [] [] [] [] INFO RestRouting Adding route POST /instance-formats -> postInstanceFormats 11:53:36 [] [] [] [] INFO RestRouting Adding route DELETE /contributor-types/{contributorTypeId} -> deleteContributorTypesByContributorTypeId 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /contributor-types/{contributorTypeId} -> getContributorTypesByContributorTypeId 11:53:36 [] [] [] [] INFO RestRouting Adding route PUT /contributor-types/{contributorTypeId} -> putContributorTypesByContributorTypeId 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /contributor-types -> getContributorTypes 11:53:36 [] [] [] [] INFO RestRouting Adding route POST /contributor-types -> postContributorTypes 11:53:36 [] [] [] [] INFO RestRouting Adding route DELETE /admin/kill_query -> deleteAdminKillQuery 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /admin/cache_hit_rates -> getAdminCacheHitRates 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /admin/db_cache_summary -> getAdminDbCacheSummary 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /admin/health -> getAdminHealth 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /admin/jstack -> getAdminJstack 11:53:36 [] [] [] [] INFO RestRouting Adding route PUT /admin/jstack -> putAdminJstack 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /admin/list_locking_queries -> getAdminListLockingQueries 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /admin/loglevel -> getAdminLoglevel 11:53:36 [] [] [] [] INFO RestRouting Adding route PUT /admin/loglevel -> putAdminLoglevel 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /admin/memory -> getAdminMemory 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /admin/postgres_active_sessions -> getAdminPostgresActiveSessions 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /admin/postgres_load -> getAdminPostgresLoad 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /admin/postgres_table_access_stats -> getAdminPostgresTableAccessStats 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /admin/postgres_table_size -> getAdminPostgresTableSize 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /admin/slow_queries -> getAdminSlowQueries 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /admin/table_index_usage -> getAdminTableIndexUsage 11:53:36 [] [] [] [] INFO RestRouting Adding route GET /admin/total_db_size -> getAdminTotalDbSize 11:53:36 [] [] [] [] INFO RestRouting Adding route POST /admin/get_password -> postAdminGetPassword 11:53:36 [] [] [] [] INFO RestRouting Adding route POST /admin/importSQL -> postAdminImportSQL 11:53:36 [] [] [] [] INFO RestRouting Adding route POST /admin/postgres_maintenance -> postAdminPostgresMaintenance 11:53:36 [] [] [] [] INFO RestRouting Adding route POST /admin/set_AES_key -> postAdminSetAESKey 11:53:36 [] [] [] [] INFO RestRouting Adding route PUT /admin/postgres_create_indexes -> putAdminPostgresCreateIndexes 11:53:36 [] [] [] [] INFO RestRouting Adding route PUT /admin/postgres_drop_indexes -> putAdminPostgresDropIndexes 11:53:36 [] [] [] [] INFO RestVerticle Listening port 62728 11:53:36 [] [] [] [] INFO RestVerticle No periodic implementation found, continuing with deployment 11:53:36 [] [] [] [] INFO RestVerticle No Post Deploy Hook implementation found, continuing with deployment 11:53:36 [] [] [] [] INFO StorageTestSuite preparing tenant 11:53:36 [] [] [] [] INFO HttpClient POST http://localhost:62728/_/tenant, Request: { "parameters" : [ { "key" : "loadReference", "value" : "true" }, { "key" : "loadSample", "value" : "false" } ], "module_to" : "mod-inventory-storage-1.0.0" } 11:53:37 [] [] [] [] INFO RestRouting invoking postTenant 11:53:37 [] [] [] [] INFO LoadConfs File does not exist: /postgres-conf.json 11:53:37 [] [] [] [] INFO LoadConfs Resource does not exist: /postgres-conf.json 11:53:37 [] [] [] [] INFO PostgresClient No DB configuration found, setting username, password and database for testing 11:53:37 [] [] [] [] INFO PostgresClient Starting postgres tester 11:53:38 [] [] [] [] INFO PostgresClient postgreSQLClientConfig = {"postgres_tester":true,"username":"username","password":"...","database":"postgres","port":49278,"host":"localhost"} 11:53:38 [] [] [] [] INFO PostgresClient Executing multiple statements with id -546997469 11:53:38 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE ROLE test_tenant_mod_inventory_storage PASSWORD 'test_tenant' NOSUPERUSER NOCREATEDB INHERIT LOGIN; 11:53:38 [] [] [] [] INFO PostgresClient Successfully executed CREATE ROLE test_tenant_mod_inventory_storage PASSWORD 'test_tenant' NOSUPERUSER NOCREATEDB INHERIT LOGIN; 11:53:38 [] [] [] [] INFO PostgresClient trying to execute: {} GRANT test_tenant_mod_inventory_storage TO CURRENT_USER; 11:53:38 [] [] [] [] INFO PostgresClient Successfully executed GRANT test_tenant_mod_inventory_storage TO CURRENT_USER; 11:53:38 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE SCHEMA test_tenant_mod_inventory_storage AUTHORIZATION test_tenant_mod_inventory_storage; 11:53:38 [] [] [] [] INFO PostgresClient Successfully executed CREATE SCHEMA test_tenant_mod_inventory_storage AUTHORIZATION test_tenant_mod_inventory_storage; 11:53:38 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER ROLE test_tenant_mod_inventory_storage SET search_path = "$user"; 11:53:38 [] [] [] [] INFO PostgresClient Successfully executed ALTER ROLE test_tenant_mod_inventory_storage SET search_path = "$user"; 11:53:38 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ BEGIN BEGIN -- This only succeeds if show_trgm, a pg_trgm function, -- has been loaded into public schema. PERFORM public.show_trgm('a'); EXCEPTION WHEN undefined_function THEN BEGIN ALTER EXTENSION pg_trgm SET SCHEMA public; EXCEPTION WHEN undefined_object THEN NULL; END; END; END $$; 11:53:38 [] [] [] [] INFO PostgresClient Successfully executed DO $$ BEGIN BEGIN -- This only succeeds if show_trgm, a pg_trgm function, -- has been loaded into public schema. PERFORM public.show_trgm('a'); EXCEPTION WHEN undefined_function THEN BEGIN ALTER EXTENSION pg_trgm SET SCHEMA public; EXCEPTION WHEN undefined_object THEN NULL; END; END; END $$; 11:53:38 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE EXTENSION IF NOT EXISTS unaccent WITH SCHEMA public; 11:53:38 [] [] [] [] INFO PostgresClient Successfully executed CREATE EXTENSION IF NOT EXISTS unaccent WITH SCHEMA public; 11:53:38 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE EXTENSION IF NOT EXISTS pg_trgm WITH SCHEMA public; 11:53:38 [] [] [] [] INFO PostgresClient Successfully executed CREATE EXTENSION IF NOT EXISTS pg_trgm WITH SCHEMA public; 11:53:38 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.rmb_internal ( id SERIAL PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:38 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.rmb_internal ( id SERIAL PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:38 [] [] [] [] INFO PostgresClient trying to execute: {} insert into test_tenant_mod_inventory_storage.rmb_internal (jsonb) values ('{"rmbVersion": "33.0.0-SNAPSHOT", "moduleVersion": "mod-inventory-storage-1.0.0"}'::jsonb); 11:53:38 [] [] [] [] INFO PostgresClient Successfully executed insert into test_tenant_mod_inventory_storage.rmb_internal (jsonb) values ('{"rmbVersion": "33.0.0-SNAPSHOT", "moduleVersion": "mod-inventory-storage-1.0.0"}'::jsonb); 11:53:38 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.rmb_job ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:38 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.rmb_job ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:38 [] [] [] [] INFO LogUtil 127.0.0.1:54288 POST /_/tenant null HTTP_1_1 201 346 1685 tid=test_tenant Created 11:53:38 [] [] [] [] INFO PostgresClient Executing multiple statements with id -1840115418 11:53:38 [] [] [] [] INFO RestRouting invoking getTenantByOperationId 11:53:38 [] [] [] [] INFO PostgresClient trying to execute: {} SET search_path TO test_tenant_mod_inventory_storage; 11:53:38 [] [] [] [] INFO PostgresClient Successfully executed SET search_path TO test_tenant_mod_inventory_storage; 11:53:38 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.rmb_internal_index ( name text PRIMARY KEY, def text NOT NULL, remove boolean NOT NULL ); 11:53:38 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.rmb_internal_index ( name text PRIMARY KEY, def text NOT NULL, remove boolean NOT NULL ); 11:53:38 [] [] [] [] INFO PostgresClient trying to execute: {} UPDATE test_tenant_mod_inventory_storage.rmb_internal_index SET remove = TRUE; 11:53:38 [] [] [] [] INFO PostgresClient Successfully executed UPDATE test_tenant_mod_inventory_storage.rmb_internal_index SET remove = TRUE; 11:53:38 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS rmb_internal_analyze ( tablename text ); 11:53:38 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS rmb_internal_analyze ( tablename text ); 11:53:38 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.uuid_smaller(uuid, uuid) RETURNS uuid AS $$ BEGIN IF $1 IS NULL THEN RETURN $2; END IF; IF $2 IS NULL THEN RETURN $1; END IF; IF $1 < $2 THEN RETURN $1; ELSE RETURN $2; END IF; END; $$ LANGUAGE plpgsql; 11:53:38 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.uuid_smaller(uuid, uuid) RETURNS uuid AS $$ BEGIN IF $1 IS NULL THEN RETURN $2; END IF; IF $2 IS NULL THEN RETURN $1; END IF; IF $1 < $2 THEN RETURN $1; ELSE RETURN $2; END IF; END; $$ LANGUAGE plpgsql; 11:53:38 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.uuid_larger(uuid, uuid) RETURNS uuid AS $$ BEGIN IF $1 IS NULL THEN RETURN $2; END IF; IF $2 IS NULL THEN RETURN $1; END IF; IF $1 > $2 THEN RETURN $1; ELSE RETURN $2; END IF; END; $$ LANGUAGE plpgsql; 11:53:38 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.uuid_larger(uuid, uuid) RETURNS uuid AS $$ BEGIN IF $1 IS NULL THEN RETURN $2; END IF; IF $2 IS NULL THEN RETURN $1; END IF; IF $1 > $2 THEN RETURN $1; ELSE RETURN $2; END IF; END; $$ LANGUAGE plpgsql; 11:53:38 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.next_uuid(uuid) RETURNS uuid AS $$ DECLARE uuid text; digit text; BEGIN uuid = $1; FOR i IN REVERSE 36..1 LOOP digit := substring(uuid from i for 1); -- skip minus, version byte M and variant byte N CONTINUE WHEN digit = '-' OR i = 15 OR i = 20; CASE digit WHEN '0' THEN digit := '1'; WHEN '1' THEN digit := '2'; WHEN '2' THEN digit := '3'; WHEN '3' THEN digit := '4'; WHEN '4' THEN digit := '5'; WHEN '5' THEN digit := '6'; WHEN '6' THEN digit := '7'; WHEN '7' THEN digit := '8'; WHEN '8' THEN digit := '9'; WHEN '9' THEN digit := 'a'; WHEN 'a' THEN digit := 'b'; WHEN 'b' THEN digit := 'c'; WHEN 'c' THEN digit := 'd'; WHEN 'd' THEN digit := 'e'; WHEN 'e' THEN digit := 'f'; WHEN 'f' THEN digit := '0'; ELSE NULL; END CASE; uuid = overlay(uuid placing digit from i); EXIT WHEN digit <> '0'; END LOOP; RETURN uuid; END; $$ LANGUAGE plpgsql; 11:53:38 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.next_uuid(uuid) RETURNS uuid AS $$ DECLARE uuid text; digit text; BEGIN uuid = $1; FOR i IN REVERSE 36..1 LOOP digit := substring(uuid from i for 1); -- skip minus, version byte M and variant byte N CONTINUE WHEN digit = '-' OR i = 15 OR i = 20; CASE digit WHEN '0' THEN digit := '1'; WHEN '1' THEN digit := '2'; WHEN '2' THEN digit := '3'; WHEN '3' THEN digit := '4'; WHEN '4' THEN digit := '5'; WHEN '5' THEN digit := '6'; WHEN '6' THEN digit := '7'; WHEN '7' THEN digit := '8'; WHEN '8' THEN digit := '9'; WHEN '9' THEN digit := 'a'; WHEN 'a' THEN digit := 'b'; WHEN 'b' THEN digit := 'c'; WHEN 'c' THEN digit := 'd'; WHEN 'd' THEN digit := 'e'; WHEN 'e' THEN digit := 'f'; WHEN 'f' THEN digit := '0'; ELSE NULL; END CASE; uuid = overlay(uuid placing digit from i); EXIT WHEN digit <> '0'; END LOOP; RETURN uuid; END; $$ LANGUAGE plpgsql; 11:53:38 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE AGGREGATE test_tenant_mod_inventory_storage.max(uuid) ( stype = uuid, sfunc = test_tenant_mod_inventory_storage.uuid_larger, combinefunc = test_tenant_mod_inventory_storage.uuid_larger, parallel = safe, sortop = operator (>) ); 11:53:38 [] [] [] [] INFO PostgresClient Successfully executed CREATE AGGREGATE test_tenant_mod_inventory_storage.max(uuid) ( stype = uuid, sfunc = test_tenant_mod_inventory_storage.uuid_larger, combinefunc = test_tenant_mod_inventory_storage.uuid_larger, parallel = safe, sortop = operator (>) ); 11:53:38 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE AGGREGATE test_tenant_mod_inventory_storage.min(uuid) ( stype = uuid, sfunc = test_tenant_mod_inventory_storage.uuid_smaller, combinefunc = test_tenant_mod_inventory_storage.uuid_smaller, parallel = safe, sortop = operator (<) ); 11:53:38 [] [] [] [] INFO PostgresClient Successfully executed CREATE AGGREGATE test_tenant_mod_inventory_storage.min(uuid) ( stype = uuid, sfunc = test_tenant_mod_inventory_storage.uuid_smaller, combinefunc = test_tenant_mod_inventory_storage.uuid_smaller, parallel = safe, sortop = operator (<) ); 11:53:38 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.count_estimate_smart2(bigint,bigint,text); 11:53:38 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.count_estimate_smart2(pg_catalog.int8,pg_catalog.int8,text) does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:38 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.count_estimate_smart2(bigint,bigint,text); 11:53:38 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE FUNCTION test_tenant_mod_inventory_storage.count_estimate_smart2(rows bigint, lim bigint, query text) RETURNS bigint AS $$ DECLARE rec record; cnt bigint; BEGIN IF rows = lim THEN FOR rec IN EXECUTE 'EXPLAIN ' || query LOOP cnt := substring(rec."QUERY PLAN" FROM ' rows=([[:digit:]]+)'); EXIT WHEN cnt IS NOT NULL; END LOOP; RETURN cnt; END IF; RETURN rows; END; $$ LANGUAGE plpgsql VOLATILE STRICT; 11:53:38 [] [] [] [] INFO PostgresClient Successfully executed CREATE FUNCTION test_tenant_mod_inventory_storage.count_estimate_smart2(rows bigint, lim bigint, query text) RETURNS bigint AS $$ DECLARE rec record; cnt bigint; BEGIN IF rows = lim THEN FOR rec IN EXECUTE 'EXPLAIN ' || query LOOP cnt := substring(rec."QUERY PLAN" FROM ' rows=([[:digit:]]+)'); EXIT WHEN cnt IS NOT NULL; END LOOP; RETURN cnt; END IF; RETURN rows; END; $$ LANGUAGE plpgsql VOLATILE STRICT; 11:53:38 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.count_estimate_default(query text) RETURNS bigint AS $$ DECLARE rows bigint; q text; BEGIN q = 'SELECT COUNT(*) FROM (' || query || ' LIMIT 1000) x'; EXECUTE q INTO rows; IF rows < 1000 THEN return rows; END IF; rows = test_tenant_mod_inventory_storage.count_estimate_smart2(1000, 1000, query); IF rows < 1000 THEN return 1000; END IF; RETURN rows; END; $$ LANGUAGE plpgsql IMMUTABLE STRICT; 11:53:38 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.count_estimate_default(query text) RETURNS bigint AS $$ DECLARE rows bigint; q text; BEGIN q = 'SELECT COUNT(*) FROM (' || query || ' LIMIT 1000) x'; EXECUTE q INTO rows; IF rows < 1000 THEN return rows; END IF; rows = test_tenant_mod_inventory_storage.count_estimate_smart2(1000, 1000, query); IF rows < 1000 THEN return 1000; END IF; RETURN rows; END; $$ LANGUAGE plpgsql IMMUTABLE STRICT; 11:53:38 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.count_estimate(query text) RETURNS bigint AS $$ DECLARE count bigint; est_count bigint; q text; BEGIN est_count = test_tenant_mod_inventory_storage.count_estimate_smart2(1000, 1000, query); IF est_count > 4*1000 THEN RETURN est_count; END IF; q = 'SELECT COUNT(*) FROM (' || query || ' LIMIT 1000) x'; EXECUTE q INTO count; IF count < 1000 THEN RETURN count; END IF; IF est_count < 1000 THEN RETURN 1000; END IF; RETURN est_count; END; $$ LANGUAGE plpgsql STABLE STRICT; 11:53:38 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.count_estimate(query text) RETURNS bigint AS $$ DECLARE count bigint; est_count bigint; q text; BEGIN est_count = test_tenant_mod_inventory_storage.count_estimate_smart2(1000, 1000, query); IF est_count > 4*1000 THEN RETURN est_count; END IF; q = 'SELECT COUNT(*) FROM (' || query || ' LIMIT 1000) x'; EXECUTE q INTO count; IF count < 1000 THEN RETURN count; END IF; IF est_count < 1000 THEN RETURN 1000; END IF; RETURN est_count; END; $$ LANGUAGE plpgsql STABLE STRICT; 11:53:38 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.upsert(text, uuid, anyelement) RETURNS uuid AS $$ DECLARE ret uuid; BEGIN EXECUTE format('UPDATE test_tenant_mod_inventory_storage.%I SET jsonb=$3 WHERE id=$2 RETURNING id', $1) USING $1, $2, $3 INTO ret; IF ret IS NOT NULL THEN RETURN ret; END IF; EXECUTE format('INSERT INTO test_tenant_mod_inventory_storage.%I (id, jsonb) VALUES ($2, $3) RETURNING id', $1) USING $1, $2, $3 INTO STRICT ret; RETURN ret; END; $$ LANGUAGE plpgsql; 11:53:38 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.upsert(text, uuid, anyelement) RETURNS uuid AS $$ DECLARE ret uuid; BEGIN EXECUTE format('UPDATE test_tenant_mod_inventory_storage.%I SET jsonb=$3 WHERE id=$2 RETURNING id', $1) USING $1, $2, $3 INTO ret; IF ret IS NOT NULL THEN RETURN ret; END IF; EXECUTE format('INSERT INTO test_tenant_mod_inventory_storage.%I (id, jsonb) VALUES ($2, $3) RETURNING id', $1) USING $1, $2, $3 INTO STRICT ret; RETURN ret; END; $$ LANGUAGE plpgsql; 11:53:38 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ DECLARE ver integer; BEGIN SELECT current_setting('server_version_num') INTO ver; IF (ver >= 120000) THEN CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.f_unaccent(text) RETURNS text AS $f_unaccent$ SELECT public.unaccent('public.unaccent', $1) -- schema-qualify function and dictionary $f_unaccent$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; ELSE CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.f_unaccent(text) RETURNS text AS $f_unaccent$ SELECT regexp_replace(public.unaccent('public.unaccent', $1), E'[\u0300\u0301\u0302\u0303\u0304\u0305\u0306\u0307\u0308\u0309\u030a\u030b\u030c\u030d\u030e\u030f' || E'\u0310\u0311\u0312\u0313\u0314\u0315\u0316\u0317\u0318\u0319\u031a\u031b\u031c\u031d\u031e\u031f' || E'\u0320\u0321\u0322\u0323\u0324\u0325\u0326\u0327\u0328\u0329\u032a\u032b\u032c\u032d\u032e\u032f' || E'\u0330\u0331\u0332\u0333\u0334\u0335\u0336\u0337\u0338\u0339\u033a\u033b\u033c\u033d\u033e\u033f' || E'\u0340\u0341\u0342\u0343\u0344\u0345\u0346\u0347\u0348\u0349\u034a\u034b\u034c\u034d\u034e\u034f' || E'\u0350\u0351\u0352\u0353\u0354\u0355\u0356\u0357\u0358\u0359\u035a\u035b\u035c\u035d\u035e\u035f' || E'\u0360\u0361\u0362' || E'\u20dd\u20de\u20df\u20e0' || E'\u20e2\u20e3\u20e4]', '', 'g') $f_unaccent$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; END IF; END $$; 11:53:38 [] [] [] [] INFO PostgresClient Successfully executed DO $$ DECLARE ver integer; BEGIN SELECT current_setting('server_version_num') INTO ver; IF (ver >= 120000) THEN CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.f_unaccent(text) RETURNS text AS $f_unaccent$ SELECT public.unaccent('public.unaccent', $1) -- schema-qualify function and dictionary $f_unaccent$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; ELSE CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.f_unaccent(text) RETURNS text AS $f_unaccent$ SELECT regexp_replace(public.unaccent('public.unaccent', $1), E'[\u0300\u0301\u0302\u0303\u0304\u0305\u0306\u0307\u0308\u0309\u030a\u030b\u030c\u030d\u030e\u030f' || E'\u0310\u0311\u0312\u0313\u0314\u0315\u0316\u0317\u0318\u0319\u031a\u031b\u031c\u031d\u031e\u031f' || E'\u0320\u0321\u0322\u0323\u0324\u0325\u0326\u0327\u0328\u0329\u032a\u032b\u032c\u032d\u032e\u032f' || E'\u0330\u0331\u0332\u0333\u0334\u0335\u0336\u0337\u0338\u0339\u033a\u033b\u033c\u033d\u033e\u033f' || E'\u0340\u0341\u0342\u0343\u0344\u0345\u0346\u0347\u0348\u0349\u034a\u034b\u034c\u034d\u034e\u034f' || E'\u0350\u0351\u0352\u0353\u0354\u0355\u0356\u0357\u0358\u0359\u035a\u035b\u035c\u035d\u035e\u035f' || E'\u0360\u0361\u0362' || E'\u20dd\u20de\u20df\u20e0' || E'\u20e2\u20e3\u20e4]', '', 'g') $f_unaccent$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; END IF; END $$; 11:53:38 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.get_tsvector(text) RETURNS tsvector AS $$ SELECT to_tsvector('simple', translate($1, '&', ',')); $$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; 11:53:38 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.get_tsvector(text) RETURNS tsvector AS $$ SELECT to_tsvector('simple', translate($1, '&', ',')); $$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; 11:53:38 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.tsquery_and(text) RETURNS tsquery AS $$ SELECT to_tsquery('simple', string_agg(CASE WHEN length(v) = 0 OR v = '*' THEN '' WHEN right(v, 1) = '*' THEN '''' || left(v, -1) || ''':*' ELSE '''' || v || '''' END, '&')) FROM (SELECT regexp_split_to_table(translate($1, '&''', ',,'), ' +')) AS x(v); $$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; 11:53:38 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.tsquery_and(text) RETURNS tsquery AS $$ SELECT to_tsquery('simple', string_agg(CASE WHEN length(v) = 0 OR v = '*' THEN '' WHEN right(v, 1) = '*' THEN '''' || left(v, -1) || ''':*' ELSE '''' || v || '''' END, '&')) FROM (SELECT regexp_split_to_table(translate($1, '&''', ',,'), ' +')) AS x(v); $$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; 11:53:38 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.tsquery_or(text) RETURNS tsquery AS $$ SELECT replace(test_tenant_mod_inventory_storage.tsquery_and($1)::text, '&', '|')::tsquery; $$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; 11:53:38 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.tsquery_or(text) RETURNS tsquery AS $$ SELECT replace(test_tenant_mod_inventory_storage.tsquery_and($1)::text, '&', '|')::tsquery; $$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; 11:53:38 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.tsquery_phrase(text) RETURNS tsquery AS $$ SELECT replace(test_tenant_mod_inventory_storage.tsquery_and($1)::text, '&', '<->')::tsquery; $$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; 11:53:38 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.tsquery_phrase(text) RETURNS tsquery AS $$ SELECT replace(test_tenant_mod_inventory_storage.tsquery_and($1)::text, '&', '<->')::tsquery; $$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; 11:53:38 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.normalize_digits(text) RETURNS text AS $$ SELECT translate((regexp_match($1, '^([0-9 \t-]*(?:\*[ \t]*)?)(.*)'))[1], E' \t-', '') || CASE WHEN (regexp_match($1, '^([0-9 \t-]*(?:\*[ \t]*)?)(.*)'))[1] = '' THEN '' WHEN (regexp_match($1, '^([0-9 \t-]*(?:\*[ \t]*)?)(.*)'))[2] = '' THEN '' ELSE ' ' END || (regexp_match($1, '^([0-9 \t-]*(?:\*[ \t]*)?)(.*)'))[2]; $$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; 11:53:38 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.normalize_digits(text) RETURNS text AS $$ SELECT translate((regexp_match($1, '^([0-9 \t-]*(?:\*[ \t]*)?)(.*)'))[1], E' \t-', '') || CASE WHEN (regexp_match($1, '^([0-9 \t-]*(?:\*[ \t]*)?)(.*)'))[1] = '' THEN '' WHEN (regexp_match($1, '^([0-9 \t-]*(?:\*[ \t]*)?)(.*)'))[2] = '' THEN '' ELSE ' ' END || (regexp_match($1, '^([0-9 \t-]*(?:\*[ \t]*)?)(.*)'))[2]; $$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; 11:53:38 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_id_in_jsonb() RETURNS TRIGGER AS $$ BEGIN NEW.jsonb = jsonb_set(NEW.jsonb, '{id}', to_jsonb(NEW.id)); RETURN NEW; END; $$ language 'plpgsql'; 11:53:38 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_id_in_jsonb() RETURNS TRIGGER AS $$ BEGIN NEW.jsonb = jsonb_set(NEW.jsonb, '{id}', to_jsonb(NEW.id)); RETURN NEW; END; $$ language 'plpgsql'; 11:53:38 [] [] [] [] INFO PostgresClient trying to execute: {} create or replace function test_tenant_mod_inventory_storage.concat_space_sql(VARIADIC text[]) RETURNS text AS $$ select concat_ws(' ', VARIADIC $1); $$ LANGUAGE SQL IMMUTABLE PARALLEL SAFE STRICT; 11:53:38 [] [] [] [] INFO PostgresClient Successfully executed create or replace function test_tenant_mod_inventory_storage.concat_space_sql(VARIADIC text[]) RETURNS text AS $$ select concat_ws(' ', VARIADIC $1); $$ LANGUAGE SQL IMMUTABLE PARALLEL SAFE STRICT; 11:53:38 [] [] [] [] INFO PostgresClient trying to execute: {} create or replace function test_tenant_mod_inventory_storage.concat_array_object_values(jsonb_array jsonb, field text) RETURNS text AS $$ SELECT string_agg(value->>$2, ' ') FROM jsonb_array_elements($1); $$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed create or replace function test_tenant_mod_inventory_storage.concat_array_object_values(jsonb_array jsonb, field text) RETURNS text AS $$ SELECT string_agg(value->>$2, ' ') FROM jsonb_array_elements($1); $$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} create or replace function test_tenant_mod_inventory_storage.concat_array_object_values( jsonb_array jsonb, field text, filterkey text, filtervalue text) RETURNS text AS $$ SELECT string_agg(value->>$2, ' ') FROM jsonb_array_elements($1) WHERE value->>$3 = $4; $$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed create or replace function test_tenant_mod_inventory_storage.concat_array_object_values( jsonb_array jsonb, field text, filterkey text, filtervalue text) RETURNS text AS $$ SELECT string_agg(value->>$2, ' ') FROM jsonb_array_elements($1) WHERE value->>$3 = $4; $$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} create or replace function test_tenant_mod_inventory_storage.first_array_object_value( jsonb_array jsonb, field text, filterkey text, filtervalue text) RETURNS text AS $$ SELECT value->>$2 FROM jsonb_array_elements($1) WHERE value->>$3 = $4 LIMIT 1; $$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed create or replace function test_tenant_mod_inventory_storage.first_array_object_value( jsonb_array jsonb, field text, filterkey text, filtervalue text) RETURNS text AS $$ SELECT value->>$2 FROM jsonb_array_elements($1) WHERE value->>$3 = $4 LIMIT 1; $$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} create or replace function test_tenant_mod_inventory_storage.concat_array_object(jsonb_array jsonb) RETURNS text AS $$ SELECT string_agg(value::text, ' ') FROM jsonb_array_elements_text($1); $$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed create or replace function test_tenant_mod_inventory_storage.concat_array_object(jsonb_array jsonb) RETURNS text AS $$ SELECT string_agg(value::text, ' ') FROM jsonb_array_elements_text($1); $$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS rmb_internal_index(aname text, tops text, newdef text); 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function rmb_internal_index(text,text,text) does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS rmb_internal_index(aname text, tops text, newdef text); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION rmb_internal_index( atable text, aname text, tops text, newdef text) RETURNS void AS $$ DECLARE olddef text; namep CONSTANT text = concat(aname, '_p'); prepareddef text; BEGIN IF tops = 'DELETE' THEN -- use case insensitive %s, not case sensitive %I -- no SQL injection because the names are hard-coded in schema.json EXECUTE format('DROP INDEX IF EXISTS %s', aname); EXECUTE 'DELETE FROM test_tenant_mod_inventory_storage.rmb_internal_index WHERE name = $1' USING aname; RETURN; END IF; SELECT def INTO olddef FROM test_tenant_mod_inventory_storage.rmb_internal_index WHERE name = aname; SELECT def INTO prepareddef FROM test_tenant_mod_inventory_storage.rmb_internal_index WHERE name = namep; prepareddef = replace(prepareddef, concat(' ', namep, ' ON '), concat(' ', aname, ' ON ')); IF prepareddef = newdef THEN EXECUTE format('DROP INDEX IF EXISTS %s', aname); EXECUTE format('ALTER INDEX IF EXISTS %s RENAME TO %s', namep, aname); EXECUTE 'DELETE FROM rmb_internal_index WHERE name = $1' USING namep; EXECUTE 'INSERT INTO rmb_internal_analyze VALUES ($1)' USING atable; ELSIF olddef IS DISTINCT FROM newdef THEN EXECUTE format('DROP INDEX IF EXISTS %s', aname); EXECUTE newdef; EXECUTE 'INSERT INTO rmb_internal_analyze VALUES ($1)' USING atable; END IF; EXECUTE 'INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ($1, $2, FALSE) ' 'ON CONFLICT (name) DO UPDATE SET def = EXCLUDED.def, remove = EXCLUDED.remove' USING aname, newdef; END $$ LANGUAGE plpgsql; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION rmb_internal_index( atable text, aname text, tops text, newdef text) RETURNS void AS $$ DECLARE olddef text; namep CONSTANT text = concat(aname, '_p'); prepareddef text; BEGIN IF tops = 'DELETE' THEN -- use case insensitive %s, not case sensitive %I -- no SQL injection because the names are hard-coded in schema.json EXECUTE format('DROP INDEX IF EXISTS %s', aname); EXECUTE 'DELETE FROM test_tenant_mod_inventory_storage.rmb_internal_index WHERE name = $1' USING aname; RETURN; END IF; SELECT def INTO olddef FROM test_tenant_mod_inventory_storage.rmb_internal_index WHERE name = aname; SELECT def INTO prepareddef FROM test_tenant_mod_inventory_storage.rmb_internal_index WHERE name = namep; prepareddef = replace(prepareddef, concat(' ', namep, ' ON '), concat(' ', aname, ' ON ')); IF prepareddef = newdef THEN EXECUTE format('DROP INDEX IF EXISTS %s', aname); EXECUTE format('ALTER INDEX IF EXISTS %s RENAME TO %s', namep, aname); EXECUTE 'DELETE FROM rmb_internal_index WHERE name = $1' USING namep; EXECUTE 'INSERT INTO rmb_internal_analyze VALUES ($1)' USING atable; ELSIF olddef IS DISTINCT FROM newdef THEN EXECUTE format('DROP INDEX IF EXISTS %s', aname); EXECUTE newdef; EXECUTE 'INSERT INTO rmb_internal_analyze VALUES ($1)' USING atable; END IF; EXECUTE 'INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ($1, $2, FALSE) ' 'ON CONFLICT (name) DO UPDATE SET def = EXCLUDED.def, remove = EXCLUDED.remove' USING aname, newdef; END $$ LANGUAGE plpgsql; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ DECLARE n INT; BEGIN -- Only populate if table is empty SELECT count(*) INTO n FROM test_tenant_mod_inventory_storage.rmb_internal_index; IF n > 0 THEN RETURN; END IF; CASE '0.0' -- previous module version taken from the /_/tenant POST module_from variable WHEN '18.2.3', 'mod-inventory-storage-18.2.3', '18.2.2', 'mod-inventory-storage-18.2.2', '18.2.1', 'mod-inventory-storage-18.2.1' THEN -- Edelweiss versions 18.2.1 - 18.2.3; earlier versions don't have left(..., 600) index truncation INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('alternative_title_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS alternative_title_type_name_idx_unique ON test_tenant_mod_inventory_storage.alternative_title_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('call_number_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS call_number_type_name_idx_unique ON test_tenant_mod_inventory_storage.call_number_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('classification_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS classification_type_name_idx_unique ON test_tenant_mod_inventory_storage.classification_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('contributor_name_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS contributor_name_type_name_idx_unique ON test_tenant_mod_inventory_storage.contributor_name_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('contributor_type_code_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS contributor_type_code_idx_unique ON test_tenant_mod_inventory_storage.contributor_type (lower(f_unaccent(jsonb->>''code'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('contributor_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS contributor_type_name_idx_unique ON test_tenant_mod_inventory_storage.contributor_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('electronic_access_relationship_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS electronic_access_relationship_name_idx_unique ON test_tenant_mod_inventory_storage.electronic_access_relationship (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('holdings_note_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS holdings_note_type_name_idx_unique ON test_tenant_mod_inventory_storage.holdings_note_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('holdings_record_hrid_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS holdings_record_hrid_idx_unique ON test_tenant_mod_inventory_storage.holdings_record (lower(f_unaccent(jsonb->>''hrid'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('holdings_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS holdings_type_name_idx_unique ON test_tenant_mod_inventory_storage.holdings_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('identifier_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS identifier_type_name_idx_unique ON test_tenant_mod_inventory_storage.identifier_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('ill_policy_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS ill_policy_name_idx_unique ON test_tenant_mod_inventory_storage.ill_policy (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_classifications_idx_gin', 'CREATE INDEX IF NOT EXISTS instance_classifications_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ((lower(f_unaccent(jsonb->>''classifications''))) gin_trgm_ops)', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_contributors_idx', 'CREATE INDEX IF NOT EXISTS instance_contributors_idx ON test_tenant_mod_inventory_storage.instance (left(lower(f_unaccent(jsonb->>''contributors'')),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_contributors_idx_ft', 'CREATE INDEX IF NOT EXISTS instance_contributors_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ( to_tsvector(''simple'', f_unaccent(jsonb->>''contributors'')) )', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_contributors_idx_gin', 'CREATE INDEX IF NOT EXISTS instance_contributors_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ((lower(f_unaccent(jsonb->>''contributors''))) gin_trgm_ops)', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_format_code_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_format_code_idx_unique ON test_tenant_mod_inventory_storage.instance_format (lower(f_unaccent(jsonb->>''code'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_format_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_format_name_idx_unique ON test_tenant_mod_inventory_storage.instance_format (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_hrid_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_hrid_idx_unique ON test_tenant_mod_inventory_storage.instance (lower(f_unaccent(jsonb->>''hrid'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_identifiers_idx_ft', 'CREATE INDEX IF NOT EXISTS instance_identifiers_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ( to_tsvector(''simple'', f_unaccent(jsonb->>''identifiers'')) )', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_identifiers_idx_gin', 'CREATE INDEX IF NOT EXISTS instance_identifiers_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ((lower(f_unaccent(jsonb->>''identifiers''))) gin_trgm_ops)', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_indexTitle_idx', 'CREATE INDEX IF NOT EXISTS instance_indexTitle_idx ON test_tenant_mod_inventory_storage.instance (left(lower(f_unaccent(jsonb->>''indexTitle'')),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_indexTitle_idx_gin', 'CREATE INDEX IF NOT EXISTS instance_indexTitle_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ((lower(f_unaccent(jsonb->>''indexTitle''))) gin_trgm_ops)', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_keyword_idx_ft', 'CREATE INDEX IF NOT EXISTS instance_keyword_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ( to_tsvector(''simple'', f_unaccent(concat_space_sql(instance.jsonb->>''title'' , concat_array_object_values(instance.jsonb->''contributors'',''name'') , concat_array_object_values(instance.jsonb->''identifiers'',''value'')))) )', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_languages_idx_ft', 'CREATE INDEX IF NOT EXISTS instance_languages_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ( to_tsvector(''simple'', f_unaccent(jsonb->>''languages'')) )', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_note_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_note_type_name_idx_unique ON test_tenant_mod_inventory_storage.instance_note_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_publication_idx', 'CREATE INDEX IF NOT EXISTS instance_publication_idx ON test_tenant_mod_inventory_storage.instance (left(lower(f_unaccent(jsonb->>''publication'')),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_relationship_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_relationship_type_name_idx_unique ON test_tenant_mod_inventory_storage.instance_relationship_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_source_idx', 'CREATE INDEX IF NOT EXISTS instance_source_idx ON test_tenant_mod_inventory_storage.instance (left(lower(jsonb->>''source''),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_statisticalCodeIds_idx', 'CREATE INDEX IF NOT EXISTS instance_statisticalCodeIds_idx ON test_tenant_mod_inventory_storage.instance (left(lower(jsonb->>''statisticalCodeIds''),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_status_code_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_status_code_idx_unique ON test_tenant_mod_inventory_storage.instance_status (lower(f_unaccent(jsonb->>''code'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_status_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_status_name_idx_unique ON test_tenant_mod_inventory_storage.instance_status (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_subjects_idx_gin', 'CREATE INDEX IF NOT EXISTS instance_subjects_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ((lower(f_unaccent(jsonb->>''subjects''))) gin_trgm_ops)', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_title_idx', 'CREATE INDEX IF NOT EXISTS instance_title_idx ON test_tenant_mod_inventory_storage.instance (left(lower(f_unaccent(jsonb->>''title'')),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_title_idx_ft', 'CREATE INDEX IF NOT EXISTS instance_title_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ( to_tsvector(''simple'', f_unaccent(jsonb->>''title'')) )', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_title_idx_gin', 'CREATE INDEX IF NOT EXISTS instance_title_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ((lower(f_unaccent(jsonb->>''title''))) gin_trgm_ops)', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_type_code_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_type_code_idx_unique ON test_tenant_mod_inventory_storage.instance_type (lower(f_unaccent(jsonb->>''code'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_type_name_idx_unique ON test_tenant_mod_inventory_storage.instance_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('item_barcode_idx', 'CREATE INDEX IF NOT EXISTS item_barcode_idx ON test_tenant_mod_inventory_storage.item (left(lower(f_unaccent(jsonb->>''barcode'')),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('item_barcode_idx_ft', 'CREATE INDEX IF NOT EXISTS item_barcode_idx_ft ON test_tenant_mod_inventory_storage.item USING GIN ( to_tsvector(''simple'', f_unaccent(jsonb->>''barcode'')) )', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('item_barcode_idx_gin', 'CREATE INDEX IF NOT EXISTS item_barcode_idx_gin ON test_tenant_mod_inventory_storage.item USING GIN ((lower(f_unaccent(jsonb->>''barcode''))) gin_trgm_ops)', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('item_damaged_status_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS item_damaged_status_name_idx_unique ON test_tenant_mod_inventory_storage.item_damaged_status (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('item_hrid_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS item_hrid_idx_unique ON test_tenant_mod_inventory_storage.item (lower(f_unaccent(jsonb->>''hrid'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('item_note_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS item_note_type_name_idx_unique ON test_tenant_mod_inventory_storage.item_note_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('item_status_name_idx', 'CREATE INDEX IF NOT EXISTS item_status_name_idx ON test_tenant_mod_inventory_storage.item (left(lower(f_unaccent(jsonb->''status''->>''name'')),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('item_status_name_idx_gin', 'CREATE INDEX IF NOT EXISTS item_status_name_idx_gin ON test_tenant_mod_inventory_storage.item USING GIN ((lower(f_unaccent(jsonb->''status''->>''name''))) gin_trgm_ops)', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('loan_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS loan_type_name_idx_unique ON test_tenant_mod_inventory_storage.loan_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('location_code_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS location_code_idx_unique ON test_tenant_mod_inventory_storage.location (lower(f_unaccent(jsonb->>''code'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('location_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS location_name_idx_unique ON test_tenant_mod_inventory_storage.location (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('loccampus_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS loccampus_name_idx_unique ON test_tenant_mod_inventory_storage.loccampus (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('locinstitution_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS locinstitution_name_idx_unique ON test_tenant_mod_inventory_storage.locinstitution (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('loclibrary_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS loclibrary_name_idx_unique ON test_tenant_mod_inventory_storage.loclibrary (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('material_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS material_type_name_idx_unique ON test_tenant_mod_inventory_storage.material_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('mode_of_issuance_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS mode_of_issuance_name_idx_unique ON test_tenant_mod_inventory_storage.mode_of_issuance (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('nature_of_content_term_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS nature_of_content_term_name_idx_unique ON test_tenant_mod_inventory_storage.nature_of_content_term (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('service_point_code_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS service_point_code_idx_unique ON test_tenant_mod_inventory_storage.service_point (lower(f_unaccent(jsonb->>''code'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('service_point_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS service_point_name_idx_unique ON test_tenant_mod_inventory_storage.service_point (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('service_point_user_userId_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS service_point_user_userId_idx_unique ON test_tenant_mod_inventory_storage.service_point_user (lower(f_unaccent(jsonb->>''userId'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('statistical_code_code_statisticalCodeTypeId_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS statistical_code_code_statisticalCodeTypeId_idx_unique ON test_tenant_mod_inventory_storage.statistical_code (lower(f_unaccent(jsonb->>''code'')) , lower(f_unaccent(jsonb->>''statisticalCodeTypeId'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('statistical_code_type_code_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS statistical_code_type_code_idx_unique ON test_tenant_mod_inventory_storage.statistical_code_type (lower(f_unaccent(jsonb->>''code'')))', false); WHEN '19.0.0', 'mod-inventory-storage-19.0.0', '19.1.0', 'mod-inventory-storage-19.1.0' THEN INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('alternative_title_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS alternative_title_type_name_idx_unique ON test_tenant_mod_inventory_storage.alternative_title_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('call_number_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS call_number_type_name_idx_unique ON test_tenant_mod_inventory_storage.call_number_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('classification_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS classification_type_name_idx_unique ON test_tenant_mod_inventory_storage.classification_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('contributor_name_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS contributor_name_type_name_idx_unique ON test_tenant_mod_inventory_storage.contributor_name_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('contributor_type_code_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS contributor_type_code_idx_unique ON test_tenant_mod_inventory_storage.contributor_type (lower(f_unaccent(jsonb->>''code'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('contributor_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS contributor_type_name_idx_unique ON test_tenant_mod_inventory_storage.contributor_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('electronic_access_relationship_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS electronic_access_relationship_name_idx_unique ON test_tenant_mod_inventory_storage.electronic_access_relationship (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('holdings_note_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS holdings_note_type_name_idx_unique ON test_tenant_mod_inventory_storage.holdings_note_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('holdings_record_callNumber_idx', 'CREATE INDEX IF NOT EXISTS holdings_record_callNumber_idx ON test_tenant_mod_inventory_storage.holdings_record (left(lower(jsonb->>''callNumber''),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('holdings_record_hrid_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS holdings_record_hrid_idx_unique ON test_tenant_mod_inventory_storage.holdings_record (lower(f_unaccent(jsonb->>''hrid'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('holdings_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS holdings_type_name_idx_unique ON test_tenant_mod_inventory_storage.holdings_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('identifier_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS identifier_type_name_idx_unique ON test_tenant_mod_inventory_storage.identifier_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('ill_policy_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS ill_policy_name_idx_unique ON test_tenant_mod_inventory_storage.ill_policy (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_classifications_idx_gin', 'CREATE INDEX IF NOT EXISTS instance_classifications_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ((lower(f_unaccent(jsonb->>''classifications''))) gin_trgm_ops)', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_contributors_idx', 'CREATE INDEX IF NOT EXISTS instance_contributors_idx ON test_tenant_mod_inventory_storage.instance (left(lower(f_unaccent(jsonb->>''contributors'')),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_contributors_idx_ft', 'CREATE INDEX IF NOT EXISTS instance_contributors_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ( to_tsvector(''simple'', f_unaccent(jsonb->>''contributors'')) )', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_contributors_idx_gin', 'CREATE INDEX IF NOT EXISTS instance_contributors_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ((lower(f_unaccent(jsonb->>''contributors''))) gin_trgm_ops)', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_format_code_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_format_code_idx_unique ON test_tenant_mod_inventory_storage.instance_format (lower(f_unaccent(jsonb->>''code'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_format_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_format_name_idx_unique ON test_tenant_mod_inventory_storage.instance_format (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_hrid_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_hrid_idx_unique ON test_tenant_mod_inventory_storage.instance (lower(f_unaccent(jsonb->>''hrid'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_identifiers_idx_ft', 'CREATE INDEX IF NOT EXISTS instance_identifiers_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ( to_tsvector(''simple'', f_unaccent(jsonb->>''identifiers'')) )', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_identifiers_idx_gin', 'CREATE INDEX IF NOT EXISTS instance_identifiers_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ((lower(f_unaccent(jsonb->>''identifiers''))) gin_trgm_ops)', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_indexTitle_idx', 'CREATE INDEX IF NOT EXISTS instance_indexTitle_idx ON test_tenant_mod_inventory_storage.instance (left(lower(f_unaccent(jsonb->>''indexTitle'')),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_indexTitle_idx_gin', 'CREATE INDEX IF NOT EXISTS instance_indexTitle_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ((lower(f_unaccent(jsonb->>''indexTitle''))) gin_trgm_ops)', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_languages_idx_ft', 'CREATE INDEX IF NOT EXISTS instance_languages_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ( to_tsvector(''simple'', f_unaccent(jsonb->>''languages'')) )', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_note_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_note_type_name_idx_unique ON test_tenant_mod_inventory_storage.instance_note_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_publication_idx', 'CREATE INDEX IF NOT EXISTS instance_publication_idx ON test_tenant_mod_inventory_storage.instance (left(lower(f_unaccent(jsonb->>''publication'')),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_relationship_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_relationship_type_name_idx_unique ON test_tenant_mod_inventory_storage.instance_relationship_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_source_idx', 'CREATE INDEX IF NOT EXISTS instance_source_idx ON test_tenant_mod_inventory_storage.instance (left(lower(jsonb->>''source''),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_statisticalCodeIds_idx', 'CREATE INDEX IF NOT EXISTS instance_statisticalCodeIds_idx ON test_tenant_mod_inventory_storage.instance (left(lower(jsonb->>''statisticalCodeIds''),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_status_code_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_status_code_idx_unique ON test_tenant_mod_inventory_storage.instance_status (lower(f_unaccent(jsonb->>''code'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_status_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_status_name_idx_unique ON test_tenant_mod_inventory_storage.instance_status (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_subjects_idx_gin', 'CREATE INDEX IF NOT EXISTS instance_subjects_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ((lower(f_unaccent(jsonb->>''subjects''))) gin_trgm_ops)', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_title_idx', 'CREATE INDEX IF NOT EXISTS instance_title_idx ON test_tenant_mod_inventory_storage.instance (left(lower(f_unaccent(jsonb->>''title'')),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_title_idx_ft', 'CREATE INDEX IF NOT EXISTS instance_title_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ( to_tsvector(''simple'', f_unaccent(jsonb->>''title'')) )', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_title_idx_gin', 'CREATE INDEX IF NOT EXISTS instance_title_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ((lower(f_unaccent(jsonb->>''title''))) gin_trgm_ops)', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_type_code_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_type_code_idx_unique ON test_tenant_mod_inventory_storage.instance_type (lower(f_unaccent(jsonb->>''code'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_type_name_idx_unique ON test_tenant_mod_inventory_storage.instance_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('item_accessionNumber_idx', 'CREATE INDEX IF NOT EXISTS item_accessionNumber_idx ON test_tenant_mod_inventory_storage.item (left(lower(jsonb->>''accessionNumber''),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('item_barcode_idx', 'CREATE INDEX IF NOT EXISTS item_barcode_idx ON test_tenant_mod_inventory_storage.item (left(lower(f_unaccent(jsonb->>''barcode'')),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('item_barcode_idx_ft', 'CREATE INDEX IF NOT EXISTS item_barcode_idx_ft ON test_tenant_mod_inventory_storage.item USING GIN ( to_tsvector(''simple'', f_unaccent(jsonb->>''barcode'')) )', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('item_barcode_idx_gin', 'CREATE INDEX IF NOT EXISTS item_barcode_idx_gin ON test_tenant_mod_inventory_storage.item USING GIN ((lower(f_unaccent(jsonb->>''barcode''))) gin_trgm_ops)', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('item_damaged_status_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS item_damaged_status_name_idx_unique ON test_tenant_mod_inventory_storage.item_damaged_status (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('item_hrid_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS item_hrid_idx_unique ON test_tenant_mod_inventory_storage.item (lower(f_unaccent(jsonb->>''hrid'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('item_note_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS item_note_type_name_idx_unique ON test_tenant_mod_inventory_storage.item_note_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('item_status_name_idx', 'CREATE INDEX IF NOT EXISTS item_status_name_idx ON test_tenant_mod_inventory_storage.item (left(lower(f_unaccent(jsonb->''status''->>''name'')),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('item_status_name_idx_gin', 'CREATE INDEX IF NOT EXISTS item_status_name_idx_gin ON test_tenant_mod_inventory_storage.item USING GIN ((lower(f_unaccent(jsonb->''status''->>''name''))) gin_trgm_ops)', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('loan_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS loan_type_name_idx_unique ON test_tenant_mod_inventory_storage.loan_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('location_code_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS location_code_idx_unique ON test_tenant_mod_inventory_storage.location (lower(f_unaccent(jsonb->>''code'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('location_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS location_name_idx_unique ON test_tenant_mod_inventory_storage.location (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('loccampus_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS loccampus_name_idx_unique ON test_tenant_mod_inventory_storage.loccampus (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('locinstitution_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS locinstitution_name_idx_unique ON test_tenant_mod_inventory_storage.locinstitution (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('loclibrary_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS loclibrary_name_idx_unique ON test_tenant_mod_inventory_storage.loclibrary (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('material_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS material_type_name_idx_unique ON test_tenant_mod_inventory_storage.material_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('mode_of_issuance_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS mode_of_issuance_name_idx_unique ON test_tenant_mod_inventory_storage.mode_of_issuance (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('nature_of_content_term_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS nature_of_content_term_name_idx_unique ON test_tenant_mod_inventory_storage.nature_of_content_term (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('service_point_code_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS service_point_code_idx_unique ON test_tenant_mod_inventory_storage.service_point (lower(f_unaccent(jsonb->>''code'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('service_point_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS service_point_name_idx_unique ON test_tenant_mod_inventory_storage.service_point (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('service_point_user_userId_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS service_point_user_userId_idx_unique ON test_tenant_mod_inventory_storage.service_point_user (lower(f_unaccent(jsonb->>''userId'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('statistical_code_code_statisticalCodeTypeId_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS statistical_code_code_statisticalCodeTypeId_idx_unique ON test_tenant_mod_inventory_storage.statistical_code (lower(f_unaccent(jsonb->>''code'')) , lower(f_unaccent(jsonb->>''statisticalCodeTypeId'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('statistical_code_type_code_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS statistical_code_type_code_idx_unique ON test_tenant_mod_inventory_storage.statistical_code_type (lower(f_unaccent(jsonb->>''code'')))', false); ELSE -- nothing to do, this results in rebuilding all indexes because we haven't investigated which indexes are exactly the same END CASE; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ DECLARE n INT; BEGIN -- Only populate if table is empty SELECT count(*) INTO n FROM test_tenant_mod_inventory_storage.rmb_internal_index; IF n > 0 THEN RETURN; END IF; CASE '0.0' -- previous module version taken from the /_/tenant POST module_from variable WHEN '18.2.3', 'mod-inventory-storage-18.2.3', '18.2.2', 'mod-inventory-storage-18.2.2', '18.2.1', 'mod-inventory-storage-18.2.1' THEN -- Edelweiss versions 18.2.1 - 18.2.3; earlier versions don't have left(..., 600) index truncation INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('alternative_title_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS alternative_title_type_name_idx_unique ON test_tenant_mod_inventory_storage.alternative_title_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('call_number_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS call_number_type_name_idx_unique ON test_tenant_mod_inventory_storage.call_number_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('classification_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS classification_type_name_idx_unique ON test_tenant_mod_inventory_storage.classification_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('contributor_name_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS contributor_name_type_name_idx_unique ON test_tenant_mod_inventory_storage.contributor_name_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('contributor_type_code_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS contributor_type_code_idx_unique ON test_tenant_mod_inventory_storage.contributor_type (lower(f_unaccent(jsonb->>''code'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('contributor_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS contributor_type_name_idx_unique ON test_tenant_mod_inventory_storage.contributor_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('electronic_access_relationship_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS electronic_access_relationship_name_idx_unique ON test_tenant_mod_inventory_storage.electronic_access_relationship (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('holdings_note_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS holdings_note_type_name_idx_unique ON test_tenant_mod_inventory_storage.holdings_note_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('holdings_record_hrid_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS holdings_record_hrid_idx_unique ON test_tenant_mod_inventory_storage.holdings_record (lower(f_unaccent(jsonb->>''hrid'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('holdings_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS holdings_type_name_idx_unique ON test_tenant_mod_inventory_storage.holdings_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('identifier_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS identifier_type_name_idx_unique ON test_tenant_mod_inventory_storage.identifier_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('ill_policy_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS ill_policy_name_idx_unique ON test_tenant_mod_inventory_storage.ill_policy (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_classifications_idx_gin', 'CREATE INDEX IF NOT EXISTS instance_classifications_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ((lower(f_unaccent(jsonb->>''classifications''))) gin_trgm_ops)', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_contributors_idx', 'CREATE INDEX IF NOT EXISTS instance_contributors_idx ON test_tenant_mod_inventory_storage.instance (left(lower(f_unaccent(jsonb->>''contributors'')),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_contributors_idx_ft', 'CREATE INDEX IF NOT EXISTS instance_contributors_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ( to_tsvector(''simple'', f_unaccent(jsonb->>''contributors'')) )', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_contributors_idx_gin', 'CREATE INDEX IF NOT EXISTS instance_contributors_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ((lower(f_unaccent(jsonb->>''contributors''))) gin_trgm_ops)', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_format_code_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_format_code_idx_unique ON test_tenant_mod_inventory_storage.instance_format (lower(f_unaccent(jsonb->>''code'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_format_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_format_name_idx_unique ON test_tenant_mod_inventory_storage.instance_format (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_hrid_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_hrid_idx_unique ON test_tenant_mod_inventory_storage.instance (lower(f_unaccent(jsonb->>''hrid'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_identifiers_idx_ft', 'CREATE INDEX IF NOT EXISTS instance_identifiers_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ( to_tsvector(''simple'', f_unaccent(jsonb->>''identifiers'')) )', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_identifiers_idx_gin', 'CREATE INDEX IF NOT EXISTS instance_identifiers_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ((lower(f_unaccent(jsonb->>''identifiers''))) gin_trgm_ops)', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_indexTitle_idx', 'CREATE INDEX IF NOT EXISTS instance_indexTitle_idx ON test_tenant_mod_inventory_storage.instance (left(lower(f_unaccent(jsonb->>''indexTitle'')),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_indexTitle_idx_gin', 'CREATE INDEX IF NOT EXISTS instance_indexTitle_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ((lower(f_unaccent(jsonb->>''indexTitle''))) gin_trgm_ops)', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_keyword_idx_ft', 'CREATE INDEX IF NOT EXISTS instance_keyword_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ( to_tsvector(''simple'', f_unaccent(concat_space_sql(instance.jsonb->>''title'' , concat_array_object_values(instance.jsonb->''contributors'',''name'') , concat_array_object_values(instance.jsonb->''identifiers'',''value'')))) )', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_languages_idx_ft', 'CREATE INDEX IF NOT EXISTS instance_languages_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ( to_tsvector(''simple'', f_unaccent(jsonb->>''languages'')) )', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_note_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_note_type_name_idx_unique ON test_tenant_mod_inventory_storage.instance_note_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_publication_idx', 'CREATE INDEX IF NOT EXISTS instance_publication_idx ON test_tenant_mod_inventory_storage.instance (left(lower(f_unaccent(jsonb->>''publication'')),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_relationship_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_relationship_type_name_idx_unique ON test_tenant_mod_inventory_storage.instance_relationship_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_source_idx', 'CREATE INDEX IF NOT EXISTS instance_source_idx ON test_tenant_mod_inventory_storage.instance (left(lower(jsonb->>''source''),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_statisticalCodeIds_idx', 'CREATE INDEX IF NOT EXISTS instance_statisticalCodeIds_idx ON test_tenant_mod_inventory_storage.instance (left(lower(jsonb->>''statisticalCodeIds''),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_status_code_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_status_code_idx_unique ON test_tenant_mod_inventory_storage.instance_status (lower(f_unaccent(jsonb->>''code'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_status_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_status_name_idx_unique ON test_tenant_mod_inventory_storage.instance_status (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_subjects_idx_gin', 'CREATE INDEX IF NOT EXISTS instance_subjects_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ((lower(f_unaccent(jsonb->>''subjects''))) gin_trgm_ops)', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_title_idx', 'CREATE INDEX IF NOT EXISTS instance_title_idx ON test_tenant_mod_inventory_storage.instance (left(lower(f_unaccent(jsonb->>''title'')),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_title_idx_ft', 'CREATE INDEX IF NOT EXISTS instance_title_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ( to_tsvector(''simple'', f_unaccent(jsonb->>''title'')) )', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_title_idx_gin', 'CREATE INDEX IF NOT EXISTS instance_title_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ((lower(f_unaccent(jsonb->>''title''))) gin_trgm_ops)', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_type_code_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_type_code_idx_unique ON test_tenant_mod_inventory_storage.instance_type (lower(f_unaccent(jsonb->>''code'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_type_name_idx_unique ON test_tenant_mod_inventory_storage.instance_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('item_barcode_idx', 'CREATE INDEX IF NOT EXISTS item_barcode_idx ON test_tenant_mod_inventory_storage.item (left(lower(f_unaccent(jsonb->>''barcode'')),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('item_barcode_idx_ft', 'CREATE INDEX IF NOT EXISTS item_barcode_idx_ft ON test_tenant_mod_inventory_storage.item USING GIN ( to_tsvector(''simple'', f_unaccent(jsonb->>''barcode'')) )', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('item_barcode_idx_gin', 'CREATE INDEX IF NOT EXISTS item_barcode_idx_gin ON test_tenant_mod_inventory_storage.item USING GIN ((lower(f_unaccent(jsonb->>''barcode''))) gin_trgm_ops)', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('item_damaged_status_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS item_damaged_status_name_idx_unique ON test_tenant_mod_inventory_storage.item_damaged_status (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('item_hrid_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS item_hrid_idx_unique ON test_tenant_mod_inventory_storage.item (lower(f_unaccent(jsonb->>''hrid'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('item_note_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS item_note_type_name_idx_unique ON test_tenant_mod_inventory_storage.item_note_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('item_status_name_idx', 'CREATE INDEX IF NOT EXISTS item_status_name_idx ON test_tenant_mod_inventory_storage.item (left(lower(f_unaccent(jsonb->''status''->>''name'')),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('item_status_name_idx_gin', 'CREATE INDEX IF NOT EXISTS item_status_name_idx_gin ON test_tenant_mod_inventory_storage.item USING GIN ((lower(f_unaccent(jsonb->''status''->>''name''))) gin_trgm_ops)', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('loan_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS loan_type_name_idx_unique ON test_tenant_mod_inventory_storage.loan_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('location_code_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS location_code_idx_unique ON test_tenant_mod_inventory_storage.location (lower(f_unaccent(jsonb->>''code'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('location_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS location_name_idx_unique ON test_tenant_mod_inventory_storage.location (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('loccampus_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS loccampus_name_idx_unique ON test_tenant_mod_inventory_storage.loccampus (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('locinstitution_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS locinstitution_name_idx_unique ON test_tenant_mod_inventory_storage.locinstitution (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('loclibrary_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS loclibrary_name_idx_unique ON test_tenant_mod_inventory_storage.loclibrary (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('material_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS material_type_name_idx_unique ON test_tenant_mod_inventory_storage.material_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('mode_of_issuance_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS mode_of_issuance_name_idx_unique ON test_tenant_mod_inventory_storage.mode_of_issuance (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('nature_of_content_term_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS nature_of_content_term_name_idx_unique ON test_tenant_mod_inventory_storage.nature_of_content_term (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('service_point_code_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS service_point_code_idx_unique ON test_tenant_mod_inventory_storage.service_point (lower(f_unaccent(jsonb->>''code'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('service_point_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS service_point_name_idx_unique ON test_tenant_mod_inventory_storage.service_point (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('service_point_user_userId_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS service_point_user_userId_idx_unique ON test_tenant_mod_inventory_storage.service_point_user (lower(f_unaccent(jsonb->>''userId'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('statistical_code_code_statisticalCodeTypeId_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS statistical_code_code_statisticalCodeTypeId_idx_unique ON test_tenant_mod_inventory_storage.statistical_code (lower(f_unaccent(jsonb->>''code'')) , lower(f_unaccent(jsonb->>''statisticalCodeTypeId'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('statistical_code_type_code_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS statistical_code_type_code_idx_unique ON test_tenant_mod_inventory_storage.statistical_code_type (lower(f_unaccent(jsonb->>''code'')))', false); WHEN '19.0.0', 'mod-inventory-storage-19.0.0', '19.1.0', 'mod-inventory-storage-19.1.0' THEN INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('alternative_title_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS alternative_title_type_name_idx_unique ON test_tenant_mod_inventory_storage.alternative_title_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('call_number_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS call_number_type_name_idx_unique ON test_tenant_mod_inventory_storage.call_number_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('classification_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS classification_type_name_idx_unique ON test_tenant_mod_inventory_storage.classification_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('contributor_name_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS contributor_name_type_name_idx_unique ON test_tenant_mod_inventory_storage.contributor_name_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('contributor_type_code_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS contributor_type_code_idx_unique ON test_tenant_mod_inventory_storage.contributor_type (lower(f_unaccent(jsonb->>''code'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('contributor_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS contributor_type_name_idx_unique ON test_tenant_mod_inventory_storage.contributor_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('electronic_access_relationship_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS electronic_access_relationship_name_idx_unique ON test_tenant_mod_inventory_storage.electronic_access_relationship (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('holdings_note_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS holdings_note_type_name_idx_unique ON test_tenant_mod_inventory_storage.holdings_note_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('holdings_record_callNumber_idx', 'CREATE INDEX IF NOT EXISTS holdings_record_callNumber_idx ON test_tenant_mod_inventory_storage.holdings_record (left(lower(jsonb->>''callNumber''),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('holdings_record_hrid_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS holdings_record_hrid_idx_unique ON test_tenant_mod_inventory_storage.holdings_record (lower(f_unaccent(jsonb->>''hrid'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('holdings_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS holdings_type_name_idx_unique ON test_tenant_mod_inventory_storage.holdings_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('identifier_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS identifier_type_name_idx_unique ON test_tenant_mod_inventory_storage.identifier_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('ill_policy_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS ill_policy_name_idx_unique ON test_tenant_mod_inventory_storage.ill_policy (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_classifications_idx_gin', 'CREATE INDEX IF NOT EXISTS instance_classifications_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ((lower(f_unaccent(jsonb->>''classifications''))) gin_trgm_ops)', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_contributors_idx', 'CREATE INDEX IF NOT EXISTS instance_contributors_idx ON test_tenant_mod_inventory_storage.instance (left(lower(f_unaccent(jsonb->>''contributors'')),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_contributors_idx_ft', 'CREATE INDEX IF NOT EXISTS instance_contributors_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ( to_tsvector(''simple'', f_unaccent(jsonb->>''contributors'')) )', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_contributors_idx_gin', 'CREATE INDEX IF NOT EXISTS instance_contributors_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ((lower(f_unaccent(jsonb->>''contributors''))) gin_trgm_ops)', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_format_code_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_format_code_idx_unique ON test_tenant_mod_inventory_storage.instance_format (lower(f_unaccent(jsonb->>''code'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_format_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_format_name_idx_unique ON test_tenant_mod_inventory_storage.instance_format (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_hrid_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_hrid_idx_unique ON test_tenant_mod_inventory_storage.instance (lower(f_unaccent(jsonb->>''hrid'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_identifiers_idx_ft', 'CREATE INDEX IF NOT EXISTS instance_identifiers_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ( to_tsvector(''simple'', f_unaccent(jsonb->>''identifiers'')) )', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_identifiers_idx_gin', 'CREATE INDEX IF NOT EXISTS instance_identifiers_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ((lower(f_unaccent(jsonb->>''identifiers''))) gin_trgm_ops)', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_indexTitle_idx', 'CREATE INDEX IF NOT EXISTS instance_indexTitle_idx ON test_tenant_mod_inventory_storage.instance (left(lower(f_unaccent(jsonb->>''indexTitle'')),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_indexTitle_idx_gin', 'CREATE INDEX IF NOT EXISTS instance_indexTitle_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ((lower(f_unaccent(jsonb->>''indexTitle''))) gin_trgm_ops)', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_languages_idx_ft', 'CREATE INDEX IF NOT EXISTS instance_languages_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ( to_tsvector(''simple'', f_unaccent(jsonb->>''languages'')) )', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_note_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_note_type_name_idx_unique ON test_tenant_mod_inventory_storage.instance_note_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_publication_idx', 'CREATE INDEX IF NOT EXISTS instance_publication_idx ON test_tenant_mod_inventory_storage.instance (left(lower(f_unaccent(jsonb->>''publication'')),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_relationship_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_relationship_type_name_idx_unique ON test_tenant_mod_inventory_storage.instance_relationship_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_source_idx', 'CREATE INDEX IF NOT EXISTS instance_source_idx ON test_tenant_mod_inventory_storage.instance (left(lower(jsonb->>''source''),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_statisticalCodeIds_idx', 'CREATE INDEX IF NOT EXISTS instance_statisticalCodeIds_idx ON test_tenant_mod_inventory_storage.instance (left(lower(jsonb->>''statisticalCodeIds''),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_status_code_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_status_code_idx_unique ON test_tenant_mod_inventory_storage.instance_status (lower(f_unaccent(jsonb->>''code'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_status_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_status_name_idx_unique ON test_tenant_mod_inventory_storage.instance_status (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_subjects_idx_gin', 'CREATE INDEX IF NOT EXISTS instance_subjects_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ((lower(f_unaccent(jsonb->>''subjects''))) gin_trgm_ops)', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_title_idx', 'CREATE INDEX IF NOT EXISTS instance_title_idx ON test_tenant_mod_inventory_storage.instance (left(lower(f_unaccent(jsonb->>''title'')),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_title_idx_ft', 'CREATE INDEX IF NOT EXISTS instance_title_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ( to_tsvector(''simple'', f_unaccent(jsonb->>''title'')) )', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_title_idx_gin', 'CREATE INDEX IF NOT EXISTS instance_title_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ((lower(f_unaccent(jsonb->>''title''))) gin_trgm_ops)', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_type_code_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_type_code_idx_unique ON test_tenant_mod_inventory_storage.instance_type (lower(f_unaccent(jsonb->>''code'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('instance_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_type_name_idx_unique ON test_tenant_mod_inventory_storage.instance_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('item_accessionNumber_idx', 'CREATE INDEX IF NOT EXISTS item_accessionNumber_idx ON test_tenant_mod_inventory_storage.item (left(lower(jsonb->>''accessionNumber''),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('item_barcode_idx', 'CREATE INDEX IF NOT EXISTS item_barcode_idx ON test_tenant_mod_inventory_storage.item (left(lower(f_unaccent(jsonb->>''barcode'')),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('item_barcode_idx_ft', 'CREATE INDEX IF NOT EXISTS item_barcode_idx_ft ON test_tenant_mod_inventory_storage.item USING GIN ( to_tsvector(''simple'', f_unaccent(jsonb->>''barcode'')) )', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('item_barcode_idx_gin', 'CREATE INDEX IF NOT EXISTS item_barcode_idx_gin ON test_tenant_mod_inventory_storage.item USING GIN ((lower(f_unaccent(jsonb->>''barcode''))) gin_trgm_ops)', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('item_damaged_status_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS item_damaged_status_name_idx_unique ON test_tenant_mod_inventory_storage.item_damaged_status (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('item_hrid_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS item_hrid_idx_unique ON test_tenant_mod_inventory_storage.item (lower(f_unaccent(jsonb->>''hrid'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('item_note_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS item_note_type_name_idx_unique ON test_tenant_mod_inventory_storage.item_note_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('item_status_name_idx', 'CREATE INDEX IF NOT EXISTS item_status_name_idx ON test_tenant_mod_inventory_storage.item (left(lower(f_unaccent(jsonb->''status''->>''name'')),600))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('item_status_name_idx_gin', 'CREATE INDEX IF NOT EXISTS item_status_name_idx_gin ON test_tenant_mod_inventory_storage.item USING GIN ((lower(f_unaccent(jsonb->''status''->>''name''))) gin_trgm_ops)', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('loan_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS loan_type_name_idx_unique ON test_tenant_mod_inventory_storage.loan_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('location_code_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS location_code_idx_unique ON test_tenant_mod_inventory_storage.location (lower(f_unaccent(jsonb->>''code'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('location_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS location_name_idx_unique ON test_tenant_mod_inventory_storage.location (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('loccampus_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS loccampus_name_idx_unique ON test_tenant_mod_inventory_storage.loccampus (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('locinstitution_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS locinstitution_name_idx_unique ON test_tenant_mod_inventory_storage.locinstitution (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('loclibrary_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS loclibrary_name_idx_unique ON test_tenant_mod_inventory_storage.loclibrary (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('material_type_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS material_type_name_idx_unique ON test_tenant_mod_inventory_storage.material_type (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('mode_of_issuance_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS mode_of_issuance_name_idx_unique ON test_tenant_mod_inventory_storage.mode_of_issuance (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('nature_of_content_term_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS nature_of_content_term_name_idx_unique ON test_tenant_mod_inventory_storage.nature_of_content_term (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('service_point_code_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS service_point_code_idx_unique ON test_tenant_mod_inventory_storage.service_point (lower(f_unaccent(jsonb->>''code'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('service_point_name_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS service_point_name_idx_unique ON test_tenant_mod_inventory_storage.service_point (lower(f_unaccent(jsonb->>''name'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('service_point_user_userId_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS service_point_user_userId_idx_unique ON test_tenant_mod_inventory_storage.service_point_user (lower(f_unaccent(jsonb->>''userId'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('statistical_code_code_statisticalCodeTypeId_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS statistical_code_code_statisticalCodeTypeId_idx_unique ON test_tenant_mod_inventory_storage.statistical_code (lower(f_unaccent(jsonb->>''code'')) , lower(f_unaccent(jsonb->>''statisticalCodeTypeId'')))', false); INSERT INTO test_tenant_mod_inventory_storage.rmb_internal_index VALUES ('statistical_code_type_code_idx_unique', 'CREATE UNIQUE INDEX IF NOT EXISTS statistical_code_type_code_idx_unique ON test_tenant_mod_inventory_storage.statistical_code_type (lower(f_unaccent(jsonb->>''code'')))', false); ELSE -- nothing to do, this results in rebuilding all indexes because we haven't investigated which indexes are exactly the same END CASE; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.normalize_isbns(jsonb_array jsonb) RETURNS text AS $$ SELECT string_agg(test_tenant_mod_inventory_storage.normalize_digits(identifier->>'value'), ' ') FROM jsonb_array_elements($1) as identifier WHERE identifier->>'identifierTypeId' = '8261054f-be78-422d-bd51-4ed9f33c3422'; $$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.normalize_isbns(jsonb_array jsonb) RETURNS text AS $$ SELECT string_agg(test_tenant_mod_inventory_storage.normalize_digits(identifier->>'value'), ' ') FROM jsonb_array_elements($1) as identifier WHERE identifier->>'identifierTypeId' = '8261054f-be78-422d-bd51-4ed9f33c3422'; $$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.normalize_invalid_isbns(jsonb_array jsonb) RETURNS text AS $$ SELECT string_agg(test_tenant_mod_inventory_storage.normalize_digits(identifier->>'value'), ' ') FROM jsonb_array_elements($1) as identifier WHERE identifier->>'identifierTypeId' = 'fcca2643-406a-482a-b760-7a7f8aec640e'; $$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.normalize_invalid_isbns(jsonb_array jsonb) RETURNS text AS $$ SELECT string_agg(test_tenant_mod_inventory_storage.normalize_digits(identifier->>'value'), ' ') FROM jsonb_array_elements($1) as identifier WHERE identifier->>'identifierTypeId' = 'fcca2643-406a-482a-b760-7a7f8aec640e'; $$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.normalize_call_number_string(callNumberString text) RETURNS text AS $$ SELECT regexp_replace(lower(callNumberString), '[^a-z0-9]', '', 'g'); $$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.normalize_call_number_string(callNumberString text) RETURNS text AS $$ SELECT regexp_replace(lower(callNumberString), '[^a-z0-9]', '', 'g'); $$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.normalize_holdings_full_call_number(holdingsRecord jsonb) RETURNS text AS $$ SELECT test_tenant_mod_inventory_storage.normalize_call_number_string( concat_ws('', holdingsRecord->>'callNumberPrefix', holdingsRecord->>'callNumber', holdingsRecord->>'callNumberSuffix' )); $$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.normalize_holdings_full_call_number(holdingsRecord jsonb) RETURNS text AS $$ SELECT test_tenant_mod_inventory_storage.normalize_call_number_string( concat_ws('', holdingsRecord->>'callNumberPrefix', holdingsRecord->>'callNumber', holdingsRecord->>'callNumberSuffix' )); $$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.normalize_holdings_call_number_and_suffix(holdingsRecord jsonb) RETURNS text AS $$ SELECT test_tenant_mod_inventory_storage.normalize_call_number_string( concat_ws('', holdingsRecord->>'callNumber', holdingsRecord->>'callNumberSuffix' )); $$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.normalize_holdings_call_number_and_suffix(holdingsRecord jsonb) RETURNS text AS $$ SELECT test_tenant_mod_inventory_storage.normalize_call_number_string( concat_ws('', holdingsRecord->>'callNumber', holdingsRecord->>'callNumberSuffix' )); $$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.normalize_item_full_call_number(item jsonb) RETURNS text AS $$ SELECT test_tenant_mod_inventory_storage.normalize_call_number_string( concat_ws('', item->'effectiveCallNumberComponents'->>'prefix', item->'effectiveCallNumberComponents'->>'callNumber', item->'effectiveCallNumberComponents'->>'suffix' )); $$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.normalize_item_full_call_number(item jsonb) RETURNS text AS $$ SELECT test_tenant_mod_inventory_storage.normalize_call_number_string( concat_ws('', item->'effectiveCallNumberComponents'->>'prefix', item->'effectiveCallNumberComponents'->>'callNumber', item->'effectiveCallNumberComponents'->>'suffix' )); $$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.normalize_item_call_number_and_suffix(item jsonb) RETURNS text AS $$ SELECT test_tenant_mod_inventory_storage.normalize_call_number_string( concat_ws('', item->'effectiveCallNumberComponents'->>'callNumber', item->'effectiveCallNumberComponents'->>'suffix' )); $$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.normalize_item_call_number_and_suffix(item jsonb) RETURNS text AS $$ SELECT test_tenant_mod_inventory_storage.normalize_call_number_string( concat_ws('', item->'effectiveCallNumberComponents'->>'callNumber', item->'effectiveCallNumberComponents'->>'suffix' )); $$ LANGUAGE sql IMMUTABLE PARALLEL SAFE STRICT; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ BEGIN -- use advisory lock to prevent "tuple concurrently updated" -- https://issues.folio.org/browse/RMB-744 PERFORM pg_advisory_xact_lock(20201101, 1234567890); REVOKE ALL PRIVILEGES ON SCHEMA public FROM test_tenant_mod_inventory_storage; REVOKE CREATE ON SCHEMA public FROM PUBLIC; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ BEGIN -- use advisory lock to prevent "tuple concurrently updated" -- https://issues.folio.org/browse/RMB-744 PERFORM pg_advisory_xact_lock(20201101, 1234567890); REVOKE ALL PRIVILEGES ON SCHEMA public FROM test_tenant_mod_inventory_storage; REVOKE CREATE ON SCHEMA public FROM PUBLIC; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.loan_type ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.loan_type ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_loan_type ON test_tenant_mod_inventory_storage.loan_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_loan_type" for relation "test_tenant_mod_inventory_storage.loan_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_loan_type ON test_tenant_mod_inventory_storage.loan_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.loan_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.loan_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.loan_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.loan_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.loan_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.loan_type ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.loan_type ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'loan_type', 'loan_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS loan_type_name_idx_unique ON test_tenant_mod_inventory_storage.loan_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "loan_type_name_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS loan_type_name_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'loan_type', 'loan_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS loan_type_name_idx_unique ON test_tenant_mod_inventory_storage.loan_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'loan_type', 'loan_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS loan_type_name_idx_unique ON test_tenant_mod_inventory_storage.loan_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_loan_type_references ON test_tenant_mod_inventory_storage.loan_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_loan_type_references" for relation "test_tenant_mod_inventory_storage.loan_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_loan_type_references ON test_tenant_mod_inventory_storage.loan_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_loan_type_references(); 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.update_loan_type_references() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_loan_type_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.loan_type_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.loan_type_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_loan_type_md_trigger ON test_tenant_mod_inventory_storage.loan_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_loan_type_md_trigger" for relation "test_tenant_mod_inventory_storage.loan_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_loan_type_md_trigger ON test_tenant_mod_inventory_storage.loan_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_loan_type_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.loan_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.loan_type_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_loan_type_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.loan_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.loan_type_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_loan_type_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_loan_type_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_loan_type_md_json_trigger ON test_tenant_mod_inventory_storage.loan_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_loan_type_md_json_trigger" for relation "test_tenant_mod_inventory_storage.loan_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_loan_type_md_json_trigger ON test_tenant_mod_inventory_storage.loan_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_loan_type_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.loan_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_loan_type_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_loan_type_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.loan_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_loan_type_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_loan_type_ol_version_trigger ON test_tenant_mod_inventory_storage.loan_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_loan_type_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.loan_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_loan_type_ol_version_trigger ON test_tenant_mod_inventory_storage.loan_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.loan_type_set_ol_version() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.loan_type_set_ol_version() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.loan_type_set_ol_version() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.material_type ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.material_type ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_material_type ON test_tenant_mod_inventory_storage.material_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_material_type" for relation "test_tenant_mod_inventory_storage.material_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_material_type ON test_tenant_mod_inventory_storage.material_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.material_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.material_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.material_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.material_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.material_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.material_type ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.material_type ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'material_type', 'material_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS material_type_name_idx_unique ON test_tenant_mod_inventory_storage.material_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "material_type_name_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS material_type_name_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'material_type', 'material_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS material_type_name_idx_unique ON test_tenant_mod_inventory_storage.material_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'material_type', 'material_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS material_type_name_idx_unique ON test_tenant_mod_inventory_storage.material_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_material_type_references ON test_tenant_mod_inventory_storage.material_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_material_type_references" for relation "test_tenant_mod_inventory_storage.material_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_material_type_references ON test_tenant_mod_inventory_storage.material_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_material_type_references(); 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.update_material_type_references() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_material_type_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.material_type_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.material_type_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_material_type_md_trigger ON test_tenant_mod_inventory_storage.material_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_material_type_md_trigger" for relation "test_tenant_mod_inventory_storage.material_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_material_type_md_trigger ON test_tenant_mod_inventory_storage.material_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_material_type_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.material_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.material_type_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_material_type_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.material_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.material_type_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_material_type_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_material_type_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_material_type_md_json_trigger ON test_tenant_mod_inventory_storage.material_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_material_type_md_json_trigger" for relation "test_tenant_mod_inventory_storage.material_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_material_type_md_json_trigger ON test_tenant_mod_inventory_storage.material_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_material_type_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.material_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_material_type_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_material_type_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.material_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_material_type_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_material_type_ol_version_trigger ON test_tenant_mod_inventory_storage.material_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_material_type_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.material_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_material_type_ol_version_trigger ON test_tenant_mod_inventory_storage.material_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.material_type_set_ol_version() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.material_type_set_ol_version() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.material_type_set_ol_version() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.locinstitution ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.locinstitution ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_locinstitution ON test_tenant_mod_inventory_storage.locinstitution CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_locinstitution" for relation "test_tenant_mod_inventory_storage.locinstitution" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_locinstitution ON test_tenant_mod_inventory_storage.locinstitution CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.locinstitution CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.locinstitution" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.locinstitution CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.locinstitution FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.locinstitution FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.locinstitution ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.locinstitution ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'locinstitution', 'locinstitution_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS locinstitution_name_idx_unique ON test_tenant_mod_inventory_storage.locinstitution ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "locinstitution_name_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS locinstitution_name_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'locinstitution', 'locinstitution_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS locinstitution_name_idx_unique ON test_tenant_mod_inventory_storage.locinstitution ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'locinstitution', 'locinstitution_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS locinstitution_name_idx_unique ON test_tenant_mod_inventory_storage.locinstitution ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_locinstitution_references ON test_tenant_mod_inventory_storage.locinstitution CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_locinstitution_references" for relation "test_tenant_mod_inventory_storage.locinstitution" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_locinstitution_references ON test_tenant_mod_inventory_storage.locinstitution CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_locinstitution_references(); 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.update_locinstitution_references() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_locinstitution_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.locinstitution_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.locinstitution_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_locinstitution_md_trigger ON test_tenant_mod_inventory_storage.locinstitution CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_locinstitution_md_trigger" for relation "test_tenant_mod_inventory_storage.locinstitution" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_locinstitution_md_trigger ON test_tenant_mod_inventory_storage.locinstitution CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_locinstitution_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.locinstitution FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.locinstitution_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_locinstitution_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.locinstitution FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.locinstitution_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_locinstitution_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_locinstitution_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_locinstitution_md_json_trigger ON test_tenant_mod_inventory_storage.locinstitution CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_locinstitution_md_json_trigger" for relation "test_tenant_mod_inventory_storage.locinstitution" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_locinstitution_md_json_trigger ON test_tenant_mod_inventory_storage.locinstitution CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_locinstitution_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.locinstitution FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_locinstitution_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_locinstitution_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.locinstitution FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_locinstitution_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_locinstitution_ol_version_trigger ON test_tenant_mod_inventory_storage.locinstitution CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_locinstitution_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.locinstitution" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_locinstitution_ol_version_trigger ON test_tenant_mod_inventory_storage.locinstitution CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.locinstitution_set_ol_version() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.locinstitution_set_ol_version() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.locinstitution_set_ol_version() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.loccampus ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.loccampus ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_loccampus ON test_tenant_mod_inventory_storage.loccampus CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_loccampus" for relation "test_tenant_mod_inventory_storage.loccampus" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_loccampus ON test_tenant_mod_inventory_storage.loccampus CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.loccampus CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.loccampus" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.loccampus CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.loccampus FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.loccampus FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.loccampus ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.loccampus ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'loccampus', 'loccampus_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS loccampus_name_idx_unique ON test_tenant_mod_inventory_storage.loccampus ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "loccampus_name_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS loccampus_name_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'loccampus', 'loccampus_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS loccampus_name_idx_unique ON test_tenant_mod_inventory_storage.loccampus ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'loccampus', 'loccampus_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS loccampus_name_idx_unique ON test_tenant_mod_inventory_storage.loccampus ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.loccampus ADD COLUMN IF NOT EXISTS institutionId UUID; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.loccampus ADD COLUMN IF NOT EXISTS institutionId UUID; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ BEGIN BEGIN ALTER TABLE loccampus ADD CONSTRAINT institutionId_locinstitution_fkey FOREIGN KEY (institutionId) REFERENCES locinstitution; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ BEGIN BEGIN ALTER TABLE loccampus ADD CONSTRAINT institutionId_locinstitution_fkey FOREIGN KEY (institutionId) REFERENCES locinstitution; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE INDEX IF NOT EXISTS loccampus_institutionId_idx ON test_tenant_mod_inventory_storage.loccampus (institutionId); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE INDEX IF NOT EXISTS loccampus_institutionId_idx ON test_tenant_mod_inventory_storage.loccampus (institutionId); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} INSERT INTO rmb_internal_analyze VALUES ('loccampus'); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed INSERT INTO rmb_internal_analyze VALUES ('loccampus'); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.update_loccampus_references() RETURNS TRIGGER AS $$ BEGIN NEW.institutionId = (NEW.jsonb->>'institutionId'); RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.update_loccampus_references() RETURNS TRIGGER AS $$ BEGIN NEW.institutionId = (NEW.jsonb->>'institutionId'); RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_loccampus_references ON test_tenant_mod_inventory_storage.loccampus CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_loccampus_references" for relation "test_tenant_mod_inventory_storage.loccampus" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_loccampus_references ON test_tenant_mod_inventory_storage.loccampus CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER update_loccampus_references BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.loccampus FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.update_loccampus_references(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER update_loccampus_references BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.loccampus FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.update_loccampus_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ DECLARE version TEXT; i INT; BEGIN SELECT jsonb->>'rmbVersion' INTO version FROM rmb_internal; IF version !~ '^(\d\.|1\d\.|2\d\.|30\.0\.)' THEN RETURN; END IF; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE loccampus DROP CONSTRAINT IF EXISTS ' || 'institutionId_locinstitution_fkey' || i; END LOOP; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ DECLARE version TEXT; i INT; BEGIN SELECT jsonb->>'rmbVersion' INTO version FROM rmb_internal; IF version !~ '^(\d\.|1\d\.|2\d\.|30\.0\.)' THEN RETURN; END IF; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE loccampus DROP CONSTRAINT IF EXISTS ' || 'institutionId_locinstitution_fkey' || i; END LOOP; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.loccampus_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.loccampus_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_loccampus_md_trigger ON test_tenant_mod_inventory_storage.loccampus CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_loccampus_md_trigger" for relation "test_tenant_mod_inventory_storage.loccampus" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_loccampus_md_trigger ON test_tenant_mod_inventory_storage.loccampus CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_loccampus_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.loccampus FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.loccampus_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_loccampus_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.loccampus FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.loccampus_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_loccampus_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_loccampus_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_loccampus_md_json_trigger ON test_tenant_mod_inventory_storage.loccampus CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_loccampus_md_json_trigger" for relation "test_tenant_mod_inventory_storage.loccampus" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_loccampus_md_json_trigger ON test_tenant_mod_inventory_storage.loccampus CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_loccampus_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.loccampus FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_loccampus_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_loccampus_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.loccampus FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_loccampus_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_loccampus_ol_version_trigger ON test_tenant_mod_inventory_storage.loccampus CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_loccampus_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.loccampus" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_loccampus_ol_version_trigger ON test_tenant_mod_inventory_storage.loccampus CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.loccampus_set_ol_version() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.loccampus_set_ol_version() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.loccampus_set_ol_version() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.loclibrary ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.loclibrary ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_loclibrary ON test_tenant_mod_inventory_storage.loclibrary CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_loclibrary" for relation "test_tenant_mod_inventory_storage.loclibrary" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_loclibrary ON test_tenant_mod_inventory_storage.loclibrary CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.loclibrary CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.loclibrary" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.loclibrary CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.loclibrary FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.loclibrary FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.loclibrary ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.loclibrary ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'loclibrary', 'loclibrary_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS loclibrary_name_idx_unique ON test_tenant_mod_inventory_storage.loclibrary ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "loclibrary_name_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS loclibrary_name_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'loclibrary', 'loclibrary_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS loclibrary_name_idx_unique ON test_tenant_mod_inventory_storage.loclibrary ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'loclibrary', 'loclibrary_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS loclibrary_name_idx_unique ON test_tenant_mod_inventory_storage.loclibrary ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.loclibrary ADD COLUMN IF NOT EXISTS campusId UUID; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.loclibrary ADD COLUMN IF NOT EXISTS campusId UUID; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ BEGIN BEGIN ALTER TABLE loclibrary ADD CONSTRAINT campusId_loccampus_fkey FOREIGN KEY (campusId) REFERENCES loccampus; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ BEGIN BEGIN ALTER TABLE loclibrary ADD CONSTRAINT campusId_loccampus_fkey FOREIGN KEY (campusId) REFERENCES loccampus; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE INDEX IF NOT EXISTS loclibrary_campusId_idx ON test_tenant_mod_inventory_storage.loclibrary (campusId); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE INDEX IF NOT EXISTS loclibrary_campusId_idx ON test_tenant_mod_inventory_storage.loclibrary (campusId); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} INSERT INTO rmb_internal_analyze VALUES ('loclibrary'); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed INSERT INTO rmb_internal_analyze VALUES ('loclibrary'); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.update_loclibrary_references() RETURNS TRIGGER AS $$ BEGIN NEW.campusId = (NEW.jsonb->>'campusId'); RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.update_loclibrary_references() RETURNS TRIGGER AS $$ BEGIN NEW.campusId = (NEW.jsonb->>'campusId'); RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_loclibrary_references ON test_tenant_mod_inventory_storage.loclibrary CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_loclibrary_references" for relation "test_tenant_mod_inventory_storage.loclibrary" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_loclibrary_references ON test_tenant_mod_inventory_storage.loclibrary CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER update_loclibrary_references BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.loclibrary FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.update_loclibrary_references(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER update_loclibrary_references BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.loclibrary FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.update_loclibrary_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ DECLARE version TEXT; i INT; BEGIN SELECT jsonb->>'rmbVersion' INTO version FROM rmb_internal; IF version !~ '^(\d\.|1\d\.|2\d\.|30\.0\.)' THEN RETURN; END IF; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE loclibrary DROP CONSTRAINT IF EXISTS ' || 'campusId_loccampus_fkey' || i; END LOOP; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ DECLARE version TEXT; i INT; BEGIN SELECT jsonb->>'rmbVersion' INTO version FROM rmb_internal; IF version !~ '^(\d\.|1\d\.|2\d\.|30\.0\.)' THEN RETURN; END IF; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE loclibrary DROP CONSTRAINT IF EXISTS ' || 'campusId_loccampus_fkey' || i; END LOOP; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.loclibrary_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.loclibrary_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_loclibrary_md_trigger ON test_tenant_mod_inventory_storage.loclibrary CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_loclibrary_md_trigger" for relation "test_tenant_mod_inventory_storage.loclibrary" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_loclibrary_md_trigger ON test_tenant_mod_inventory_storage.loclibrary CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_loclibrary_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.loclibrary FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.loclibrary_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_loclibrary_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.loclibrary FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.loclibrary_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_loclibrary_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_loclibrary_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_loclibrary_md_json_trigger ON test_tenant_mod_inventory_storage.loclibrary CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_loclibrary_md_json_trigger" for relation "test_tenant_mod_inventory_storage.loclibrary" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_loclibrary_md_json_trigger ON test_tenant_mod_inventory_storage.loclibrary CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_loclibrary_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.loclibrary FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_loclibrary_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_loclibrary_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.loclibrary FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_loclibrary_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_loclibrary_ol_version_trigger ON test_tenant_mod_inventory_storage.loclibrary CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_loclibrary_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.loclibrary" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_loclibrary_ol_version_trigger ON test_tenant_mod_inventory_storage.loclibrary CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.loclibrary_set_ol_version() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.loclibrary_set_ol_version() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.loclibrary_set_ol_version() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.location ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.location ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_location ON test_tenant_mod_inventory_storage.location CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_location" for relation "test_tenant_mod_inventory_storage.location" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_location ON test_tenant_mod_inventory_storage.location CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.location CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.location" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.location CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.location FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.location FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.location ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.location ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'location', 'location_primaryServicePoint_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS location_primaryServicePoint_idx ON test_tenant_mod_inventory_storage.location ' || $rmb$(left(lower(jsonb->>'primaryServicePoint'),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "location_primaryservicepoint_idx" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS location_primaryServicePoint_idx" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'location', 'location_primaryServicePoint_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS location_primaryServicePoint_idx ON test_tenant_mod_inventory_storage.location ' || $rmb$(left(lower(jsonb->>'primaryServicePoint'),600))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'location', 'location_primaryServicePoint_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS location_primaryServicePoint_idx ON test_tenant_mod_inventory_storage.location ' || $rmb$(left(lower(jsonb->>'primaryServicePoint'),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'location', 'location_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS location_name_idx_unique ON test_tenant_mod_inventory_storage.location ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "location_name_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS location_name_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'location', 'location_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS location_name_idx_unique ON test_tenant_mod_inventory_storage.location ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'location', 'location_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS location_name_idx_unique ON test_tenant_mod_inventory_storage.location ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'location', 'location_code_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS location_code_idx_unique ON test_tenant_mod_inventory_storage.location ' || $rmb$(lower(f_unaccent(jsonb->>'code')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "location_code_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS location_code_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'location', 'location_code_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS location_code_idx_unique ON test_tenant_mod_inventory_storage.location ' || $rmb$(lower(f_unaccent(jsonb->>'code')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'location', 'location_code_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS location_code_idx_unique ON test_tenant_mod_inventory_storage.location ' || $rmb$(lower(f_unaccent(jsonb->>'code')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.location ADD COLUMN IF NOT EXISTS institutionId UUID; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.location ADD COLUMN IF NOT EXISTS institutionId UUID; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ BEGIN BEGIN ALTER TABLE location ADD CONSTRAINT institutionId_locinstitution_fkey FOREIGN KEY (institutionId) REFERENCES locinstitution; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ BEGIN BEGIN ALTER TABLE location ADD CONSTRAINT institutionId_locinstitution_fkey FOREIGN KEY (institutionId) REFERENCES locinstitution; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE INDEX IF NOT EXISTS location_institutionId_idx ON test_tenant_mod_inventory_storage.location (institutionId); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE INDEX IF NOT EXISTS location_institutionId_idx ON test_tenant_mod_inventory_storage.location (institutionId); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} INSERT INTO rmb_internal_analyze VALUES ('location'); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed INSERT INTO rmb_internal_analyze VALUES ('location'); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.location ADD COLUMN IF NOT EXISTS campusId UUID; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.location ADD COLUMN IF NOT EXISTS campusId UUID; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ BEGIN BEGIN ALTER TABLE location ADD CONSTRAINT campusId_loccampus_fkey FOREIGN KEY (campusId) REFERENCES loccampus; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ BEGIN BEGIN ALTER TABLE location ADD CONSTRAINT campusId_loccampus_fkey FOREIGN KEY (campusId) REFERENCES loccampus; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE INDEX IF NOT EXISTS location_campusId_idx ON test_tenant_mod_inventory_storage.location (campusId); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE INDEX IF NOT EXISTS location_campusId_idx ON test_tenant_mod_inventory_storage.location (campusId); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} INSERT INTO rmb_internal_analyze VALUES ('location'); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed INSERT INTO rmb_internal_analyze VALUES ('location'); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.location ADD COLUMN IF NOT EXISTS libraryId UUID; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.location ADD COLUMN IF NOT EXISTS libraryId UUID; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ BEGIN BEGIN ALTER TABLE location ADD CONSTRAINT libraryId_loclibrary_fkey FOREIGN KEY (libraryId) REFERENCES loclibrary; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ BEGIN BEGIN ALTER TABLE location ADD CONSTRAINT libraryId_loclibrary_fkey FOREIGN KEY (libraryId) REFERENCES loclibrary; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE INDEX IF NOT EXISTS location_libraryId_idx ON test_tenant_mod_inventory_storage.location (libraryId); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE INDEX IF NOT EXISTS location_libraryId_idx ON test_tenant_mod_inventory_storage.location (libraryId); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} INSERT INTO rmb_internal_analyze VALUES ('location'); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed INSERT INTO rmb_internal_analyze VALUES ('location'); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.update_location_references() RETURNS TRIGGER AS $$ BEGIN NEW.institutionId = (NEW.jsonb->>'institutionId'); NEW.campusId = (NEW.jsonb->>'campusId'); NEW.libraryId = (NEW.jsonb->>'libraryId'); RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.update_location_references() RETURNS TRIGGER AS $$ BEGIN NEW.institutionId = (NEW.jsonb->>'institutionId'); NEW.campusId = (NEW.jsonb->>'campusId'); NEW.libraryId = (NEW.jsonb->>'libraryId'); RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_location_references ON test_tenant_mod_inventory_storage.location CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_location_references" for relation "test_tenant_mod_inventory_storage.location" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_location_references ON test_tenant_mod_inventory_storage.location CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER update_location_references BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.location FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.update_location_references(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER update_location_references BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.location FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.update_location_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ DECLARE version TEXT; i INT; BEGIN SELECT jsonb->>'rmbVersion' INTO version FROM rmb_internal; IF version !~ '^(\d\.|1\d\.|2\d\.|30\.0\.)' THEN RETURN; END IF; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE location DROP CONSTRAINT IF EXISTS ' || 'institutionId_locinstitution_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE location DROP CONSTRAINT IF EXISTS ' || 'campusId_loccampus_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE location DROP CONSTRAINT IF EXISTS ' || 'libraryId_loclibrary_fkey' || i; END LOOP; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ DECLARE version TEXT; i INT; BEGIN SELECT jsonb->>'rmbVersion' INTO version FROM rmb_internal; IF version !~ '^(\d\.|1\d\.|2\d\.|30\.0\.)' THEN RETURN; END IF; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE location DROP CONSTRAINT IF EXISTS ' || 'institutionId_locinstitution_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE location DROP CONSTRAINT IF EXISTS ' || 'campusId_loccampus_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE location DROP CONSTRAINT IF EXISTS ' || 'libraryId_loclibrary_fkey' || i; END LOOP; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.location_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.location_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_location_md_trigger ON test_tenant_mod_inventory_storage.location CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_location_md_trigger" for relation "test_tenant_mod_inventory_storage.location" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_location_md_trigger ON test_tenant_mod_inventory_storage.location CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_location_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.location FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.location_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_location_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.location FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.location_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_location_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_location_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_location_md_json_trigger ON test_tenant_mod_inventory_storage.location CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_location_md_json_trigger" for relation "test_tenant_mod_inventory_storage.location" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_location_md_json_trigger ON test_tenant_mod_inventory_storage.location CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_location_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.location FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_location_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_location_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.location FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_location_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_location_ol_version_trigger ON test_tenant_mod_inventory_storage.location CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_location_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.location" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_location_ol_version_trigger ON test_tenant_mod_inventory_storage.location CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.location_set_ol_version() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.location_set_ol_version() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.location_set_ol_version() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.service_point ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.service_point ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_service_point ON test_tenant_mod_inventory_storage.service_point CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_service_point" for relation "test_tenant_mod_inventory_storage.service_point" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_service_point ON test_tenant_mod_inventory_storage.service_point CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.service_point CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.service_point" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.service_point CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.service_point FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.service_point FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.service_point ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.service_point ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'service_point', 'service_point_pickupLocation_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS service_point_pickupLocation_idx ON test_tenant_mod_inventory_storage.service_point ' || $rmb$(left(lower(jsonb->>'pickupLocation'),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "service_point_pickuplocation_idx" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS service_point_pickupLocation_idx" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'service_point', 'service_point_pickupLocation_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS service_point_pickupLocation_idx ON test_tenant_mod_inventory_storage.service_point ' || $rmb$(left(lower(jsonb->>'pickupLocation'),600))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'service_point', 'service_point_pickupLocation_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS service_point_pickupLocation_idx ON test_tenant_mod_inventory_storage.service_point ' || $rmb$(left(lower(jsonb->>'pickupLocation'),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'service_point', 'service_point_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS service_point_name_idx_unique ON test_tenant_mod_inventory_storage.service_point ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "service_point_name_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS service_point_name_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'service_point', 'service_point_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS service_point_name_idx_unique ON test_tenant_mod_inventory_storage.service_point ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'service_point', 'service_point_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS service_point_name_idx_unique ON test_tenant_mod_inventory_storage.service_point ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'service_point', 'service_point_code_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS service_point_code_idx_unique ON test_tenant_mod_inventory_storage.service_point ' || $rmb$(lower(f_unaccent(jsonb->>'code')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "service_point_code_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS service_point_code_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'service_point', 'service_point_code_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS service_point_code_idx_unique ON test_tenant_mod_inventory_storage.service_point ' || $rmb$(lower(f_unaccent(jsonb->>'code')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'service_point', 'service_point_code_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS service_point_code_idx_unique ON test_tenant_mod_inventory_storage.service_point ' || $rmb$(lower(f_unaccent(jsonb->>'code')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_service_point_references ON test_tenant_mod_inventory_storage.service_point CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_service_point_references" for relation "test_tenant_mod_inventory_storage.service_point" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_service_point_references ON test_tenant_mod_inventory_storage.service_point CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_service_point_references(); 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.update_service_point_references() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_service_point_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.service_point_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.service_point_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_service_point_md_trigger ON test_tenant_mod_inventory_storage.service_point CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_service_point_md_trigger" for relation "test_tenant_mod_inventory_storage.service_point" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_service_point_md_trigger ON test_tenant_mod_inventory_storage.service_point CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_service_point_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.service_point FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.service_point_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_service_point_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.service_point FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.service_point_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_service_point_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_service_point_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_service_point_md_json_trigger ON test_tenant_mod_inventory_storage.service_point CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_service_point_md_json_trigger" for relation "test_tenant_mod_inventory_storage.service_point" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_service_point_md_json_trigger ON test_tenant_mod_inventory_storage.service_point CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_service_point_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.service_point FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_service_point_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_service_point_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.service_point FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_service_point_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_service_point_ol_version_trigger ON test_tenant_mod_inventory_storage.service_point CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_service_point_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.service_point" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_service_point_ol_version_trigger ON test_tenant_mod_inventory_storage.service_point CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.service_point_set_ol_version() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.service_point_set_ol_version() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.service_point_set_ol_version() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.service_point_user ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.service_point_user ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_service_point_user ON test_tenant_mod_inventory_storage.service_point_user CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_service_point_user" for relation "test_tenant_mod_inventory_storage.service_point_user" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_service_point_user ON test_tenant_mod_inventory_storage.service_point_user CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.service_point_user CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.service_point_user" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.service_point_user CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.service_point_user FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.service_point_user FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.service_point_user ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.service_point_user ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'service_point_user', 'service_point_user_userId_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS service_point_user_userId_idx_unique ON test_tenant_mod_inventory_storage.service_point_user ' || $rmb$(lower(f_unaccent(jsonb->>'userId')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "service_point_user_userid_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS service_point_user_userId_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'service_point_user', 'service_point_user_userId_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS service_point_user_userId_idx_unique ON test_tenant_mod_inventory_storage.service_point_user ' || $rmb$(lower(f_unaccent(jsonb->>'userId')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'service_point_user', 'service_point_user_userId_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS service_point_user_userId_idx_unique ON test_tenant_mod_inventory_storage.service_point_user ' || $rmb$(lower(f_unaccent(jsonb->>'userId')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.service_point_user ADD COLUMN IF NOT EXISTS defaultServicePointId UUID; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.service_point_user ADD COLUMN IF NOT EXISTS defaultServicePointId UUID; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ BEGIN BEGIN ALTER TABLE service_point_user ADD CONSTRAINT defaultServicePointId_service_point_fkey FOREIGN KEY (defaultServicePointId) REFERENCES service_point; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ BEGIN BEGIN ALTER TABLE service_point_user ADD CONSTRAINT defaultServicePointId_service_point_fkey FOREIGN KEY (defaultServicePointId) REFERENCES service_point; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE INDEX IF NOT EXISTS service_point_user_defaultServicePointId_idx ON test_tenant_mod_inventory_storage.service_point_user (defaultServicePointId); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE INDEX IF NOT EXISTS service_point_user_defaultServicePointId_idx ON test_tenant_mod_inventory_storage.service_point_user (defaultServicePointId); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} INSERT INTO rmb_internal_analyze VALUES ('service_point_user'); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed INSERT INTO rmb_internal_analyze VALUES ('service_point_user'); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.update_service_point_user_references() RETURNS TRIGGER AS $$ BEGIN NEW.defaultServicePointId = (NEW.jsonb->>'defaultServicePointId'); RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.update_service_point_user_references() RETURNS TRIGGER AS $$ BEGIN NEW.defaultServicePointId = (NEW.jsonb->>'defaultServicePointId'); RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_service_point_user_references ON test_tenant_mod_inventory_storage.service_point_user CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_service_point_user_references" for relation "test_tenant_mod_inventory_storage.service_point_user" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_service_point_user_references ON test_tenant_mod_inventory_storage.service_point_user CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER update_service_point_user_references BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.service_point_user FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.update_service_point_user_references(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER update_service_point_user_references BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.service_point_user FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.update_service_point_user_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ DECLARE version TEXT; i INT; BEGIN SELECT jsonb->>'rmbVersion' INTO version FROM rmb_internal; IF version !~ '^(\d\.|1\d\.|2\d\.|30\.0\.)' THEN RETURN; END IF; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE service_point_user DROP CONSTRAINT IF EXISTS ' || 'defaultServicePointId_service_point_fkey' || i; END LOOP; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ DECLARE version TEXT; i INT; BEGIN SELECT jsonb->>'rmbVersion' INTO version FROM rmb_internal; IF version !~ '^(\d\.|1\d\.|2\d\.|30\.0\.)' THEN RETURN; END IF; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE service_point_user DROP CONSTRAINT IF EXISTS ' || 'defaultServicePointId_service_point_fkey' || i; END LOOP; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.service_point_user_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.service_point_user_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_service_point_user_md_trigger ON test_tenant_mod_inventory_storage.service_point_user CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_service_point_user_md_trigger" for relation "test_tenant_mod_inventory_storage.service_point_user" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_service_point_user_md_trigger ON test_tenant_mod_inventory_storage.service_point_user CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_service_point_user_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.service_point_user FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.service_point_user_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_service_point_user_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.service_point_user FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.service_point_user_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_service_point_user_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_service_point_user_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_service_point_user_md_json_trigger ON test_tenant_mod_inventory_storage.service_point_user CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_service_point_user_md_json_trigger" for relation "test_tenant_mod_inventory_storage.service_point_user" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_service_point_user_md_json_trigger ON test_tenant_mod_inventory_storage.service_point_user CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_service_point_user_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.service_point_user FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_service_point_user_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_service_point_user_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.service_point_user FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_service_point_user_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_service_point_user_ol_version_trigger ON test_tenant_mod_inventory_storage.service_point_user CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_service_point_user_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.service_point_user" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_service_point_user_ol_version_trigger ON test_tenant_mod_inventory_storage.service_point_user CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.service_point_user_set_ol_version() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.service_point_user_set_ol_version() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.service_point_user_set_ol_version() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.identifier_type ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.identifier_type ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_identifier_type ON test_tenant_mod_inventory_storage.identifier_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_identifier_type" for relation "test_tenant_mod_inventory_storage.identifier_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_identifier_type ON test_tenant_mod_inventory_storage.identifier_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.identifier_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.identifier_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.identifier_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.identifier_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.identifier_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.identifier_type ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.identifier_type ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'identifier_type', 'identifier_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS identifier_type_name_idx_unique ON test_tenant_mod_inventory_storage.identifier_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "identifier_type_name_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS identifier_type_name_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'identifier_type', 'identifier_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS identifier_type_name_idx_unique ON test_tenant_mod_inventory_storage.identifier_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'identifier_type', 'identifier_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS identifier_type_name_idx_unique ON test_tenant_mod_inventory_storage.identifier_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_identifier_type_references ON test_tenant_mod_inventory_storage.identifier_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_identifier_type_references" for relation "test_tenant_mod_inventory_storage.identifier_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_identifier_type_references ON test_tenant_mod_inventory_storage.identifier_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_identifier_type_references(); 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.update_identifier_type_references() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_identifier_type_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.identifier_type_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.identifier_type_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_identifier_type_md_trigger ON test_tenant_mod_inventory_storage.identifier_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_identifier_type_md_trigger" for relation "test_tenant_mod_inventory_storage.identifier_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_identifier_type_md_trigger ON test_tenant_mod_inventory_storage.identifier_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_identifier_type_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.identifier_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.identifier_type_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_identifier_type_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.identifier_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.identifier_type_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_identifier_type_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_identifier_type_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_identifier_type_md_json_trigger ON test_tenant_mod_inventory_storage.identifier_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_identifier_type_md_json_trigger" for relation "test_tenant_mod_inventory_storage.identifier_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_identifier_type_md_json_trigger ON test_tenant_mod_inventory_storage.identifier_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_identifier_type_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.identifier_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_identifier_type_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_identifier_type_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.identifier_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_identifier_type_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_identifier_type_ol_version_trigger ON test_tenant_mod_inventory_storage.identifier_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_identifier_type_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.identifier_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_identifier_type_ol_version_trigger ON test_tenant_mod_inventory_storage.identifier_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.identifier_type_set_ol_version() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.identifier_type_set_ol_version() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.identifier_type_set_ol_version() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.instance_relationship_type ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.instance_relationship_type ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_instance_relationship_type ON test_tenant_mod_inventory_storage.instance_relationship_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_instance_relationship_type" for relation "test_tenant_mod_inventory_storage.instance_relationship_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_instance_relationship_type ON test_tenant_mod_inventory_storage.instance_relationship_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.instance_relationship_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.instance_relationship_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.instance_relationship_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.instance_relationship_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.instance_relationship_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.instance_relationship_type ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.instance_relationship_type ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance_relationship_type', 'instance_relationship_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_relationship_type_name_idx_unique ON test_tenant_mod_inventory_storage.instance_relationship_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_relationship_type_name_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_relationship_type_name_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance_relationship_type', 'instance_relationship_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_relationship_type_name_idx_unique ON test_tenant_mod_inventory_storage.instance_relationship_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance_relationship_type', 'instance_relationship_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_relationship_type_name_idx_unique ON test_tenant_mod_inventory_storage.instance_relationship_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_instance_relationship_type_references ON test_tenant_mod_inventory_storage.instance_relationship_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_instance_relationship_type_references" for relation "test_tenant_mod_inventory_storage.instance_relationship_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_instance_relationship_type_references ON test_tenant_mod_inventory_storage.instance_relationship_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_instance_relationship_type_references(); 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.update_instance_relationship_type_references() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_instance_relationship_type_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.instance_relationship_type_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.instance_relationship_type_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_instance_relationship_type_md_trigger ON test_tenant_mod_inventory_storage.instance_relationship_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_instance_relationship_type_md_trigger" for relation "test_tenant_mod_inventory_storage.instance_relationship_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_instance_relationship_type_md_trigger ON test_tenant_mod_inventory_storage.instance_relationship_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_instance_relationship_type_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.instance_relationship_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.instance_relationship_type_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_instance_relationship_type_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.instance_relationship_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.instance_relationship_type_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_instance_relationship_type_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_instance_relationship_type_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_instance_relationship_type_md_json_trigger ON test_tenant_mod_inventory_storage.instance_relationship_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_instance_relationship_type_md_json_trigger" for relation "test_tenant_mod_inventory_storage.instance_relationship_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_instance_relationship_type_md_json_trigger ON test_tenant_mod_inventory_storage.instance_relationship_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_instance_relationship_type_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.instance_relationship_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_instance_relationship_type_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_instance_relationship_type_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.instance_relationship_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_instance_relationship_type_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_instance_relationship_type_ol_version_trigger ON test_tenant_mod_inventory_storage.instance_relationship_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_instance_relationship_type_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.instance_relationship_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_instance_relationship_type_ol_version_trigger ON test_tenant_mod_inventory_storage.instance_relationship_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.instance_relationship_type_set_ol_version() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.instance_relationship_type_set_ol_version() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.instance_relationship_type_set_ol_version() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.contributor_type ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.contributor_type ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_contributor_type ON test_tenant_mod_inventory_storage.contributor_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_contributor_type" for relation "test_tenant_mod_inventory_storage.contributor_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_contributor_type ON test_tenant_mod_inventory_storage.contributor_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.contributor_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.contributor_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.contributor_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.contributor_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.contributor_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.contributor_type DROP COLUMN IF EXISTS creation_date CASCADE, DROP COLUMN IF EXISTS created_by CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='column "creation_date" of relation "contributor_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='tablecmds.c', line='7343', routine='ATExecDropColumn', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='column "created_by" of relation "contributor_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='tablecmds.c', line='7343', routine='ATExecDropColumn', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.contributor_type DROP COLUMN IF EXISTS creation_date CASCADE, DROP COLUMN IF EXISTS created_by CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'contributor_type', 'contributor_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS contributor_type_name_idx_unique ON test_tenant_mod_inventory_storage.contributor_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "contributor_type_name_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS contributor_type_name_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'contributor_type', 'contributor_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS contributor_type_name_idx_unique ON test_tenant_mod_inventory_storage.contributor_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'contributor_type', 'contributor_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS contributor_type_name_idx_unique ON test_tenant_mod_inventory_storage.contributor_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'contributor_type', 'contributor_type_code_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS contributor_type_code_idx_unique ON test_tenant_mod_inventory_storage.contributor_type ' || $rmb$(lower(f_unaccent(jsonb->>'code')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "contributor_type_code_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS contributor_type_code_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'contributor_type', 'contributor_type_code_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS contributor_type_code_idx_unique ON test_tenant_mod_inventory_storage.contributor_type ' || $rmb$(lower(f_unaccent(jsonb->>'code')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'contributor_type', 'contributor_type_code_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS contributor_type_code_idx_unique ON test_tenant_mod_inventory_storage.contributor_type ' || $rmb$(lower(f_unaccent(jsonb->>'code')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_contributor_type_references ON test_tenant_mod_inventory_storage.contributor_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_contributor_type_references" for relation "test_tenant_mod_inventory_storage.contributor_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_contributor_type_references ON test_tenant_mod_inventory_storage.contributor_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_contributor_type_references(); 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.update_contributor_type_references() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_contributor_type_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.contributor_type_set_md() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.contributor_type_set_md() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.contributor_type_set_md() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_contributor_type_md_trigger ON test_tenant_mod_inventory_storage.contributor_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_contributor_type_md_trigger" for relation "test_tenant_mod_inventory_storage.contributor_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_contributor_type_md_trigger ON test_tenant_mod_inventory_storage.contributor_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.set_contributor_type_md_json() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.set_contributor_type_md_json() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.set_contributor_type_md_json() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_contributor_type_md_json_trigger ON test_tenant_mod_inventory_storage.contributor_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_contributor_type_md_json_trigger" for relation "test_tenant_mod_inventory_storage.contributor_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_contributor_type_md_json_trigger ON test_tenant_mod_inventory_storage.contributor_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_contributor_type_ol_version_trigger ON test_tenant_mod_inventory_storage.contributor_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_contributor_type_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.contributor_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_contributor_type_ol_version_trigger ON test_tenant_mod_inventory_storage.contributor_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.contributor_type_set_ol_version() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.contributor_type_set_ol_version() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.contributor_type_set_ol_version() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.contributor_name_type ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.contributor_name_type ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_contributor_name_type ON test_tenant_mod_inventory_storage.contributor_name_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_contributor_name_type" for relation "test_tenant_mod_inventory_storage.contributor_name_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_contributor_name_type ON test_tenant_mod_inventory_storage.contributor_name_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.contributor_name_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.contributor_name_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.contributor_name_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.contributor_name_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.contributor_name_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.contributor_name_type ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.contributor_name_type ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'contributor_name_type', 'contributor_name_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS contributor_name_type_name_idx_unique ON test_tenant_mod_inventory_storage.contributor_name_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "contributor_name_type_name_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS contributor_name_type_name_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'contributor_name_type', 'contributor_name_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS contributor_name_type_name_idx_unique ON test_tenant_mod_inventory_storage.contributor_name_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'contributor_name_type', 'contributor_name_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS contributor_name_type_name_idx_unique ON test_tenant_mod_inventory_storage.contributor_name_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_contributor_name_type_references ON test_tenant_mod_inventory_storage.contributor_name_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_contributor_name_type_references" for relation "test_tenant_mod_inventory_storage.contributor_name_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_contributor_name_type_references ON test_tenant_mod_inventory_storage.contributor_name_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_contributor_name_type_references(); 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.update_contributor_name_type_references() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_contributor_name_type_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.contributor_name_type_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.contributor_name_type_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_contributor_name_type_md_trigger ON test_tenant_mod_inventory_storage.contributor_name_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_contributor_name_type_md_trigger" for relation "test_tenant_mod_inventory_storage.contributor_name_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_contributor_name_type_md_trigger ON test_tenant_mod_inventory_storage.contributor_name_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_contributor_name_type_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.contributor_name_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.contributor_name_type_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_contributor_name_type_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.contributor_name_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.contributor_name_type_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_contributor_name_type_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_contributor_name_type_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_contributor_name_type_md_json_trigger ON test_tenant_mod_inventory_storage.contributor_name_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_contributor_name_type_md_json_trigger" for relation "test_tenant_mod_inventory_storage.contributor_name_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_contributor_name_type_md_json_trigger ON test_tenant_mod_inventory_storage.contributor_name_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_contributor_name_type_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.contributor_name_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_contributor_name_type_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_contributor_name_type_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.contributor_name_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_contributor_name_type_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_contributor_name_type_ol_version_trigger ON test_tenant_mod_inventory_storage.contributor_name_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_contributor_name_type_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.contributor_name_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_contributor_name_type_ol_version_trigger ON test_tenant_mod_inventory_storage.contributor_name_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.contributor_name_type_set_ol_version() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.contributor_name_type_set_ol_version() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.contributor_name_type_set_ol_version() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.instance_type ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.instance_type ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_instance_type ON test_tenant_mod_inventory_storage.instance_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_instance_type" for relation "test_tenant_mod_inventory_storage.instance_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_instance_type ON test_tenant_mod_inventory_storage.instance_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.instance_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.instance_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.instance_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.instance_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.instance_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.instance_type DROP COLUMN IF EXISTS creation_date CASCADE, DROP COLUMN IF EXISTS created_by CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='column "creation_date" of relation "instance_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='tablecmds.c', line='7343', routine='ATExecDropColumn', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='column "created_by" of relation "instance_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='tablecmds.c', line='7343', routine='ATExecDropColumn', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.instance_type DROP COLUMN IF EXISTS creation_date CASCADE, DROP COLUMN IF EXISTS created_by CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance_type', 'instance_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_type_name_idx_unique ON test_tenant_mod_inventory_storage.instance_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_type_name_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_type_name_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance_type', 'instance_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_type_name_idx_unique ON test_tenant_mod_inventory_storage.instance_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance_type', 'instance_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_type_name_idx_unique ON test_tenant_mod_inventory_storage.instance_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance_type', 'instance_type_code_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_type_code_idx_unique ON test_tenant_mod_inventory_storage.instance_type ' || $rmb$(lower(f_unaccent(jsonb->>'code')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_type_code_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_type_code_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance_type', 'instance_type_code_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_type_code_idx_unique ON test_tenant_mod_inventory_storage.instance_type ' || $rmb$(lower(f_unaccent(jsonb->>'code')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance_type', 'instance_type_code_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_type_code_idx_unique ON test_tenant_mod_inventory_storage.instance_type ' || $rmb$(lower(f_unaccent(jsonb->>'code')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_instance_type_references ON test_tenant_mod_inventory_storage.instance_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_instance_type_references" for relation "test_tenant_mod_inventory_storage.instance_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_instance_type_references ON test_tenant_mod_inventory_storage.instance_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_instance_type_references(); 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.update_instance_type_references() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_instance_type_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.instance_type_set_md() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.instance_type_set_md() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.instance_type_set_md() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_instance_type_md_trigger ON test_tenant_mod_inventory_storage.instance_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_instance_type_md_trigger" for relation "test_tenant_mod_inventory_storage.instance_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_instance_type_md_trigger ON test_tenant_mod_inventory_storage.instance_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.set_instance_type_md_json() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.set_instance_type_md_json() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.set_instance_type_md_json() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_instance_type_md_json_trigger ON test_tenant_mod_inventory_storage.instance_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_instance_type_md_json_trigger" for relation "test_tenant_mod_inventory_storage.instance_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_instance_type_md_json_trigger ON test_tenant_mod_inventory_storage.instance_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_instance_type_ol_version_trigger ON test_tenant_mod_inventory_storage.instance_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_instance_type_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.instance_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_instance_type_ol_version_trigger ON test_tenant_mod_inventory_storage.instance_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.instance_type_set_ol_version() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.instance_type_set_ol_version() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.instance_type_set_ol_version() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.instance_format ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.instance_format ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_instance_format ON test_tenant_mod_inventory_storage.instance_format CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_instance_format" for relation "test_tenant_mod_inventory_storage.instance_format" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_instance_format ON test_tenant_mod_inventory_storage.instance_format CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.instance_format CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.instance_format" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.instance_format CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.instance_format FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.instance_format FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.instance_format DROP COLUMN IF EXISTS creation_date CASCADE, DROP COLUMN IF EXISTS created_by CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='column "creation_date" of relation "instance_format" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='tablecmds.c', line='7343', routine='ATExecDropColumn', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='column "created_by" of relation "instance_format" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='tablecmds.c', line='7343', routine='ATExecDropColumn', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.instance_format DROP COLUMN IF EXISTS creation_date CASCADE, DROP COLUMN IF EXISTS created_by CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance_format', 'instance_format_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_format_name_idx_unique ON test_tenant_mod_inventory_storage.instance_format ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_format_name_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_format_name_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance_format', 'instance_format_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_format_name_idx_unique ON test_tenant_mod_inventory_storage.instance_format ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance_format', 'instance_format_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_format_name_idx_unique ON test_tenant_mod_inventory_storage.instance_format ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance_format', 'instance_format_code_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_format_code_idx_unique ON test_tenant_mod_inventory_storage.instance_format ' || $rmb$(lower(f_unaccent(jsonb->>'code')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_format_code_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_format_code_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance_format', 'instance_format_code_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_format_code_idx_unique ON test_tenant_mod_inventory_storage.instance_format ' || $rmb$(lower(f_unaccent(jsonb->>'code')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance_format', 'instance_format_code_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_format_code_idx_unique ON test_tenant_mod_inventory_storage.instance_format ' || $rmb$(lower(f_unaccent(jsonb->>'code')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_instance_format_references ON test_tenant_mod_inventory_storage.instance_format CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_instance_format_references" for relation "test_tenant_mod_inventory_storage.instance_format" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_instance_format_references ON test_tenant_mod_inventory_storage.instance_format CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_instance_format_references(); 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.update_instance_format_references() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_instance_format_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.instance_format_set_md() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.instance_format_set_md() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.instance_format_set_md() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_instance_format_md_trigger ON test_tenant_mod_inventory_storage.instance_format CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_instance_format_md_trigger" for relation "test_tenant_mod_inventory_storage.instance_format" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_instance_format_md_trigger ON test_tenant_mod_inventory_storage.instance_format CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.set_instance_format_md_json() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.set_instance_format_md_json() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.set_instance_format_md_json() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_instance_format_md_json_trigger ON test_tenant_mod_inventory_storage.instance_format CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_instance_format_md_json_trigger" for relation "test_tenant_mod_inventory_storage.instance_format" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_instance_format_md_json_trigger ON test_tenant_mod_inventory_storage.instance_format CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_instance_format_ol_version_trigger ON test_tenant_mod_inventory_storage.instance_format CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_instance_format_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.instance_format" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_instance_format_ol_version_trigger ON test_tenant_mod_inventory_storage.instance_format CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.instance_format_set_ol_version() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.instance_format_set_ol_version() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.instance_format_set_ol_version() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.nature_of_content_term ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.nature_of_content_term ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_nature_of_content_term ON test_tenant_mod_inventory_storage.nature_of_content_term CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_nature_of_content_term" for relation "test_tenant_mod_inventory_storage.nature_of_content_term" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_nature_of_content_term ON test_tenant_mod_inventory_storage.nature_of_content_term CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.nature_of_content_term CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.nature_of_content_term" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.nature_of_content_term CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.nature_of_content_term FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.nature_of_content_term FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.nature_of_content_term ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.nature_of_content_term ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'nature_of_content_term', 'nature_of_content_term_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS nature_of_content_term_name_idx_unique ON test_tenant_mod_inventory_storage.nature_of_content_term ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "nature_of_content_term_name_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS nature_of_content_term_name_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'nature_of_content_term', 'nature_of_content_term_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS nature_of_content_term_name_idx_unique ON test_tenant_mod_inventory_storage.nature_of_content_term ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'nature_of_content_term', 'nature_of_content_term_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS nature_of_content_term_name_idx_unique ON test_tenant_mod_inventory_storage.nature_of_content_term ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_nature_of_content_term_references ON test_tenant_mod_inventory_storage.nature_of_content_term CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_nature_of_content_term_references" for relation "test_tenant_mod_inventory_storage.nature_of_content_term" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_nature_of_content_term_references ON test_tenant_mod_inventory_storage.nature_of_content_term CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_nature_of_content_term_references(); 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.update_nature_of_content_term_references() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_nature_of_content_term_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.nature_of_content_term_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.nature_of_content_term_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_nature_of_content_term_md_trigger ON test_tenant_mod_inventory_storage.nature_of_content_term CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_nature_of_content_term_md_trigger" for relation "test_tenant_mod_inventory_storage.nature_of_content_term" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_nature_of_content_term_md_trigger ON test_tenant_mod_inventory_storage.nature_of_content_term CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_nature_of_content_term_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.nature_of_content_term FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.nature_of_content_term_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_nature_of_content_term_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.nature_of_content_term FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.nature_of_content_term_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_nature_of_content_term_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_nature_of_content_term_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_nature_of_content_term_md_json_trigger ON test_tenant_mod_inventory_storage.nature_of_content_term CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_nature_of_content_term_md_json_trigger" for relation "test_tenant_mod_inventory_storage.nature_of_content_term" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_nature_of_content_term_md_json_trigger ON test_tenant_mod_inventory_storage.nature_of_content_term CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_nature_of_content_term_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.nature_of_content_term FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_nature_of_content_term_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_nature_of_content_term_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.nature_of_content_term FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_nature_of_content_term_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_nature_of_content_term_ol_version_trigger ON test_tenant_mod_inventory_storage.nature_of_content_term CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_nature_of_content_term_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.nature_of_content_term" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_nature_of_content_term_ol_version_trigger ON test_tenant_mod_inventory_storage.nature_of_content_term CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.nature_of_content_term_set_ol_version() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.nature_of_content_term_set_ol_version() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.nature_of_content_term_set_ol_version() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.classification_type ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.classification_type ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_classification_type ON test_tenant_mod_inventory_storage.classification_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_classification_type" for relation "test_tenant_mod_inventory_storage.classification_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_classification_type ON test_tenant_mod_inventory_storage.classification_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.classification_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.classification_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.classification_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.classification_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.classification_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.classification_type ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.classification_type ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'classification_type', 'classification_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS classification_type_name_idx_unique ON test_tenant_mod_inventory_storage.classification_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "classification_type_name_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS classification_type_name_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'classification_type', 'classification_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS classification_type_name_idx_unique ON test_tenant_mod_inventory_storage.classification_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'classification_type', 'classification_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS classification_type_name_idx_unique ON test_tenant_mod_inventory_storage.classification_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_classification_type_references ON test_tenant_mod_inventory_storage.classification_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_classification_type_references" for relation "test_tenant_mod_inventory_storage.classification_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_classification_type_references ON test_tenant_mod_inventory_storage.classification_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_classification_type_references(); 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.update_classification_type_references() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_classification_type_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.classification_type_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.classification_type_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_classification_type_md_trigger ON test_tenant_mod_inventory_storage.classification_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_classification_type_md_trigger" for relation "test_tenant_mod_inventory_storage.classification_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_classification_type_md_trigger ON test_tenant_mod_inventory_storage.classification_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_classification_type_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.classification_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.classification_type_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_classification_type_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.classification_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.classification_type_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_classification_type_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_classification_type_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_classification_type_md_json_trigger ON test_tenant_mod_inventory_storage.classification_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_classification_type_md_json_trigger" for relation "test_tenant_mod_inventory_storage.classification_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_classification_type_md_json_trigger ON test_tenant_mod_inventory_storage.classification_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_classification_type_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.classification_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_classification_type_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_classification_type_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.classification_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_classification_type_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_classification_type_ol_version_trigger ON test_tenant_mod_inventory_storage.classification_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_classification_type_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.classification_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_classification_type_ol_version_trigger ON test_tenant_mod_inventory_storage.classification_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.classification_type_set_ol_version() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.classification_type_set_ol_version() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.classification_type_set_ol_version() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.electronic_access_relationship ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.electronic_access_relationship ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_electronic_access_relationship ON test_tenant_mod_inventory_storage.electronic_access_relationship CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_electronic_access_relationship" for relation "test_tenant_mod_inventory_storage.electronic_access_relationship" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_electronic_access_relationship ON test_tenant_mod_inventory_storage.electronic_access_relationship CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.electronic_access_relationship CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.electronic_access_relationship" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.electronic_access_relationship CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.electronic_access_relationship FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.electronic_access_relationship FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.electronic_access_relationship ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.electronic_access_relationship ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'electronic_access_relationship', 'electronic_access_relationship_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS electronic_access_relationship_name_idx_unique ON test_tenant_mod_inventory_storage.electronic_access_relationship ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "electronic_access_relationship_name_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS electronic_access_relationship_name_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'electronic_access_relationship', 'electronic_access_relationship_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS electronic_access_relationship_name_idx_unique ON test_tenant_mod_inventory_storage.electronic_access_relationship ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'electronic_access_relationship', 'electronic_access_relationship_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS electronic_access_relationship_name_idx_unique ON test_tenant_mod_inventory_storage.electronic_access_relationship ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_electronic_access_relationship_references ON test_tenant_mod_inventory_storage.electronic_access_relationship CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_electronic_access_relationship_references" for relation "test_tenant_mod_inventory_storage.electronic_access_relationship" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_electronic_access_relationship_references ON test_tenant_mod_inventory_storage.electronic_access_relationship CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_electronic_access_relationship_references(); 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.update_electronic_access_relationship_references() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_electronic_access_relationship_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.electronic_access_relationship_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.electronic_access_relationship_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_electronic_access_relationship_md_trigger ON test_tenant_mod_inventory_storage.electronic_access_relationship CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_electronic_access_relationship_md_trigger" for relation "test_tenant_mod_inventory_storage.electronic_access_relationship" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_electronic_access_relationship_md_trigger ON test_tenant_mod_inventory_storage.electronic_access_relationship CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_electronic_access_relationship_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.electronic_access_relationship FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.electronic_access_relationship_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_electronic_access_relationship_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.electronic_access_relationship FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.electronic_access_relationship_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_electronic_access_relationship_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_electronic_access_relationship_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_electronic_access_relationship_md_json_trigger ON test_tenant_mod_inventory_storage.electronic_access_relationship CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_electronic_access_relationship_md_json_trigger" for relation "test_tenant_mod_inventory_storage.electronic_access_relationship" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_electronic_access_relationship_md_json_trigger ON test_tenant_mod_inventory_storage.electronic_access_relationship CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_electronic_access_relationship_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.electronic_access_relationship FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_electronic_access_relationship_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_electronic_access_relationship_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.electronic_access_relationship FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_electronic_access_relationship_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_electronic_access_relationship_ol_version_trigger ON test_tenant_mod_inventory_storage.electronic_access_relationship CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_electronic_access_relationship_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.electronic_access_relationship" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_electronic_access_relationship_ol_version_trigger ON test_tenant_mod_inventory_storage.electronic_access_relationship CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.electronic_access_relationship_set_ol_version() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.electronic_access_relationship_set_ol_version() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.electronic_access_relationship_set_ol_version() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.statistical_code_type ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.statistical_code_type ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_statistical_code_type ON test_tenant_mod_inventory_storage.statistical_code_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_statistical_code_type" for relation "test_tenant_mod_inventory_storage.statistical_code_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_statistical_code_type ON test_tenant_mod_inventory_storage.statistical_code_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.statistical_code_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.statistical_code_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.statistical_code_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.statistical_code_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.statistical_code_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.statistical_code_type ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.statistical_code_type ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'statistical_code_type', 'statistical_code_type_code_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS statistical_code_type_code_idx_unique ON test_tenant_mod_inventory_storage.statistical_code_type ' || $rmb$(lower(f_unaccent(jsonb->>'code')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "statistical_code_type_code_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS statistical_code_type_code_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'statistical_code_type', 'statistical_code_type_code_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS statistical_code_type_code_idx_unique ON test_tenant_mod_inventory_storage.statistical_code_type ' || $rmb$(lower(f_unaccent(jsonb->>'code')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'statistical_code_type', 'statistical_code_type_code_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS statistical_code_type_code_idx_unique ON test_tenant_mod_inventory_storage.statistical_code_type ' || $rmb$(lower(f_unaccent(jsonb->>'code')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_statistical_code_type_references ON test_tenant_mod_inventory_storage.statistical_code_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_statistical_code_type_references" for relation "test_tenant_mod_inventory_storage.statistical_code_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_statistical_code_type_references ON test_tenant_mod_inventory_storage.statistical_code_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_statistical_code_type_references(); 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.update_statistical_code_type_references() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_statistical_code_type_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.statistical_code_type_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.statistical_code_type_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_statistical_code_type_md_trigger ON test_tenant_mod_inventory_storage.statistical_code_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_statistical_code_type_md_trigger" for relation "test_tenant_mod_inventory_storage.statistical_code_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_statistical_code_type_md_trigger ON test_tenant_mod_inventory_storage.statistical_code_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_statistical_code_type_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.statistical_code_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.statistical_code_type_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_statistical_code_type_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.statistical_code_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.statistical_code_type_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_statistical_code_type_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_statistical_code_type_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_statistical_code_type_md_json_trigger ON test_tenant_mod_inventory_storage.statistical_code_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_statistical_code_type_md_json_trigger" for relation "test_tenant_mod_inventory_storage.statistical_code_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_statistical_code_type_md_json_trigger ON test_tenant_mod_inventory_storage.statistical_code_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_statistical_code_type_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.statistical_code_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_statistical_code_type_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_statistical_code_type_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.statistical_code_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_statistical_code_type_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_statistical_code_type_ol_version_trigger ON test_tenant_mod_inventory_storage.statistical_code_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_statistical_code_type_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.statistical_code_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_statistical_code_type_ol_version_trigger ON test_tenant_mod_inventory_storage.statistical_code_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.statistical_code_type_set_ol_version() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.statistical_code_type_set_ol_version() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.statistical_code_type_set_ol_version() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.statistical_code ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.statistical_code ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_statistical_code ON test_tenant_mod_inventory_storage.statistical_code CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_statistical_code" for relation "test_tenant_mod_inventory_storage.statistical_code" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_statistical_code ON test_tenant_mod_inventory_storage.statistical_code CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.statistical_code CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.statistical_code" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.statistical_code CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.statistical_code FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.statistical_code FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.statistical_code ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.statistical_code ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'statistical_code', 'statistical_code_code_statisticalCodeTypeId_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS statistical_code_code_statisticalCodeTypeId_idx_unique ON test_tenant_mod_inventory_storage.statistical_code ' || $rmb$(lower(f_unaccent(jsonb->>'code')) , lower(f_unaccent(jsonb->>'statisticalCodeTypeId')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "statistical_code_code_statisticalcodetypeid_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS statistical_code_code_statisticalCodeTypeId_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'statistical_code', 'statistical_code_code_statisticalCodeTypeId_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS statistical_code_code_statisticalCodeTypeId_idx_unique ON test_tenant_mod_inventory_storage.statistical_code ' || $rmb$(lower(f_unaccent(jsonb->>'code')) , lower(f_unaccent(jsonb->>'statisticalCodeTypeId')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'statistical_code', 'statistical_code_code_statisticalCodeTypeId_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS statistical_code_code_statisticalCodeTypeId_idx_unique ON test_tenant_mod_inventory_storage.statistical_code ' || $rmb$(lower(f_unaccent(jsonb->>'code')) , lower(f_unaccent(jsonb->>'statisticalCodeTypeId')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'statistical_code', 'statistical_code_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS statistical_code_name_idx_unique ON test_tenant_mod_inventory_storage.statistical_code ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "statistical_code_name_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS statistical_code_name_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'statistical_code', 'statistical_code_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS statistical_code_name_idx_unique ON test_tenant_mod_inventory_storage.statistical_code ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'statistical_code', 'statistical_code_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS statistical_code_name_idx_unique ON test_tenant_mod_inventory_storage.statistical_code ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.statistical_code ADD COLUMN IF NOT EXISTS statisticalCodeTypeId UUID; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.statistical_code ADD COLUMN IF NOT EXISTS statisticalCodeTypeId UUID; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ BEGIN BEGIN ALTER TABLE statistical_code ADD CONSTRAINT statisticalCodeTypeId_statistical_code_type_fkey FOREIGN KEY (statisticalCodeTypeId) REFERENCES statistical_code_type; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ BEGIN BEGIN ALTER TABLE statistical_code ADD CONSTRAINT statisticalCodeTypeId_statistical_code_type_fkey FOREIGN KEY (statisticalCodeTypeId) REFERENCES statistical_code_type; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE INDEX IF NOT EXISTS statistical_code_statisticalCodeTypeId_idx ON test_tenant_mod_inventory_storage.statistical_code (statisticalCodeTypeId); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE INDEX IF NOT EXISTS statistical_code_statisticalCodeTypeId_idx ON test_tenant_mod_inventory_storage.statistical_code (statisticalCodeTypeId); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} INSERT INTO rmb_internal_analyze VALUES ('statistical_code'); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed INSERT INTO rmb_internal_analyze VALUES ('statistical_code'); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.update_statistical_code_references() RETURNS TRIGGER AS $$ BEGIN NEW.statisticalCodeTypeId = (NEW.jsonb->>'statisticalCodeTypeId'); RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.update_statistical_code_references() RETURNS TRIGGER AS $$ BEGIN NEW.statisticalCodeTypeId = (NEW.jsonb->>'statisticalCodeTypeId'); RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_statistical_code_references ON test_tenant_mod_inventory_storage.statistical_code CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_statistical_code_references" for relation "test_tenant_mod_inventory_storage.statistical_code" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_statistical_code_references ON test_tenant_mod_inventory_storage.statistical_code CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER update_statistical_code_references BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.statistical_code FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.update_statistical_code_references(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER update_statistical_code_references BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.statistical_code FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.update_statistical_code_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ DECLARE version TEXT; i INT; BEGIN SELECT jsonb->>'rmbVersion' INTO version FROM rmb_internal; IF version !~ '^(\d\.|1\d\.|2\d\.|30\.0\.)' THEN RETURN; END IF; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE statistical_code DROP CONSTRAINT IF EXISTS ' || 'statisticalCodeTypeId_statistical_code_type_fkey' || i; END LOOP; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ DECLARE version TEXT; i INT; BEGIN SELECT jsonb->>'rmbVersion' INTO version FROM rmb_internal; IF version !~ '^(\d\.|1\d\.|2\d\.|30\.0\.)' THEN RETURN; END IF; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE statistical_code DROP CONSTRAINT IF EXISTS ' || 'statisticalCodeTypeId_statistical_code_type_fkey' || i; END LOOP; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.statistical_code_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.statistical_code_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_statistical_code_md_trigger ON test_tenant_mod_inventory_storage.statistical_code CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_statistical_code_md_trigger" for relation "test_tenant_mod_inventory_storage.statistical_code" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_statistical_code_md_trigger ON test_tenant_mod_inventory_storage.statistical_code CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_statistical_code_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.statistical_code FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.statistical_code_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_statistical_code_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.statistical_code FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.statistical_code_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_statistical_code_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_statistical_code_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_statistical_code_md_json_trigger ON test_tenant_mod_inventory_storage.statistical_code CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_statistical_code_md_json_trigger" for relation "test_tenant_mod_inventory_storage.statistical_code" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_statistical_code_md_json_trigger ON test_tenant_mod_inventory_storage.statistical_code CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_statistical_code_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.statistical_code FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_statistical_code_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_statistical_code_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.statistical_code FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_statistical_code_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_statistical_code_ol_version_trigger ON test_tenant_mod_inventory_storage.statistical_code CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_statistical_code_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.statistical_code" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_statistical_code_ol_version_trigger ON test_tenant_mod_inventory_storage.statistical_code CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.statistical_code_set_ol_version() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.statistical_code_set_ol_version() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.statistical_code_set_ol_version() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.instance_status ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.instance_status ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_instance_status ON test_tenant_mod_inventory_storage.instance_status CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_instance_status" for relation "test_tenant_mod_inventory_storage.instance_status" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_instance_status ON test_tenant_mod_inventory_storage.instance_status CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.instance_status CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.instance_status" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.instance_status CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.instance_status FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.instance_status FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.instance_status ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.instance_status ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance_status', 'instance_status_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_status_name_idx_unique ON test_tenant_mod_inventory_storage.instance_status ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_status_name_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_status_name_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance_status', 'instance_status_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_status_name_idx_unique ON test_tenant_mod_inventory_storage.instance_status ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance_status', 'instance_status_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_status_name_idx_unique ON test_tenant_mod_inventory_storage.instance_status ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance_status', 'instance_status_code_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_status_code_idx_unique ON test_tenant_mod_inventory_storage.instance_status ' || $rmb$(lower(f_unaccent(jsonb->>'code')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_status_code_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_status_code_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance_status', 'instance_status_code_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_status_code_idx_unique ON test_tenant_mod_inventory_storage.instance_status ' || $rmb$(lower(f_unaccent(jsonb->>'code')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance_status', 'instance_status_code_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_status_code_idx_unique ON test_tenant_mod_inventory_storage.instance_status ' || $rmb$(lower(f_unaccent(jsonb->>'code')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_instance_status_references ON test_tenant_mod_inventory_storage.instance_status CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_instance_status_references" for relation "test_tenant_mod_inventory_storage.instance_status" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_instance_status_references ON test_tenant_mod_inventory_storage.instance_status CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_instance_status_references(); 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.update_instance_status_references() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_instance_status_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.instance_status_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.instance_status_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_instance_status_md_trigger ON test_tenant_mod_inventory_storage.instance_status CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_instance_status_md_trigger" for relation "test_tenant_mod_inventory_storage.instance_status" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_instance_status_md_trigger ON test_tenant_mod_inventory_storage.instance_status CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_instance_status_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.instance_status FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.instance_status_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_instance_status_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.instance_status FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.instance_status_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_instance_status_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_instance_status_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_instance_status_md_json_trigger ON test_tenant_mod_inventory_storage.instance_status CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_instance_status_md_json_trigger" for relation "test_tenant_mod_inventory_storage.instance_status" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_instance_status_md_json_trigger ON test_tenant_mod_inventory_storage.instance_status CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_instance_status_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.instance_status FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_instance_status_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_instance_status_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.instance_status FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_instance_status_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_instance_status_ol_version_trigger ON test_tenant_mod_inventory_storage.instance_status CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_instance_status_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.instance_status" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_instance_status_ol_version_trigger ON test_tenant_mod_inventory_storage.instance_status CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.instance_status_set_ol_version() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.instance_status_set_ol_version() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.instance_status_set_ol_version() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.mode_of_issuance ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.mode_of_issuance ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_mode_of_issuance ON test_tenant_mod_inventory_storage.mode_of_issuance CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_mode_of_issuance" for relation "test_tenant_mod_inventory_storage.mode_of_issuance" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_mode_of_issuance ON test_tenant_mod_inventory_storage.mode_of_issuance CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.mode_of_issuance CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.mode_of_issuance" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.mode_of_issuance CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.mode_of_issuance FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.mode_of_issuance FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.mode_of_issuance ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.mode_of_issuance ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'mode_of_issuance', 'mode_of_issuance_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS mode_of_issuance_name_idx_unique ON test_tenant_mod_inventory_storage.mode_of_issuance ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "mode_of_issuance_name_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS mode_of_issuance_name_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'mode_of_issuance', 'mode_of_issuance_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS mode_of_issuance_name_idx_unique ON test_tenant_mod_inventory_storage.mode_of_issuance ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'mode_of_issuance', 'mode_of_issuance_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS mode_of_issuance_name_idx_unique ON test_tenant_mod_inventory_storage.mode_of_issuance ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_mode_of_issuance_references ON test_tenant_mod_inventory_storage.mode_of_issuance CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_mode_of_issuance_references" for relation "test_tenant_mod_inventory_storage.mode_of_issuance" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_mode_of_issuance_references ON test_tenant_mod_inventory_storage.mode_of_issuance CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_mode_of_issuance_references(); 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.update_mode_of_issuance_references() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_mode_of_issuance_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.mode_of_issuance_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.mode_of_issuance_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_mode_of_issuance_md_trigger ON test_tenant_mod_inventory_storage.mode_of_issuance CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_mode_of_issuance_md_trigger" for relation "test_tenant_mod_inventory_storage.mode_of_issuance" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_mode_of_issuance_md_trigger ON test_tenant_mod_inventory_storage.mode_of_issuance CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_mode_of_issuance_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.mode_of_issuance FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.mode_of_issuance_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_mode_of_issuance_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.mode_of_issuance FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.mode_of_issuance_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_mode_of_issuance_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_mode_of_issuance_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_mode_of_issuance_md_json_trigger ON test_tenant_mod_inventory_storage.mode_of_issuance CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_mode_of_issuance_md_json_trigger" for relation "test_tenant_mod_inventory_storage.mode_of_issuance" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_mode_of_issuance_md_json_trigger ON test_tenant_mod_inventory_storage.mode_of_issuance CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_mode_of_issuance_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.mode_of_issuance FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_mode_of_issuance_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_mode_of_issuance_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.mode_of_issuance FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_mode_of_issuance_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_mode_of_issuance_ol_version_trigger ON test_tenant_mod_inventory_storage.mode_of_issuance CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_mode_of_issuance_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.mode_of_issuance" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_mode_of_issuance_ol_version_trigger ON test_tenant_mod_inventory_storage.mode_of_issuance CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.mode_of_issuance_set_ol_version() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.mode_of_issuance_set_ol_version() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.mode_of_issuance_set_ol_version() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.alternative_title_type ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.alternative_title_type ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_alternative_title_type ON test_tenant_mod_inventory_storage.alternative_title_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_alternative_title_type" for relation "test_tenant_mod_inventory_storage.alternative_title_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_alternative_title_type ON test_tenant_mod_inventory_storage.alternative_title_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.alternative_title_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.alternative_title_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.alternative_title_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.alternative_title_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.alternative_title_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.alternative_title_type ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.alternative_title_type ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'alternative_title_type', 'alternative_title_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS alternative_title_type_name_idx_unique ON test_tenant_mod_inventory_storage.alternative_title_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "alternative_title_type_name_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS alternative_title_type_name_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'alternative_title_type', 'alternative_title_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS alternative_title_type_name_idx_unique ON test_tenant_mod_inventory_storage.alternative_title_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'alternative_title_type', 'alternative_title_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS alternative_title_type_name_idx_unique ON test_tenant_mod_inventory_storage.alternative_title_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_alternative_title_type_references ON test_tenant_mod_inventory_storage.alternative_title_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_alternative_title_type_references" for relation "test_tenant_mod_inventory_storage.alternative_title_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_alternative_title_type_references ON test_tenant_mod_inventory_storage.alternative_title_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_alternative_title_type_references(); 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.update_alternative_title_type_references() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_alternative_title_type_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.alternative_title_type_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.alternative_title_type_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_alternative_title_type_md_trigger ON test_tenant_mod_inventory_storage.alternative_title_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_alternative_title_type_md_trigger" for relation "test_tenant_mod_inventory_storage.alternative_title_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_alternative_title_type_md_trigger ON test_tenant_mod_inventory_storage.alternative_title_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_alternative_title_type_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.alternative_title_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.alternative_title_type_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_alternative_title_type_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.alternative_title_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.alternative_title_type_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_alternative_title_type_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_alternative_title_type_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_alternative_title_type_md_json_trigger ON test_tenant_mod_inventory_storage.alternative_title_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_alternative_title_type_md_json_trigger" for relation "test_tenant_mod_inventory_storage.alternative_title_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_alternative_title_type_md_json_trigger ON test_tenant_mod_inventory_storage.alternative_title_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_alternative_title_type_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.alternative_title_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_alternative_title_type_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_alternative_title_type_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.alternative_title_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_alternative_title_type_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_alternative_title_type_ol_version_trigger ON test_tenant_mod_inventory_storage.alternative_title_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_alternative_title_type_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.alternative_title_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_alternative_title_type_ol_version_trigger ON test_tenant_mod_inventory_storage.alternative_title_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.alternative_title_type_set_ol_version() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.alternative_title_type_set_ol_version() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.alternative_title_type_set_ol_version() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.instance ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.instance ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.audit_instance ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.audit_instance ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_instance ON test_tenant_mod_inventory_storage.instance CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_instance" for relation "test_tenant_mod_inventory_storage.instance" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_instance ON test_tenant_mod_inventory_storage.instance CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.instance CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.instance" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.instance CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.instance FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.instance FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.instance ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.instance ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_source_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_source_idx ON test_tenant_mod_inventory_storage.instance ' || $rmb$(left(lower(jsonb->>'source'),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_source_idx" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_source_idx" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance', 'instance_source_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_source_idx ON test_tenant_mod_inventory_storage.instance ' || $rmb$(left(lower(jsonb->>'source'),600))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_source_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_source_idx ON test_tenant_mod_inventory_storage.instance ' || $rmb$(left(lower(jsonb->>'source'),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_indexTitle_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_indexTitle_idx ON test_tenant_mod_inventory_storage.instance ' || $rmb$(left(lower(f_unaccent(jsonb->>'indexTitle')),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_indextitle_idx" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_indexTitle_idx" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance', 'instance_indexTitle_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_indexTitle_idx ON test_tenant_mod_inventory_storage.instance ' || $rmb$(left(lower(f_unaccent(jsonb->>'indexTitle')),600))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_indexTitle_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_indexTitle_idx ON test_tenant_mod_inventory_storage.instance ' || $rmb$(left(lower(f_unaccent(jsonb->>'indexTitle')),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_title_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_title_idx ON test_tenant_mod_inventory_storage.instance ' || $rmb$(left(lower(f_unaccent(jsonb->>'title')),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_title_idx" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_title_idx" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance', 'instance_title_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_title_idx ON test_tenant_mod_inventory_storage.instance ' || $rmb$(left(lower(f_unaccent(jsonb->>'title')),600))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_title_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_title_idx ON test_tenant_mod_inventory_storage.instance ' || $rmb$(left(lower(f_unaccent(jsonb->>'title')),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_statisticalCodeIds_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_statisticalCodeIds_idx ON test_tenant_mod_inventory_storage.instance ' || $rmb$(left(lower(jsonb->>'statisticalCodeIds'),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_statisticalcodeids_idx" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_statisticalCodeIds_idx" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance', 'instance_statisticalCodeIds_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_statisticalCodeIds_idx ON test_tenant_mod_inventory_storage.instance ' || $rmb$(left(lower(jsonb->>'statisticalCodeIds'),600))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_statisticalCodeIds_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_statisticalCodeIds_idx ON test_tenant_mod_inventory_storage.instance ' || $rmb$(left(lower(jsonb->>'statisticalCodeIds'),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_contributors_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_contributors_idx ON test_tenant_mod_inventory_storage.instance ' || $rmb$(left(lower(f_unaccent(jsonb->>'contributors')),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_contributors_idx" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_contributors_idx" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance', 'instance_contributors_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_contributors_idx ON test_tenant_mod_inventory_storage.instance ' || $rmb$(left(lower(f_unaccent(jsonb->>'contributors')),600))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_contributors_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_contributors_idx ON test_tenant_mod_inventory_storage.instance ' || $rmb$(left(lower(f_unaccent(jsonb->>'contributors')),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_publication_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_publication_idx ON test_tenant_mod_inventory_storage.instance ' || $rmb$(left(lower(f_unaccent(jsonb->>'publication')),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_publication_idx" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_publication_idx" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance', 'instance_publication_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_publication_idx ON test_tenant_mod_inventory_storage.instance ' || $rmb$(left(lower(f_unaccent(jsonb->>'publication')),600))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_publication_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_publication_idx ON test_tenant_mod_inventory_storage.instance ' || $rmb$(left(lower(f_unaccent(jsonb->>'publication')),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_staffSuppress_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_staffSuppress_idx ON test_tenant_mod_inventory_storage.instance ' || $rmb$(left(lower(jsonb->>'staffSuppress'),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_staffsuppress_idx" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_staffSuppress_idx" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance', 'instance_staffSuppress_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_staffSuppress_idx ON test_tenant_mod_inventory_storage.instance ' || $rmb$(left(lower(jsonb->>'staffSuppress'),600))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_staffSuppress_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_staffSuppress_idx ON test_tenant_mod_inventory_storage.instance ' || $rmb$(left(lower(jsonb->>'staffSuppress'),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_discoverySuppress_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_discoverySuppress_idx ON test_tenant_mod_inventory_storage.instance ' || $rmb$(left(lower(jsonb->>'discoverySuppress'),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_discoverysuppress_idx" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_discoverySuppress_idx" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance', 'instance_discoverySuppress_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_discoverySuppress_idx ON test_tenant_mod_inventory_storage.instance ' || $rmb$(left(lower(jsonb->>'discoverySuppress'),600))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_discoverySuppress_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_discoverySuppress_idx ON test_tenant_mod_inventory_storage.instance ' || $rmb$(left(lower(jsonb->>'discoverySuppress'),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_metadata_updatedDate_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_metadata_updatedDate_idx ON test_tenant_mod_inventory_storage.instance ' || $rmb$(left(lower(jsonb->'metadata'->>'updatedDate'),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_metadata_updateddate_idx" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_metadata_updatedDate_idx" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance', 'instance_metadata_updatedDate_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_metadata_updatedDate_idx ON test_tenant_mod_inventory_storage.instance ' || $rmb$(left(lower(jsonb->'metadata'->>'updatedDate'),600))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_metadata_updatedDate_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_metadata_updatedDate_idx ON test_tenant_mod_inventory_storage.instance ' || $rmb$(left(lower(jsonb->'metadata'->>'updatedDate'),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_hrid_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_hrid_idx_unique ON test_tenant_mod_inventory_storage.instance ' || $rmb$(lower(f_unaccent(jsonb->>'hrid')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_hrid_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_hrid_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance', 'instance_hrid_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_hrid_idx_unique ON test_tenant_mod_inventory_storage.instance ' || $rmb$(lower(f_unaccent(jsonb->>'hrid')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_hrid_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_hrid_idx_unique ON test_tenant_mod_inventory_storage.instance ' || $rmb$(lower(f_unaccent(jsonb->>'hrid')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_matchKey_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_matchKey_idx_unique ON test_tenant_mod_inventory_storage.instance ' || $rmb$(lower(f_unaccent(jsonb->>'matchKey')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_matchkey_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_matchKey_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance', 'instance_matchKey_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_matchKey_idx_unique ON test_tenant_mod_inventory_storage.instance ' || $rmb$(lower(f_unaccent(jsonb->>'matchKey')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_matchKey_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_matchKey_idx_unique ON test_tenant_mod_inventory_storage.instance ' || $rmb$(lower(f_unaccent(jsonb->>'matchKey')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_title_idx_gin', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_title_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$((lower(f_unaccent(jsonb->>'title'))) public.gin_trgm_ops)$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_title_idx_gin" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_title_idx_gin" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance', 'instance_title_idx_gin', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_title_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$((lower(f_unaccent(jsonb->>'title'))) public.gin_trgm_ops)$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_title_idx_gin', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_title_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$((lower(f_unaccent(jsonb->>'title'))) public.gin_trgm_ops)$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_indexTitle_idx_gin', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_indexTitle_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$((lower(f_unaccent(jsonb->>'indexTitle'))) public.gin_trgm_ops)$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_indextitle_idx_gin" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_indexTitle_idx_gin" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance', 'instance_indexTitle_idx_gin', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_indexTitle_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$((lower(f_unaccent(jsonb->>'indexTitle'))) public.gin_trgm_ops)$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_indexTitle_idx_gin', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_indexTitle_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$((lower(f_unaccent(jsonb->>'indexTitle'))) public.gin_trgm_ops)$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_contributors_idx_gin', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_contributors_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$((lower(f_unaccent(jsonb->>'contributors'))) public.gin_trgm_ops)$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_contributors_idx_gin" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_contributors_idx_gin" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance', 'instance_contributors_idx_gin', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_contributors_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$((lower(f_unaccent(jsonb->>'contributors'))) public.gin_trgm_ops)$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_contributors_idx_gin', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_contributors_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$((lower(f_unaccent(jsonb->>'contributors'))) public.gin_trgm_ops)$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_identifiers_idx_gin', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_identifiers_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$((lower(f_unaccent(jsonb->>'identifiers'))) public.gin_trgm_ops)$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_identifiers_idx_gin" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_identifiers_idx_gin" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance', 'instance_identifiers_idx_gin', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_identifiers_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$((lower(f_unaccent(jsonb->>'identifiers'))) public.gin_trgm_ops)$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_identifiers_idx_gin', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_identifiers_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$((lower(f_unaccent(jsonb->>'identifiers'))) public.gin_trgm_ops)$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_subjects_idx_gin', 'DELETE', 'CREATE INDEX IF NOT EXISTS instance_subjects_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$((lower(f_unaccent(jsonb->>'subjects'))) public.gin_trgm_ops)$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_subjects_idx_gin" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_subjects_idx_gin" PL/pgSQL function rmb_internal_index(text,text,text,text) line 10 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance', 'instance_subjects_idx_gin', 'DELETE', 'CREATE INDEX IF NOT EXISTS instance_subjects_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$((lower(f_unaccent(jsonb->>'subjects'))) public.gin_trgm_ops)$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_subjects_idx_gin', 'DELETE', 'CREATE INDEX IF NOT EXISTS instance_subjects_idx_gin ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$((lower(f_unaccent(jsonb->>'subjects'))) public.gin_trgm_ops)$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_classifications_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_classifications_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(f_unaccent(jsonb->>'classifications')) )$rmb$); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_classifications_idx_ft" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_classifications_idx_ft" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance', 'instance_classifications_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_classifications_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(f_unaccent(jsonb->>'classifications')) )$rmb$)" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_classifications_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_classifications_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(f_unaccent(jsonb->>'classifications')) )$rmb$); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_keyword_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_keyword_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(f_unaccent(concat_space_sql(instance.jsonb->>'title' , concat_array_object_values(instance.jsonb->'contributors','name') , concat_array_object_values(instance.jsonb->'identifiers','value')))) )$rmb$); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_keyword_idx_ft" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_keyword_idx_ft" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance', 'instance_keyword_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_keyword_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(f_unaccent(concat_space_sql(instance.jsonb->>'title' , concat_array_object_values(instance.jsonb->'contributors','name') , concat_array_object_values(instance.jsonb->'identifiers','value')))) )$rmb$)" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_keyword_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_keyword_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(f_unaccent(concat_space_sql(instance.jsonb->>'title' , concat_array_object_values(instance.jsonb->'contributors','name') , concat_array_object_values(instance.jsonb->'identifiers','value')))) )$rmb$); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_allTitles_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_allTitles_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(f_unaccent(concat_space_sql(instance.jsonb->>'title' , instance.jsonb->>'indexTitle' , concat_array_object_values(instance.jsonb->'alternativeTitles','alternativeTitle') , instance.jsonb->>'series'))) )$rmb$); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_alltitles_idx_ft" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_allTitles_idx_ft" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance', 'instance_allTitles_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_allTitles_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(f_unaccent(concat_space_sql(instance.jsonb->>'title' , instance.jsonb->>'indexTitle' , concat_array_object_values(instance.jsonb->'alternativeTitles','alternativeTitle') , instance.jsonb->>'series'))) )$rmb$)" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_allTitles_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_allTitles_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(f_unaccent(concat_space_sql(instance.jsonb->>'title' , instance.jsonb->>'indexTitle' , concat_array_object_values(instance.jsonb->'alternativeTitles','alternativeTitle') , instance.jsonb->>'series'))) )$rmb$); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_contributorsNames_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_contributorsNames_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(f_unaccent(concat_space_sql(concat_array_object_values(instance.jsonb->'contributors','name')))) )$rmb$); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_contributorsnames_idx_ft" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_contributorsNames_idx_ft" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance', 'instance_contributorsNames_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_contributorsNames_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(f_unaccent(concat_space_sql(concat_array_object_values(instance.jsonb->'contributors','name')))) )$rmb$)" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_contributorsNames_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_contributorsNames_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(f_unaccent(concat_space_sql(concat_array_object_values(instance.jsonb->'contributors','name')))) )$rmb$); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_title_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_title_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(f_unaccent(jsonb->>'title')) )$rmb$); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_title_idx_ft" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_title_idx_ft" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance', 'instance_title_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_title_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(f_unaccent(jsonb->>'title')) )$rmb$)" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_title_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_title_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(f_unaccent(jsonb->>'title')) )$rmb$); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_languages_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_languages_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(f_unaccent(jsonb->>'languages')) )$rmb$); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_languages_idx_ft" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_languages_idx_ft" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance', 'instance_languages_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_languages_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(f_unaccent(jsonb->>'languages')) )$rmb$)" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_languages_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_languages_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(f_unaccent(jsonb->>'languages')) )$rmb$); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_contributors_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_contributors_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(f_unaccent(jsonb->>'contributors')) )$rmb$); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_contributors_idx_ft" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_contributors_idx_ft" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance', 'instance_contributors_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_contributors_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(f_unaccent(jsonb->>'contributors')) )$rmb$)" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_contributors_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_contributors_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(f_unaccent(jsonb->>'contributors')) )$rmb$); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_identifiers_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_identifiers_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(f_unaccent(jsonb->>'identifiers')) )$rmb$); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_identifiers_idx_ft" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_identifiers_idx_ft" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance', 'instance_identifiers_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_identifiers_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(f_unaccent(jsonb->>'identifiers')) )$rmb$)" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_identifiers_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_identifiers_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(f_unaccent(jsonb->>'identifiers')) )$rmb$); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_invalidIsbn_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_invalidIsbn_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(normalize_invalid_isbns(jsonb->'identifiers')) )$rmb$); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_invalidisbn_idx_ft" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_invalidIsbn_idx_ft" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance', 'instance_invalidIsbn_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_invalidIsbn_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(normalize_invalid_isbns(jsonb->'identifiers')) )$rmb$)" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_invalidIsbn_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_invalidIsbn_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(normalize_invalid_isbns(jsonb->'identifiers')) )$rmb$); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_isbn_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_isbn_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(normalize_isbns(jsonb->'identifiers')) )$rmb$); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_isbn_idx_ft" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_isbn_idx_ft" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance', 'instance_isbn_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_isbn_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(normalize_isbns(jsonb->'identifiers')) )$rmb$)" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_isbn_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_isbn_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(normalize_isbns(jsonb->'identifiers')) )$rmb$); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_dateOfPublication_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_dateOfPublication_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(concat_array_object_values(jsonb->'publication', 'dateOfPublication')) )$rmb$); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_dateofpublication_idx_ft" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_dateOfPublication_idx_ft" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance', 'instance_dateOfPublication_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_dateOfPublication_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(concat_array_object_values(jsonb->'publication', 'dateOfPublication')) )$rmb$)" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_dateOfPublication_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_dateOfPublication_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(concat_array_object_values(jsonb->'publication', 'dateOfPublication')) )$rmb$); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_subjects_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_subjects_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(f_unaccent(jsonb->>'subjects')) )$rmb$); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_subjects_idx_ft" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_subjects_idx_ft" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance', 'instance_subjects_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_subjects_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(f_unaccent(jsonb->>'subjects')) )$rmb$)" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance', 'instance_subjects_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS instance_subjects_idx_ft ON test_tenant_mod_inventory_storage.instance USING GIN ' || $rmb$( get_tsvector(f_unaccent(jsonb->>'subjects')) )$rmb$); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.instance ADD COLUMN IF NOT EXISTS instanceStatusId UUID; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.instance ADD COLUMN IF NOT EXISTS instanceStatusId UUID; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ BEGIN BEGIN ALTER TABLE instance ADD CONSTRAINT instanceStatusId_instance_status_fkey FOREIGN KEY (instanceStatusId) REFERENCES instance_status; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ BEGIN BEGIN ALTER TABLE instance ADD CONSTRAINT instanceStatusId_instance_status_fkey FOREIGN KEY (instanceStatusId) REFERENCES instance_status; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE INDEX IF NOT EXISTS instance_instanceStatusId_idx ON test_tenant_mod_inventory_storage.instance (instanceStatusId); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE INDEX IF NOT EXISTS instance_instanceStatusId_idx ON test_tenant_mod_inventory_storage.instance (instanceStatusId); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} INSERT INTO rmb_internal_analyze VALUES ('instance'); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed INSERT INTO rmb_internal_analyze VALUES ('instance'); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.instance ADD COLUMN IF NOT EXISTS modeOfIssuanceId UUID; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.instance ADD COLUMN IF NOT EXISTS modeOfIssuanceId UUID; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ BEGIN BEGIN ALTER TABLE instance ADD CONSTRAINT modeOfIssuanceId_mode_of_issuance_fkey FOREIGN KEY (modeOfIssuanceId) REFERENCES mode_of_issuance; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ BEGIN BEGIN ALTER TABLE instance ADD CONSTRAINT modeOfIssuanceId_mode_of_issuance_fkey FOREIGN KEY (modeOfIssuanceId) REFERENCES mode_of_issuance; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE INDEX IF NOT EXISTS instance_modeOfIssuanceId_idx ON test_tenant_mod_inventory_storage.instance (modeOfIssuanceId); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE INDEX IF NOT EXISTS instance_modeOfIssuanceId_idx ON test_tenant_mod_inventory_storage.instance (modeOfIssuanceId); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} INSERT INTO rmb_internal_analyze VALUES ('instance'); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed INSERT INTO rmb_internal_analyze VALUES ('instance'); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.instance ADD COLUMN IF NOT EXISTS instanceTypeId UUID; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.instance ADD COLUMN IF NOT EXISTS instanceTypeId UUID; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ BEGIN BEGIN ALTER TABLE instance ADD CONSTRAINT instanceTypeId_instance_type_fkey FOREIGN KEY (instanceTypeId) REFERENCES instance_type; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ BEGIN BEGIN ALTER TABLE instance ADD CONSTRAINT instanceTypeId_instance_type_fkey FOREIGN KEY (instanceTypeId) REFERENCES instance_type; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE INDEX IF NOT EXISTS instance_instanceTypeId_idx ON test_tenant_mod_inventory_storage.instance (instanceTypeId); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE INDEX IF NOT EXISTS instance_instanceTypeId_idx ON test_tenant_mod_inventory_storage.instance (instanceTypeId); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} INSERT INTO rmb_internal_analyze VALUES ('instance'); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed INSERT INTO rmb_internal_analyze VALUES ('instance'); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.update_instance_references() RETURNS TRIGGER AS $$ BEGIN NEW.instanceStatusId = (NEW.jsonb->>'instanceStatusId'); NEW.modeOfIssuanceId = (NEW.jsonb->>'modeOfIssuanceId'); NEW.instanceTypeId = (NEW.jsonb->>'instanceTypeId'); RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.update_instance_references() RETURNS TRIGGER AS $$ BEGIN NEW.instanceStatusId = (NEW.jsonb->>'instanceStatusId'); NEW.modeOfIssuanceId = (NEW.jsonb->>'modeOfIssuanceId'); NEW.instanceTypeId = (NEW.jsonb->>'instanceTypeId'); RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_instance_references ON test_tenant_mod_inventory_storage.instance CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_instance_references" for relation "test_tenant_mod_inventory_storage.instance" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_instance_references ON test_tenant_mod_inventory_storage.instance CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER update_instance_references BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.instance FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.update_instance_references(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER update_instance_references BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.instance FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.update_instance_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ DECLARE version TEXT; i INT; BEGIN SELECT jsonb->>'rmbVersion' INTO version FROM rmb_internal; IF version !~ '^(\d\.|1\d\.|2\d\.|30\.0\.)' THEN RETURN; END IF; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE instance DROP CONSTRAINT IF EXISTS ' || 'instanceStatusId_instance_status_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE instance DROP CONSTRAINT IF EXISTS ' || 'modeOfIssuanceId_mode_of_issuance_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE instance DROP CONSTRAINT IF EXISTS ' || 'instanceTypeId_instance_type_fkey' || i; END LOOP; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ DECLARE version TEXT; i INT; BEGIN SELECT jsonb->>'rmbVersion' INTO version FROM rmb_internal; IF version !~ '^(\d\.|1\d\.|2\d\.|30\.0\.)' THEN RETURN; END IF; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE instance DROP CONSTRAINT IF EXISTS ' || 'instanceStatusId_instance_status_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE instance DROP CONSTRAINT IF EXISTS ' || 'modeOfIssuanceId_mode_of_issuance_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE instance DROP CONSTRAINT IF EXISTS ' || 'instanceTypeId_instance_type_fkey' || i; END LOOP; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.instance_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.instance_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_instance_md_trigger ON test_tenant_mod_inventory_storage.instance CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_instance_md_trigger" for relation "test_tenant_mod_inventory_storage.instance" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_instance_md_trigger ON test_tenant_mod_inventory_storage.instance CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_instance_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.instance FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.instance_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_instance_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.instance FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.instance_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_instance_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_instance_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_instance_md_json_trigger ON test_tenant_mod_inventory_storage.instance CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_instance_md_json_trigger" for relation "test_tenant_mod_inventory_storage.instance" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_instance_md_json_trigger ON test_tenant_mod_inventory_storage.instance CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_instance_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.instance FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_instance_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_instance_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.instance FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_instance_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.instance_set_ol_version() RETURNS trigger AS $$ BEGIN CASE TG_OP WHEN 'INSERT' THEN NEW.jsonb = jsonb_set(NEW.jsonb, '{_version}', to_jsonb(1)); WHEN 'UPDATE' THEN IF NEW.jsonb->'_version' IS DISTINCT FROM OLD.jsonb->'_version' THEN RAISE NOTICE 'Ignoring optimistic locking conflict while overwriting changed record %: ' 'Stored _version is %, _version of request is %', OLD.id, OLD.jsonb->'_version', NEW.jsonb->'_version' USING ERRCODE = '23F09', TABLE = 'instance', SCHEMA = 'test_tenant_mod_inventory_storage'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{_version}', to_jsonb(COALESCE((OLD.jsonb->>'_version')::numeric + 1, 1))); END CASE; RETURN NEW; END; $$ LANGUAGE plpgsql; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.instance_set_ol_version() RETURNS trigger AS $$ BEGIN CASE TG_OP WHEN 'INSERT' THEN NEW.jsonb = jsonb_set(NEW.jsonb, '{_version}', to_jsonb(1)); WHEN 'UPDATE' THEN IF NEW.jsonb->'_version' IS DISTINCT FROM OLD.jsonb->'_version' THEN RAISE NOTICE 'Ignoring optimistic locking conflict while overwriting changed record %: ' 'Stored _version is %, _version of request is %', OLD.id, OLD.jsonb->'_version', NEW.jsonb->'_version' USING ERRCODE = '23F09', TABLE = 'instance', SCHEMA = 'test_tenant_mod_inventory_storage'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{_version}', to_jsonb(COALESCE((OLD.jsonb->>'_version')::numeric + 1, 1))); END CASE; RETURN NEW; END; $$ LANGUAGE plpgsql; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_instance_ol_version_trigger ON test_tenant_mod_inventory_storage.instance CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_instance_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.instance" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_instance_ol_version_trigger ON test_tenant_mod_inventory_storage.instance CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_instance_ol_version_trigger BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.instance FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.instance_set_ol_version(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_instance_ol_version_trigger BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.instance FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.instance_set_ol_version(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.audit_instance_changes() RETURNS TRIGGER AS $instance_audit$ DECLARE jsonb JSONB; uuidtext TEXT; uuid UUID; BEGIN jsonb = CASE WHEN TG_OP = 'DELETE' THEN OLD.jsonb ELSE NEW.jsonb END; -- create uuid based on the jsonb value so that concurrent updates of different records are possible. uuidtext = md5(jsonb::text); -- UUID version byte uuidtext = overlay(uuidtext placing '4' from 13); -- UUID variant byte uuidtext = overlay(uuidtext placing '8' from 17); uuid = uuidtext::uuid; -- If uuid is already in use increment until an unused is found. This can only happen if the jsonb content -- is exactly the same. This should be very rare when it includes a timestamp. WHILE EXISTS (SELECT 1 FROM test_tenant_mod_inventory_storage.audit_instance WHERE id = uuid) LOOP uuid = test_tenant_mod_inventory_storage.next_uuid(uuid); END LOOP; jsonb = jsonb_build_object( 'id', to_jsonb(uuid::text), 'record', jsonb, 'operation', to_jsonb(left(TG_OP, 1)), 'createdDate', to_jsonb(current_timestamp::text)); IF (TG_OP = 'DELETE') THEN ELSIF (TG_OP = 'UPDATE') THEN ELSIF (TG_OP = 'INSERT') THEN END IF; INSERT INTO test_tenant_mod_inventory_storage.audit_instance VALUES (uuid, jsonb); RETURN CASE WHEN TG_OP = 'DELETE' THEN OLD ELSE NEW END; END; $instance_audit$ LANGUAGE plpgsql; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.audit_instance_changes() RETURNS TRIGGER AS $instance_audit$ DECLARE jsonb JSONB; uuidtext TEXT; uuid UUID; BEGIN jsonb = CASE WHEN TG_OP = 'DELETE' THEN OLD.jsonb ELSE NEW.jsonb END; -- create uuid based on the jsonb value so that concurrent updates of different records are possible. uuidtext = md5(jsonb::text); -- UUID version byte uuidtext = overlay(uuidtext placing '4' from 13); -- UUID variant byte uuidtext = overlay(uuidtext placing '8' from 17); uuid = uuidtext::uuid; -- If uuid is already in use increment until an unused is found. This can only happen if the jsonb content -- is exactly the same. This should be very rare when it includes a timestamp. WHILE EXISTS (SELECT 1 FROM test_tenant_mod_inventory_storage.audit_instance WHERE id = uuid) LOOP uuid = test_tenant_mod_inventory_storage.next_uuid(uuid); END LOOP; jsonb = jsonb_build_object( 'id', to_jsonb(uuid::text), 'record', jsonb, 'operation', to_jsonb(left(TG_OP, 1)), 'createdDate', to_jsonb(current_timestamp::text)); IF (TG_OP = 'DELETE') THEN ELSIF (TG_OP = 'UPDATE') THEN ELSIF (TG_OP = 'INSERT') THEN END IF; INSERT INTO test_tenant_mod_inventory_storage.audit_instance VALUES (uuid, jsonb); RETURN CASE WHEN TG_OP = 'DELETE' THEN OLD ELSE NEW END; END; $instance_audit$ LANGUAGE plpgsql; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS audit_instance ON test_tenant_mod_inventory_storage.instance CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "audit_instance" for relation "test_tenant_mod_inventory_storage.instance" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS audit_instance ON test_tenant_mod_inventory_storage.instance CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER audit_instance AFTER INSERT OR UPDATE OR DELETE ON test_tenant_mod_inventory_storage.instance FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.audit_instance_changes(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER audit_instance AFTER INSERT OR UPDATE OR DELETE ON test_tenant_mod_inventory_storage.instance FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.audit_instance_changes(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS audit_instance ON test_tenant_mod_inventory_storage.instance CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS audit_instance ON test_tenant_mod_inventory_storage.instance CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER audit_instance AFTER DELETE ON test_tenant_mod_inventory_storage.instance FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.audit_instance_changes(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER audit_instance AFTER DELETE ON test_tenant_mod_inventory_storage.instance FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.audit_instance_changes(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.instance_relationship ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.instance_relationship ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_instance_relationship ON test_tenant_mod_inventory_storage.instance_relationship CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_instance_relationship" for relation "test_tenant_mod_inventory_storage.instance_relationship" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_instance_relationship ON test_tenant_mod_inventory_storage.instance_relationship CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.instance_relationship CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.instance_relationship" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.instance_relationship CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.instance_relationship FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.instance_relationship FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.instance_relationship ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.instance_relationship ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.instance_relationship ADD COLUMN IF NOT EXISTS superInstanceId UUID; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.instance_relationship ADD COLUMN IF NOT EXISTS superInstanceId UUID; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ BEGIN BEGIN ALTER TABLE instance_relationship ADD CONSTRAINT superInstanceId_instance_fkey FOREIGN KEY (superInstanceId) REFERENCES instance; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ BEGIN BEGIN ALTER TABLE instance_relationship ADD CONSTRAINT superInstanceId_instance_fkey FOREIGN KEY (superInstanceId) REFERENCES instance; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE INDEX IF NOT EXISTS instance_relationship_superInstanceId_idx ON test_tenant_mod_inventory_storage.instance_relationship (superInstanceId); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE INDEX IF NOT EXISTS instance_relationship_superInstanceId_idx ON test_tenant_mod_inventory_storage.instance_relationship (superInstanceId); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} INSERT INTO rmb_internal_analyze VALUES ('instance_relationship'); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed INSERT INTO rmb_internal_analyze VALUES ('instance_relationship'); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.instance_relationship ADD COLUMN IF NOT EXISTS subInstanceId UUID; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.instance_relationship ADD COLUMN IF NOT EXISTS subInstanceId UUID; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ BEGIN BEGIN ALTER TABLE instance_relationship ADD CONSTRAINT subInstanceId_instance_fkey FOREIGN KEY (subInstanceId) REFERENCES instance; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ BEGIN BEGIN ALTER TABLE instance_relationship ADD CONSTRAINT subInstanceId_instance_fkey FOREIGN KEY (subInstanceId) REFERENCES instance; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE INDEX IF NOT EXISTS instance_relationship_subInstanceId_idx ON test_tenant_mod_inventory_storage.instance_relationship (subInstanceId); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE INDEX IF NOT EXISTS instance_relationship_subInstanceId_idx ON test_tenant_mod_inventory_storage.instance_relationship (subInstanceId); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} INSERT INTO rmb_internal_analyze VALUES ('instance_relationship'); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed INSERT INTO rmb_internal_analyze VALUES ('instance_relationship'); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.instance_relationship ADD COLUMN IF NOT EXISTS instanceRelationshipTypeId UUID; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.instance_relationship ADD COLUMN IF NOT EXISTS instanceRelationshipTypeId UUID; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ BEGIN BEGIN ALTER TABLE instance_relationship ADD CONSTRAINT instanceRelationshipTypeId_instance_relationship_type_fkey FOREIGN KEY (instanceRelationshipTypeId) REFERENCES instance_relationship_type; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ BEGIN BEGIN ALTER TABLE instance_relationship ADD CONSTRAINT instanceRelationshipTypeId_instance_relationship_type_fkey FOREIGN KEY (instanceRelationshipTypeId) REFERENCES instance_relationship_type; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE INDEX IF NOT EXISTS instance_relationship_instanceRelationshipTypeId_idx ON test_tenant_mod_inventory_storage.instance_relationship (instanceRelationshipTypeId); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE INDEX IF NOT EXISTS instance_relationship_instanceRelationshipTypeId_idx ON test_tenant_mod_inventory_storage.instance_relationship (instanceRelationshipTypeId); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} INSERT INTO rmb_internal_analyze VALUES ('instance_relationship'); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed INSERT INTO rmb_internal_analyze VALUES ('instance_relationship'); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.update_instance_relationship_references() RETURNS TRIGGER AS $$ BEGIN NEW.superInstanceId = (NEW.jsonb->>'superInstanceId'); NEW.subInstanceId = (NEW.jsonb->>'subInstanceId'); NEW.instanceRelationshipTypeId = (NEW.jsonb->>'instanceRelationshipTypeId'); RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.update_instance_relationship_references() RETURNS TRIGGER AS $$ BEGIN NEW.superInstanceId = (NEW.jsonb->>'superInstanceId'); NEW.subInstanceId = (NEW.jsonb->>'subInstanceId'); NEW.instanceRelationshipTypeId = (NEW.jsonb->>'instanceRelationshipTypeId'); RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_instance_relationship_references ON test_tenant_mod_inventory_storage.instance_relationship CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_instance_relationship_references" for relation "test_tenant_mod_inventory_storage.instance_relationship" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_instance_relationship_references ON test_tenant_mod_inventory_storage.instance_relationship CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER update_instance_relationship_references BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.instance_relationship FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.update_instance_relationship_references(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER update_instance_relationship_references BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.instance_relationship FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.update_instance_relationship_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ DECLARE version TEXT; i INT; BEGIN SELECT jsonb->>'rmbVersion' INTO version FROM rmb_internal; IF version !~ '^(\d\.|1\d\.|2\d\.|30\.0\.)' THEN RETURN; END IF; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE instance_relationship DROP CONSTRAINT IF EXISTS ' || 'superInstanceId_instance_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE instance_relationship DROP CONSTRAINT IF EXISTS ' || 'subInstanceId_instance_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE instance_relationship DROP CONSTRAINT IF EXISTS ' || 'instanceRelationshipTypeId_instance_relationship_type_fkey' || i; END LOOP; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ DECLARE version TEXT; i INT; BEGIN SELECT jsonb->>'rmbVersion' INTO version FROM rmb_internal; IF version !~ '^(\d\.|1\d\.|2\d\.|30\.0\.)' THEN RETURN; END IF; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE instance_relationship DROP CONSTRAINT IF EXISTS ' || 'superInstanceId_instance_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE instance_relationship DROP CONSTRAINT IF EXISTS ' || 'subInstanceId_instance_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE instance_relationship DROP CONSTRAINT IF EXISTS ' || 'instanceRelationshipTypeId_instance_relationship_type_fkey' || i; END LOOP; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.instance_relationship_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.instance_relationship_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_instance_relationship_md_trigger ON test_tenant_mod_inventory_storage.instance_relationship CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_instance_relationship_md_trigger" for relation "test_tenant_mod_inventory_storage.instance_relationship" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_instance_relationship_md_trigger ON test_tenant_mod_inventory_storage.instance_relationship CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_instance_relationship_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.instance_relationship FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.instance_relationship_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_instance_relationship_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.instance_relationship FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.instance_relationship_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_instance_relationship_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_instance_relationship_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_instance_relationship_md_json_trigger ON test_tenant_mod_inventory_storage.instance_relationship CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_instance_relationship_md_json_trigger" for relation "test_tenant_mod_inventory_storage.instance_relationship" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_instance_relationship_md_json_trigger ON test_tenant_mod_inventory_storage.instance_relationship CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_instance_relationship_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.instance_relationship FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_instance_relationship_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_instance_relationship_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.instance_relationship FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_instance_relationship_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_instance_relationship_ol_version_trigger ON test_tenant_mod_inventory_storage.instance_relationship CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_instance_relationship_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.instance_relationship" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_instance_relationship_ol_version_trigger ON test_tenant_mod_inventory_storage.instance_relationship CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.instance_relationship_set_ol_version() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.instance_relationship_set_ol_version() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.instance_relationship_set_ol_version() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.instance_source_marc ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.instance_source_marc ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_instance_source_marc ON test_tenant_mod_inventory_storage.instance_source_marc CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_instance_source_marc" for relation "test_tenant_mod_inventory_storage.instance_source_marc" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_instance_source_marc ON test_tenant_mod_inventory_storage.instance_source_marc CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.instance_source_marc CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.instance_source_marc" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.instance_source_marc CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.instance_source_marc FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.instance_source_marc FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.instance_source_marc ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.instance_source_marc ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_instance_source_marc_references ON test_tenant_mod_inventory_storage.instance_source_marc CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_instance_source_marc_references" for relation "test_tenant_mod_inventory_storage.instance_source_marc" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_instance_source_marc_references ON test_tenant_mod_inventory_storage.instance_source_marc CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_instance_source_marc_references(); 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.update_instance_source_marc_references() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_instance_source_marc_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.instance_source_marc_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.instance_source_marc_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_instance_source_marc_md_trigger ON test_tenant_mod_inventory_storage.instance_source_marc CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_instance_source_marc_md_trigger" for relation "test_tenant_mod_inventory_storage.instance_source_marc" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_instance_source_marc_md_trigger ON test_tenant_mod_inventory_storage.instance_source_marc CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_instance_source_marc_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.instance_source_marc FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.instance_source_marc_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_instance_source_marc_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.instance_source_marc FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.instance_source_marc_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_instance_source_marc_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_instance_source_marc_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_instance_source_marc_md_json_trigger ON test_tenant_mod_inventory_storage.instance_source_marc CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_instance_source_marc_md_json_trigger" for relation "test_tenant_mod_inventory_storage.instance_source_marc" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_instance_source_marc_md_json_trigger ON test_tenant_mod_inventory_storage.instance_source_marc CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_instance_source_marc_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.instance_source_marc FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_instance_source_marc_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_instance_source_marc_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.instance_source_marc FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_instance_source_marc_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_instance_source_marc_ol_version_trigger ON test_tenant_mod_inventory_storage.instance_source_marc CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_instance_source_marc_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.instance_source_marc" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_instance_source_marc_ol_version_trigger ON test_tenant_mod_inventory_storage.instance_source_marc CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.instance_source_marc_set_ol_version() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.instance_source_marc_set_ol_version() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.instance_source_marc_set_ol_version() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.instance_source_marc ADD FOREIGN KEY (id) REFERENCES test_tenant_mod_inventory_storage.instance; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.instance_source_marc ADD FOREIGN KEY (id) REFERENCES test_tenant_mod_inventory_storage.instance; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_instance_sourceRecordFormat() RETURNS TRIGGER AS $$ BEGIN CASE TG_OP WHEN 'INSERT' THEN -- a newly inserted instance cannot have a source record because of foreign key relationship NEW.jsonb := NEW.jsonb - 'sourceRecordFormat'; ELSE NEW.jsonb := CASE (SELECT count(*) FROM test_tenant_mod_inventory_storage.instance_source_marc WHERE id=NEW.id) WHEN 0 THEN NEW.jsonb - 'sourceRecordFormat' ELSE jsonb_set(NEW.jsonb, '{sourceRecordFormat}', '"MARC-JSON"') END; END CASE; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_instance_sourceRecordFormat() RETURNS TRIGGER AS $$ BEGIN CASE TG_OP WHEN 'INSERT' THEN -- a newly inserted instance cannot have a source record because of foreign key relationship NEW.jsonb := NEW.jsonb - 'sourceRecordFormat'; ELSE NEW.jsonb := CASE (SELECT count(*) FROM test_tenant_mod_inventory_storage.instance_source_marc WHERE id=NEW.id) WHEN 0 THEN NEW.jsonb - 'sourceRecordFormat' ELSE jsonb_set(NEW.jsonb, '{sourceRecordFormat}', '"MARC-JSON"') END; END CASE; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_instance_sourceRecordFormat ON test_tenant_mod_inventory_storage.instance CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_instance_sourcerecordformat" for relation "test_tenant_mod_inventory_storage.instance" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_instance_sourceRecordFormat ON test_tenant_mod_inventory_storage.instance CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_instance_sourceRecordFormat BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.instance FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_instance_sourceRecordFormat(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_instance_sourceRecordFormat BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.instance FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_instance_sourceRecordFormat(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.update_instance_source_marc() RETURNS TRIGGER AS $$ BEGIN IF (TG_OP = 'DELETE') THEN UPDATE test_tenant_mod_inventory_storage.instance SET jsonb = jsonb - 'sourceRecordFormat' WHERE id = OLD.id; ELSE UPDATE test_tenant_mod_inventory_storage.instance SET jsonb = jsonb_set(jsonb, '{sourceRecordFormat}', '"MARC-JSON"') WHERE id = NEW.id; END IF; RETURN NULL; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.update_instance_source_marc() RETURNS TRIGGER AS $$ BEGIN IF (TG_OP = 'DELETE') THEN UPDATE test_tenant_mod_inventory_storage.instance SET jsonb = jsonb - 'sourceRecordFormat' WHERE id = OLD.id; ELSE UPDATE test_tenant_mod_inventory_storage.instance SET jsonb = jsonb_set(jsonb, '{sourceRecordFormat}', '"MARC-JSON"') WHERE id = NEW.id; END IF; RETURN NULL; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_instance_source_marc ON test_tenant_mod_inventory_storage.instance_source_marc CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_instance_source_marc" for relation "test_tenant_mod_inventory_storage.instance_source_marc" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_instance_source_marc ON test_tenant_mod_inventory_storage.instance_source_marc CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER update_instance_source_marc AFTER DELETE OR INSERT OR UPDATE ON test_tenant_mod_inventory_storage.instance_source_marc FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.update_instance_source_marc(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER update_instance_source_marc AFTER DELETE OR INSERT OR UPDATE ON test_tenant_mod_inventory_storage.instance_source_marc FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.update_instance_source_marc(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.ill_policy ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.ill_policy ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_ill_policy ON test_tenant_mod_inventory_storage.ill_policy CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_ill_policy" for relation "test_tenant_mod_inventory_storage.ill_policy" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_ill_policy ON test_tenant_mod_inventory_storage.ill_policy CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.ill_policy CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.ill_policy" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.ill_policy CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.ill_policy FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.ill_policy FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.ill_policy ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.ill_policy ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'ill_policy', 'ill_policy_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS ill_policy_name_idx_unique ON test_tenant_mod_inventory_storage.ill_policy ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "ill_policy_name_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS ill_policy_name_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'ill_policy', 'ill_policy_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS ill_policy_name_idx_unique ON test_tenant_mod_inventory_storage.ill_policy ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'ill_policy', 'ill_policy_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS ill_policy_name_idx_unique ON test_tenant_mod_inventory_storage.ill_policy ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_ill_policy_references ON test_tenant_mod_inventory_storage.ill_policy CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_ill_policy_references" for relation "test_tenant_mod_inventory_storage.ill_policy" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_ill_policy_references ON test_tenant_mod_inventory_storage.ill_policy CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_ill_policy_references(); 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.update_ill_policy_references() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_ill_policy_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.ill_policy_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.ill_policy_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_ill_policy_md_trigger ON test_tenant_mod_inventory_storage.ill_policy CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_ill_policy_md_trigger" for relation "test_tenant_mod_inventory_storage.ill_policy" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_ill_policy_md_trigger ON test_tenant_mod_inventory_storage.ill_policy CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_ill_policy_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.ill_policy FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.ill_policy_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_ill_policy_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.ill_policy FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.ill_policy_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_ill_policy_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_ill_policy_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_ill_policy_md_json_trigger ON test_tenant_mod_inventory_storage.ill_policy CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_ill_policy_md_json_trigger" for relation "test_tenant_mod_inventory_storage.ill_policy" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_ill_policy_md_json_trigger ON test_tenant_mod_inventory_storage.ill_policy CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_ill_policy_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.ill_policy FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_ill_policy_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_ill_policy_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.ill_policy FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_ill_policy_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_ill_policy_ol_version_trigger ON test_tenant_mod_inventory_storage.ill_policy CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_ill_policy_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.ill_policy" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_ill_policy_ol_version_trigger ON test_tenant_mod_inventory_storage.ill_policy CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.ill_policy_set_ol_version() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.ill_policy_set_ol_version() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.ill_policy_set_ol_version() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.call_number_type ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.call_number_type ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_call_number_type ON test_tenant_mod_inventory_storage.call_number_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_call_number_type" for relation "test_tenant_mod_inventory_storage.call_number_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_call_number_type ON test_tenant_mod_inventory_storage.call_number_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.call_number_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.call_number_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.call_number_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.call_number_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.call_number_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.call_number_type ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.call_number_type ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'call_number_type', 'call_number_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS call_number_type_name_idx_unique ON test_tenant_mod_inventory_storage.call_number_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "call_number_type_name_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS call_number_type_name_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'call_number_type', 'call_number_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS call_number_type_name_idx_unique ON test_tenant_mod_inventory_storage.call_number_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'call_number_type', 'call_number_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS call_number_type_name_idx_unique ON test_tenant_mod_inventory_storage.call_number_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_call_number_type_references ON test_tenant_mod_inventory_storage.call_number_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_call_number_type_references" for relation "test_tenant_mod_inventory_storage.call_number_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_call_number_type_references ON test_tenant_mod_inventory_storage.call_number_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_call_number_type_references(); 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.update_call_number_type_references() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_call_number_type_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.call_number_type_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.call_number_type_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_call_number_type_md_trigger ON test_tenant_mod_inventory_storage.call_number_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_call_number_type_md_trigger" for relation "test_tenant_mod_inventory_storage.call_number_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_call_number_type_md_trigger ON test_tenant_mod_inventory_storage.call_number_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_call_number_type_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.call_number_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.call_number_type_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_call_number_type_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.call_number_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.call_number_type_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_call_number_type_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_call_number_type_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_call_number_type_md_json_trigger ON test_tenant_mod_inventory_storage.call_number_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_call_number_type_md_json_trigger" for relation "test_tenant_mod_inventory_storage.call_number_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_call_number_type_md_json_trigger ON test_tenant_mod_inventory_storage.call_number_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_call_number_type_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.call_number_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_call_number_type_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_call_number_type_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.call_number_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_call_number_type_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_call_number_type_ol_version_trigger ON test_tenant_mod_inventory_storage.call_number_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_call_number_type_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.call_number_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_call_number_type_ol_version_trigger ON test_tenant_mod_inventory_storage.call_number_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.call_number_type_set_ol_version() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.call_number_type_set_ol_version() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.call_number_type_set_ol_version() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.holdings_type ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.holdings_type ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_holdings_type ON test_tenant_mod_inventory_storage.holdings_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_holdings_type" for relation "test_tenant_mod_inventory_storage.holdings_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_holdings_type ON test_tenant_mod_inventory_storage.holdings_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.holdings_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.holdings_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.holdings_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.holdings_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.holdings_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.holdings_type ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.holdings_type ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'holdings_type', 'holdings_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS holdings_type_name_idx_unique ON test_tenant_mod_inventory_storage.holdings_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "holdings_type_name_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS holdings_type_name_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'holdings_type', 'holdings_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS holdings_type_name_idx_unique ON test_tenant_mod_inventory_storage.holdings_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'holdings_type', 'holdings_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS holdings_type_name_idx_unique ON test_tenant_mod_inventory_storage.holdings_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_holdings_type_references ON test_tenant_mod_inventory_storage.holdings_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_holdings_type_references" for relation "test_tenant_mod_inventory_storage.holdings_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_holdings_type_references ON test_tenant_mod_inventory_storage.holdings_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_holdings_type_references(); 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.update_holdings_type_references() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_holdings_type_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.holdings_type_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.holdings_type_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_holdings_type_md_trigger ON test_tenant_mod_inventory_storage.holdings_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_holdings_type_md_trigger" for relation "test_tenant_mod_inventory_storage.holdings_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_holdings_type_md_trigger ON test_tenant_mod_inventory_storage.holdings_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_holdings_type_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.holdings_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.holdings_type_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_holdings_type_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.holdings_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.holdings_type_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_holdings_type_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_holdings_type_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_holdings_type_md_json_trigger ON test_tenant_mod_inventory_storage.holdings_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_holdings_type_md_json_trigger" for relation "test_tenant_mod_inventory_storage.holdings_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_holdings_type_md_json_trigger ON test_tenant_mod_inventory_storage.holdings_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_holdings_type_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.holdings_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_holdings_type_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_holdings_type_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.holdings_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_holdings_type_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_holdings_type_ol_version_trigger ON test_tenant_mod_inventory_storage.holdings_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_holdings_type_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.holdings_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_holdings_type_ol_version_trigger ON test_tenant_mod_inventory_storage.holdings_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.holdings_type_set_ol_version() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.holdings_type_set_ol_version() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.holdings_type_set_ol_version() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.instance_note_type ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.instance_note_type ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_instance_note_type ON test_tenant_mod_inventory_storage.instance_note_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_instance_note_type" for relation "test_tenant_mod_inventory_storage.instance_note_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_instance_note_type ON test_tenant_mod_inventory_storage.instance_note_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.instance_note_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.instance_note_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.instance_note_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.instance_note_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.instance_note_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.instance_note_type ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.instance_note_type ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'instance_note_type', 'instance_note_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_note_type_name_idx_unique ON test_tenant_mod_inventory_storage.instance_note_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_note_type_name_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS instance_note_type_name_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'instance_note_type', 'instance_note_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_note_type_name_idx_unique ON test_tenant_mod_inventory_storage.instance_note_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'instance_note_type', 'instance_note_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS instance_note_type_name_idx_unique ON test_tenant_mod_inventory_storage.instance_note_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_instance_note_type_references ON test_tenant_mod_inventory_storage.instance_note_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_instance_note_type_references" for relation "test_tenant_mod_inventory_storage.instance_note_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_instance_note_type_references ON test_tenant_mod_inventory_storage.instance_note_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_instance_note_type_references(); 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.update_instance_note_type_references() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_instance_note_type_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.instance_note_type_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.instance_note_type_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_instance_note_type_md_trigger ON test_tenant_mod_inventory_storage.instance_note_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_instance_note_type_md_trigger" for relation "test_tenant_mod_inventory_storage.instance_note_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_instance_note_type_md_trigger ON test_tenant_mod_inventory_storage.instance_note_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_instance_note_type_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.instance_note_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.instance_note_type_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_instance_note_type_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.instance_note_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.instance_note_type_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_instance_note_type_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_instance_note_type_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_instance_note_type_md_json_trigger ON test_tenant_mod_inventory_storage.instance_note_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_instance_note_type_md_json_trigger" for relation "test_tenant_mod_inventory_storage.instance_note_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_instance_note_type_md_json_trigger ON test_tenant_mod_inventory_storage.instance_note_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_instance_note_type_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.instance_note_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_instance_note_type_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_instance_note_type_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.instance_note_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_instance_note_type_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_instance_note_type_ol_version_trigger ON test_tenant_mod_inventory_storage.instance_note_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_instance_note_type_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.instance_note_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_instance_note_type_ol_version_trigger ON test_tenant_mod_inventory_storage.instance_note_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.instance_note_type_set_ol_version() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.instance_note_type_set_ol_version() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.instance_note_type_set_ol_version() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.holdings_note_type ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.holdings_note_type ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_holdings_note_type ON test_tenant_mod_inventory_storage.holdings_note_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_holdings_note_type" for relation "test_tenant_mod_inventory_storage.holdings_note_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_holdings_note_type ON test_tenant_mod_inventory_storage.holdings_note_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.holdings_note_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.holdings_note_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.holdings_note_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.holdings_note_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.holdings_note_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.holdings_note_type ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.holdings_note_type ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'holdings_note_type', 'holdings_note_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS holdings_note_type_name_idx_unique ON test_tenant_mod_inventory_storage.holdings_note_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "holdings_note_type_name_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS holdings_note_type_name_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'holdings_note_type', 'holdings_note_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS holdings_note_type_name_idx_unique ON test_tenant_mod_inventory_storage.holdings_note_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'holdings_note_type', 'holdings_note_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS holdings_note_type_name_idx_unique ON test_tenant_mod_inventory_storage.holdings_note_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_holdings_note_type_references ON test_tenant_mod_inventory_storage.holdings_note_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_holdings_note_type_references" for relation "test_tenant_mod_inventory_storage.holdings_note_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_holdings_note_type_references ON test_tenant_mod_inventory_storage.holdings_note_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_holdings_note_type_references(); 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.update_holdings_note_type_references() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_holdings_note_type_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.holdings_note_type_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.holdings_note_type_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_holdings_note_type_md_trigger ON test_tenant_mod_inventory_storage.holdings_note_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_holdings_note_type_md_trigger" for relation "test_tenant_mod_inventory_storage.holdings_note_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_holdings_note_type_md_trigger ON test_tenant_mod_inventory_storage.holdings_note_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_holdings_note_type_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.holdings_note_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.holdings_note_type_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_holdings_note_type_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.holdings_note_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.holdings_note_type_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_holdings_note_type_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_holdings_note_type_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_holdings_note_type_md_json_trigger ON test_tenant_mod_inventory_storage.holdings_note_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_holdings_note_type_md_json_trigger" for relation "test_tenant_mod_inventory_storage.holdings_note_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_holdings_note_type_md_json_trigger ON test_tenant_mod_inventory_storage.holdings_note_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_holdings_note_type_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.holdings_note_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_holdings_note_type_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_holdings_note_type_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.holdings_note_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_holdings_note_type_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_holdings_note_type_ol_version_trigger ON test_tenant_mod_inventory_storage.holdings_note_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_holdings_note_type_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.holdings_note_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_holdings_note_type_ol_version_trigger ON test_tenant_mod_inventory_storage.holdings_note_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.holdings_note_type_set_ol_version() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.holdings_note_type_set_ol_version() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.holdings_note_type_set_ol_version() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.item_note_type ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.item_note_type ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_item_note_type ON test_tenant_mod_inventory_storage.item_note_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_item_note_type" for relation "test_tenant_mod_inventory_storage.item_note_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_item_note_type ON test_tenant_mod_inventory_storage.item_note_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.item_note_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.item_note_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.item_note_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.item_note_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.item_note_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.item_note_type ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.item_note_type ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'item_note_type', 'item_note_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS item_note_type_name_idx_unique ON test_tenant_mod_inventory_storage.item_note_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "item_note_type_name_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS item_note_type_name_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'item_note_type', 'item_note_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS item_note_type_name_idx_unique ON test_tenant_mod_inventory_storage.item_note_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'item_note_type', 'item_note_type_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS item_note_type_name_idx_unique ON test_tenant_mod_inventory_storage.item_note_type ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_item_note_type_references ON test_tenant_mod_inventory_storage.item_note_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_item_note_type_references" for relation "test_tenant_mod_inventory_storage.item_note_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_item_note_type_references ON test_tenant_mod_inventory_storage.item_note_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_item_note_type_references(); 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.update_item_note_type_references() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_item_note_type_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.item_note_type_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.item_note_type_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_item_note_type_md_trigger ON test_tenant_mod_inventory_storage.item_note_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_item_note_type_md_trigger" for relation "test_tenant_mod_inventory_storage.item_note_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_item_note_type_md_trigger ON test_tenant_mod_inventory_storage.item_note_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_item_note_type_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.item_note_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.item_note_type_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_item_note_type_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.item_note_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.item_note_type_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_item_note_type_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_item_note_type_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_item_note_type_md_json_trigger ON test_tenant_mod_inventory_storage.item_note_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_item_note_type_md_json_trigger" for relation "test_tenant_mod_inventory_storage.item_note_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_item_note_type_md_json_trigger ON test_tenant_mod_inventory_storage.item_note_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_item_note_type_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.item_note_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_item_note_type_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_item_note_type_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.item_note_type FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_item_note_type_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_item_note_type_ol_version_trigger ON test_tenant_mod_inventory_storage.item_note_type CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_item_note_type_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.item_note_type" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_item_note_type_ol_version_trigger ON test_tenant_mod_inventory_storage.item_note_type CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.item_note_type_set_ol_version() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.item_note_type_set_ol_version() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.item_note_type_set_ol_version() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.item_damaged_status ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.item_damaged_status ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_item_damaged_status ON test_tenant_mod_inventory_storage.item_damaged_status CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_item_damaged_status" for relation "test_tenant_mod_inventory_storage.item_damaged_status" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_item_damaged_status ON test_tenant_mod_inventory_storage.item_damaged_status CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.item_damaged_status CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.item_damaged_status" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.item_damaged_status CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.item_damaged_status FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.item_damaged_status FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.item_damaged_status ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.item_damaged_status ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'item_damaged_status', 'item_damaged_status_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS item_damaged_status_name_idx_unique ON test_tenant_mod_inventory_storage.item_damaged_status ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "item_damaged_status_name_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS item_damaged_status_name_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'item_damaged_status', 'item_damaged_status_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS item_damaged_status_name_idx_unique ON test_tenant_mod_inventory_storage.item_damaged_status ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'item_damaged_status', 'item_damaged_status_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS item_damaged_status_name_idx_unique ON test_tenant_mod_inventory_storage.item_damaged_status ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_item_damaged_status_references ON test_tenant_mod_inventory_storage.item_damaged_status CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_item_damaged_status_references" for relation "test_tenant_mod_inventory_storage.item_damaged_status" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_item_damaged_status_references ON test_tenant_mod_inventory_storage.item_damaged_status CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_item_damaged_status_references(); 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.update_item_damaged_status_references() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_item_damaged_status_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.item_damaged_status_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.item_damaged_status_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_item_damaged_status_md_trigger ON test_tenant_mod_inventory_storage.item_damaged_status CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_item_damaged_status_md_trigger" for relation "test_tenant_mod_inventory_storage.item_damaged_status" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_item_damaged_status_md_trigger ON test_tenant_mod_inventory_storage.item_damaged_status CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_item_damaged_status_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.item_damaged_status FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.item_damaged_status_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_item_damaged_status_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.item_damaged_status FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.item_damaged_status_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_item_damaged_status_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_item_damaged_status_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_item_damaged_status_md_json_trigger ON test_tenant_mod_inventory_storage.item_damaged_status CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_item_damaged_status_md_json_trigger" for relation "test_tenant_mod_inventory_storage.item_damaged_status" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_item_damaged_status_md_json_trigger ON test_tenant_mod_inventory_storage.item_damaged_status CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_item_damaged_status_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.item_damaged_status FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_item_damaged_status_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_item_damaged_status_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.item_damaged_status FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_item_damaged_status_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_item_damaged_status_ol_version_trigger ON test_tenant_mod_inventory_storage.item_damaged_status CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_item_damaged_status_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.item_damaged_status" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_item_damaged_status_ol_version_trigger ON test_tenant_mod_inventory_storage.item_damaged_status CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.item_damaged_status_set_ol_version() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.item_damaged_status_set_ol_version() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.item_damaged_status_set_ol_version() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.holdings_records_source ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.holdings_records_source ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_holdings_records_source ON test_tenant_mod_inventory_storage.holdings_records_source CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_holdings_records_source" for relation "test_tenant_mod_inventory_storage.holdings_records_source" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_holdings_records_source ON test_tenant_mod_inventory_storage.holdings_records_source CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.holdings_records_source CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.holdings_records_source" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.holdings_records_source CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.holdings_records_source FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.holdings_records_source FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.holdings_records_source ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.holdings_records_source ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'holdings_records_source', 'holdings_records_source_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS holdings_records_source_name_idx_unique ON test_tenant_mod_inventory_storage.holdings_records_source ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "holdings_records_source_name_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS holdings_records_source_name_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'holdings_records_source', 'holdings_records_source_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS holdings_records_source_name_idx_unique ON test_tenant_mod_inventory_storage.holdings_records_source ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'holdings_records_source', 'holdings_records_source_name_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS holdings_records_source_name_idx_unique ON test_tenant_mod_inventory_storage.holdings_records_source ' || $rmb$(lower(f_unaccent(jsonb->>'name')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_holdings_records_source_references ON test_tenant_mod_inventory_storage.holdings_records_source CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_holdings_records_source_references" for relation "test_tenant_mod_inventory_storage.holdings_records_source" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_holdings_records_source_references ON test_tenant_mod_inventory_storage.holdings_records_source CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_holdings_records_source_references(); 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.update_holdings_records_source_references() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_holdings_records_source_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.holdings_records_source_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.holdings_records_source_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_holdings_records_source_md_trigger ON test_tenant_mod_inventory_storage.holdings_records_source CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_holdings_records_source_md_trigger" for relation "test_tenant_mod_inventory_storage.holdings_records_source" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_holdings_records_source_md_trigger ON test_tenant_mod_inventory_storage.holdings_records_source CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_holdings_records_source_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.holdings_records_source FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.holdings_records_source_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_holdings_records_source_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.holdings_records_source FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.holdings_records_source_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_holdings_records_source_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_holdings_records_source_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_holdings_records_source_md_json_trigger ON test_tenant_mod_inventory_storage.holdings_records_source CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_holdings_records_source_md_json_trigger" for relation "test_tenant_mod_inventory_storage.holdings_records_source" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_holdings_records_source_md_json_trigger ON test_tenant_mod_inventory_storage.holdings_records_source CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_holdings_records_source_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.holdings_records_source FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_holdings_records_source_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_holdings_records_source_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.holdings_records_source FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_holdings_records_source_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_holdings_records_source_ol_version_trigger ON test_tenant_mod_inventory_storage.holdings_records_source CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_holdings_records_source_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.holdings_records_source" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_holdings_records_source_ol_version_trigger ON test_tenant_mod_inventory_storage.holdings_records_source CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.holdings_records_source_set_ol_version() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.holdings_records_source_set_ol_version() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.holdings_records_source_set_ol_version() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.holdings_record ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.holdings_record ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.audit_holdings_record ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.audit_holdings_record ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_holdings_record ON test_tenant_mod_inventory_storage.holdings_record CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_holdings_record" for relation "test_tenant_mod_inventory_storage.holdings_record" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_holdings_record ON test_tenant_mod_inventory_storage.holdings_record CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.holdings_record CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.holdings_record" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.holdings_record CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.holdings_record FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.holdings_record FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.holdings_record ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.holdings_record ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'holdings_record', 'holdings_record_callNumber_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS holdings_record_callNumber_idx ON test_tenant_mod_inventory_storage.holdings_record ' || $rmb$(left(lower(jsonb->>'callNumber'),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "holdings_record_callnumber_idx" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS holdings_record_callNumber_idx" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'holdings_record', 'holdings_record_callNumber_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS holdings_record_callNumber_idx ON test_tenant_mod_inventory_storage.holdings_record ' || $rmb$(left(lower(jsonb->>'callNumber'),600))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'holdings_record', 'holdings_record_callNumber_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS holdings_record_callNumber_idx ON test_tenant_mod_inventory_storage.holdings_record ' || $rmb$(left(lower(jsonb->>'callNumber'),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'holdings_record', 'holdings_record_callNumberAndSuffix_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS holdings_record_callNumberAndSuffix_idx ON test_tenant_mod_inventory_storage.holdings_record ' || $rmb$(left(lower(concat_space_sql(holdings_record.jsonb->>'callNumber' , holdings_record.jsonb->>'callNumberSuffix')),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "holdings_record_callnumberandsuffix_idx" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS holdings_record_callNumberAndSuffix_idx" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'holdings_record', 'holdings_record_callNumberAndSuffix_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS holdings_record_callNumberAndSuffix_idx ON test_tenant_mod_inventory_storage.holdings_record ' || $rmb$(left(lower(concat_space_sql(holdings_record.jsonb->>'callNumber' , holdings_record.jsonb->>'callNumberSuffix')),600))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'holdings_record', 'holdings_record_callNumberAndSuffix_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS holdings_record_callNumberAndSuffix_idx ON test_tenant_mod_inventory_storage.holdings_record ' || $rmb$(left(lower(concat_space_sql(holdings_record.jsonb->>'callNumber' , holdings_record.jsonb->>'callNumberSuffix')),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'holdings_record', 'holdings_record_fullCallNumber_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS holdings_record_fullCallNumber_idx ON test_tenant_mod_inventory_storage.holdings_record ' || $rmb$(left(lower(concat_space_sql(holdings_record.jsonb->>'callNumberPrefix' , holdings_record.jsonb->>'callNumber' , holdings_record.jsonb->>'callNumberSuffix')),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "holdings_record_fullcallnumber_idx" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS holdings_record_fullCallNumber_idx" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'holdings_record', 'holdings_record_fullCallNumber_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS holdings_record_fullCallNumber_idx ON test_tenant_mod_inventory_storage.holdings_record ' || $rmb$(left(lower(concat_space_sql(holdings_record.jsonb->>'callNumberPrefix' , holdings_record.jsonb->>'callNumber' , holdings_record.jsonb->>'callNumberSuffix')),600))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'holdings_record', 'holdings_record_fullCallNumber_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS holdings_record_fullCallNumber_idx ON test_tenant_mod_inventory_storage.holdings_record ' || $rmb$(left(lower(concat_space_sql(holdings_record.jsonb->>'callNumberPrefix' , holdings_record.jsonb->>'callNumber' , holdings_record.jsonb->>'callNumberSuffix')),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'holdings_record', 'holdings_record_discoverySuppress_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS holdings_record_discoverySuppress_idx ON test_tenant_mod_inventory_storage.holdings_record ' || $rmb$(left(lower(jsonb->>'discoverySuppress'),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "holdings_record_discoverysuppress_idx" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS holdings_record_discoverySuppress_idx" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'holdings_record', 'holdings_record_discoverySuppress_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS holdings_record_discoverySuppress_idx ON test_tenant_mod_inventory_storage.holdings_record ' || $rmb$(left(lower(jsonb->>'discoverySuppress'),600))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'holdings_record', 'holdings_record_discoverySuppress_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS holdings_record_discoverySuppress_idx ON test_tenant_mod_inventory_storage.holdings_record ' || $rmb$(left(lower(jsonb->>'discoverySuppress'),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'holdings_record', 'holdings_record_hrid_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS holdings_record_hrid_idx_unique ON test_tenant_mod_inventory_storage.holdings_record ' || $rmb$(lower(f_unaccent(jsonb->>'hrid')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "holdings_record_hrid_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS holdings_record_hrid_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'holdings_record', 'holdings_record_hrid_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS holdings_record_hrid_idx_unique ON test_tenant_mod_inventory_storage.holdings_record ' || $rmb$(lower(f_unaccent(jsonb->>'hrid')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'holdings_record', 'holdings_record_hrid_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS holdings_record_hrid_idx_unique ON test_tenant_mod_inventory_storage.holdings_record ' || $rmb$(lower(f_unaccent(jsonb->>'hrid')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'holdings_record', 'holdings_record_electronicAccess_idx_gin', 'ADD', 'CREATE INDEX IF NOT EXISTS holdings_record_electronicAccess_idx_gin ON test_tenant_mod_inventory_storage.holdings_record USING GIN ' || $rmb$((lower(f_unaccent(jsonb->>'electronicAccess'))) public.gin_trgm_ops)$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "holdings_record_electronicaccess_idx_gin" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS holdings_record_electronicAccess_idx_gin" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'holdings_record', 'holdings_record_electronicAccess_idx_gin', 'ADD', 'CREATE INDEX IF NOT EXISTS holdings_record_electronicAccess_idx_gin ON test_tenant_mod_inventory_storage.holdings_record USING GIN ' || $rmb$((lower(f_unaccent(jsonb->>'electronicAccess'))) public.gin_trgm_ops)$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'holdings_record', 'holdings_record_electronicAccess_idx_gin', 'ADD', 'CREATE INDEX IF NOT EXISTS holdings_record_electronicAccess_idx_gin ON test_tenant_mod_inventory_storage.holdings_record USING GIN ' || $rmb$((lower(f_unaccent(jsonb->>'electronicAccess'))) public.gin_trgm_ops)$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'holdings_record', 'holdings_record_callNumberAndSuffixNormalized_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS holdings_record_callNumberAndSuffixNormalized_idx_ft ON test_tenant_mod_inventory_storage.holdings_record USING GIN ' || $rmb$( get_tsvector(normalize_holdings_call_number_and_suffix(jsonb)) )$rmb$); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "holdings_record_callnumberandsuffixnormalized_idx_ft" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS holdings_record_callNumberAndSuffixNormalized_idx_ft" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'holdings_record', 'holdings_record_callNumberAndSuffixNormalized_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS holdings_record_callNumberAndSuffixNormalized_idx_ft ON test_tenant_mod_inventory_storage.holdings_record USING GIN ' || $rmb$( get_tsvector(normalize_holdings_call_number_and_suffix(jsonb)) )$rmb$)" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'holdings_record', 'holdings_record_callNumberAndSuffixNormalized_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS holdings_record_callNumberAndSuffixNormalized_idx_ft ON test_tenant_mod_inventory_storage.holdings_record USING GIN ' || $rmb$( get_tsvector(normalize_holdings_call_number_and_suffix(jsonb)) )$rmb$); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'holdings_record', 'holdings_record_fullCallNumberNormalized_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS holdings_record_fullCallNumberNormalized_idx_ft ON test_tenant_mod_inventory_storage.holdings_record USING GIN ' || $rmb$( get_tsvector(normalize_holdings_full_call_number(jsonb)) )$rmb$); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "holdings_record_fullcallnumbernormalized_idx_ft" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS holdings_record_fullCallNumberNormalized_idx_ft" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'holdings_record', 'holdings_record_fullCallNumberNormalized_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS holdings_record_fullCallNumberNormalized_idx_ft ON test_tenant_mod_inventory_storage.holdings_record USING GIN ' || $rmb$( get_tsvector(normalize_holdings_full_call_number(jsonb)) )$rmb$)" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'holdings_record', 'holdings_record_fullCallNumberNormalized_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS holdings_record_fullCallNumberNormalized_idx_ft ON test_tenant_mod_inventory_storage.holdings_record USING GIN ' || $rmb$( get_tsvector(normalize_holdings_full_call_number(jsonb)) )$rmb$); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.holdings_record ADD COLUMN IF NOT EXISTS instanceId UUID; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.holdings_record ADD COLUMN IF NOT EXISTS instanceId UUID; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ BEGIN BEGIN ALTER TABLE holdings_record ADD CONSTRAINT instanceId_instance_fkey FOREIGN KEY (instanceId) REFERENCES instance; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ BEGIN BEGIN ALTER TABLE holdings_record ADD CONSTRAINT instanceId_instance_fkey FOREIGN KEY (instanceId) REFERENCES instance; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE INDEX IF NOT EXISTS holdings_record_instanceId_idx ON test_tenant_mod_inventory_storage.holdings_record (instanceId); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE INDEX IF NOT EXISTS holdings_record_instanceId_idx ON test_tenant_mod_inventory_storage.holdings_record (instanceId); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} INSERT INTO rmb_internal_analyze VALUES ('holdings_record'); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed INSERT INTO rmb_internal_analyze VALUES ('holdings_record'); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.holdings_record ADD COLUMN IF NOT EXISTS permanentLocationId UUID; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.holdings_record ADD COLUMN IF NOT EXISTS permanentLocationId UUID; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ BEGIN BEGIN ALTER TABLE holdings_record ADD CONSTRAINT permanentLocationId_location_fkey FOREIGN KEY (permanentLocationId) REFERENCES location; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ BEGIN BEGIN ALTER TABLE holdings_record ADD CONSTRAINT permanentLocationId_location_fkey FOREIGN KEY (permanentLocationId) REFERENCES location; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE INDEX IF NOT EXISTS holdings_record_permanentLocationId_idx ON test_tenant_mod_inventory_storage.holdings_record (permanentLocationId); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE INDEX IF NOT EXISTS holdings_record_permanentLocationId_idx ON test_tenant_mod_inventory_storage.holdings_record (permanentLocationId); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} INSERT INTO rmb_internal_analyze VALUES ('holdings_record'); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed INSERT INTO rmb_internal_analyze VALUES ('holdings_record'); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.holdings_record ADD COLUMN IF NOT EXISTS temporaryLocationId UUID; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.holdings_record ADD COLUMN IF NOT EXISTS temporaryLocationId UUID; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ BEGIN BEGIN ALTER TABLE holdings_record ADD CONSTRAINT temporaryLocationId_location_fkey FOREIGN KEY (temporaryLocationId) REFERENCES location; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ BEGIN BEGIN ALTER TABLE holdings_record ADD CONSTRAINT temporaryLocationId_location_fkey FOREIGN KEY (temporaryLocationId) REFERENCES location; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE INDEX IF NOT EXISTS holdings_record_temporaryLocationId_idx ON test_tenant_mod_inventory_storage.holdings_record (temporaryLocationId); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE INDEX IF NOT EXISTS holdings_record_temporaryLocationId_idx ON test_tenant_mod_inventory_storage.holdings_record (temporaryLocationId); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} INSERT INTO rmb_internal_analyze VALUES ('holdings_record'); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed INSERT INTO rmb_internal_analyze VALUES ('holdings_record'); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.holdings_record ADD COLUMN IF NOT EXISTS effectiveLocationId UUID; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.holdings_record ADD COLUMN IF NOT EXISTS effectiveLocationId UUID; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ BEGIN BEGIN ALTER TABLE holdings_record ADD CONSTRAINT effectiveLocationId_location_fkey FOREIGN KEY (effectiveLocationId) REFERENCES location; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ BEGIN BEGIN ALTER TABLE holdings_record ADD CONSTRAINT effectiveLocationId_location_fkey FOREIGN KEY (effectiveLocationId) REFERENCES location; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE INDEX IF NOT EXISTS holdings_record_effectiveLocationId_idx ON test_tenant_mod_inventory_storage.holdings_record (effectiveLocationId); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE INDEX IF NOT EXISTS holdings_record_effectiveLocationId_idx ON test_tenant_mod_inventory_storage.holdings_record (effectiveLocationId); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} INSERT INTO rmb_internal_analyze VALUES ('holdings_record'); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed INSERT INTO rmb_internal_analyze VALUES ('holdings_record'); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.holdings_record ADD COLUMN IF NOT EXISTS holdingsTypeId UUID; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.holdings_record ADD COLUMN IF NOT EXISTS holdingsTypeId UUID; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ BEGIN BEGIN ALTER TABLE holdings_record ADD CONSTRAINT holdingsTypeId_holdings_type_fkey FOREIGN KEY (holdingsTypeId) REFERENCES holdings_type; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ BEGIN BEGIN ALTER TABLE holdings_record ADD CONSTRAINT holdingsTypeId_holdings_type_fkey FOREIGN KEY (holdingsTypeId) REFERENCES holdings_type; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE INDEX IF NOT EXISTS holdings_record_holdingsTypeId_idx ON test_tenant_mod_inventory_storage.holdings_record (holdingsTypeId); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE INDEX IF NOT EXISTS holdings_record_holdingsTypeId_idx ON test_tenant_mod_inventory_storage.holdings_record (holdingsTypeId); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} INSERT INTO rmb_internal_analyze VALUES ('holdings_record'); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed INSERT INTO rmb_internal_analyze VALUES ('holdings_record'); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.holdings_record ADD COLUMN IF NOT EXISTS callNumberTypeId UUID; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.holdings_record ADD COLUMN IF NOT EXISTS callNumberTypeId UUID; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ BEGIN BEGIN ALTER TABLE holdings_record ADD CONSTRAINT callNumberTypeId_call_number_type_fkey FOREIGN KEY (callNumberTypeId) REFERENCES call_number_type; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ BEGIN BEGIN ALTER TABLE holdings_record ADD CONSTRAINT callNumberTypeId_call_number_type_fkey FOREIGN KEY (callNumberTypeId) REFERENCES call_number_type; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE INDEX IF NOT EXISTS holdings_record_callNumberTypeId_idx ON test_tenant_mod_inventory_storage.holdings_record (callNumberTypeId); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE INDEX IF NOT EXISTS holdings_record_callNumberTypeId_idx ON test_tenant_mod_inventory_storage.holdings_record (callNumberTypeId); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} INSERT INTO rmb_internal_analyze VALUES ('holdings_record'); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed INSERT INTO rmb_internal_analyze VALUES ('holdings_record'); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.holdings_record ADD COLUMN IF NOT EXISTS illPolicyId UUID; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.holdings_record ADD COLUMN IF NOT EXISTS illPolicyId UUID; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ BEGIN BEGIN ALTER TABLE holdings_record ADD CONSTRAINT illPolicyId_ill_policy_fkey FOREIGN KEY (illPolicyId) REFERENCES ill_policy; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ BEGIN BEGIN ALTER TABLE holdings_record ADD CONSTRAINT illPolicyId_ill_policy_fkey FOREIGN KEY (illPolicyId) REFERENCES ill_policy; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE INDEX IF NOT EXISTS holdings_record_illPolicyId_idx ON test_tenant_mod_inventory_storage.holdings_record (illPolicyId); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE INDEX IF NOT EXISTS holdings_record_illPolicyId_idx ON test_tenant_mod_inventory_storage.holdings_record (illPolicyId); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} INSERT INTO rmb_internal_analyze VALUES ('holdings_record'); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed INSERT INTO rmb_internal_analyze VALUES ('holdings_record'); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.holdings_record ADD COLUMN IF NOT EXISTS sourceId UUID; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.holdings_record ADD COLUMN IF NOT EXISTS sourceId UUID; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ BEGIN BEGIN ALTER TABLE holdings_record ADD CONSTRAINT sourceId_holdings_records_source_fkey FOREIGN KEY (sourceId) REFERENCES holdings_records_source; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ BEGIN BEGIN ALTER TABLE holdings_record ADD CONSTRAINT sourceId_holdings_records_source_fkey FOREIGN KEY (sourceId) REFERENCES holdings_records_source; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE INDEX IF NOT EXISTS holdings_record_sourceId_idx ON test_tenant_mod_inventory_storage.holdings_record (sourceId); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE INDEX IF NOT EXISTS holdings_record_sourceId_idx ON test_tenant_mod_inventory_storage.holdings_record (sourceId); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} INSERT INTO rmb_internal_analyze VALUES ('holdings_record'); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed INSERT INTO rmb_internal_analyze VALUES ('holdings_record'); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.update_holdings_record_references() RETURNS TRIGGER AS $$ BEGIN NEW.instanceId = (NEW.jsonb->>'instanceId'); NEW.permanentLocationId = (NEW.jsonb->>'permanentLocationId'); NEW.temporaryLocationId = (NEW.jsonb->>'temporaryLocationId'); NEW.effectiveLocationId = (NEW.jsonb->>'effectiveLocationId'); NEW.holdingsTypeId = (NEW.jsonb->>'holdingsTypeId'); NEW.callNumberTypeId = (NEW.jsonb->>'callNumberTypeId'); NEW.illPolicyId = (NEW.jsonb->>'illPolicyId'); NEW.sourceId = (NEW.jsonb->>'sourceId'); RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.update_holdings_record_references() RETURNS TRIGGER AS $$ BEGIN NEW.instanceId = (NEW.jsonb->>'instanceId'); NEW.permanentLocationId = (NEW.jsonb->>'permanentLocationId'); NEW.temporaryLocationId = (NEW.jsonb->>'temporaryLocationId'); NEW.effectiveLocationId = (NEW.jsonb->>'effectiveLocationId'); NEW.holdingsTypeId = (NEW.jsonb->>'holdingsTypeId'); NEW.callNumberTypeId = (NEW.jsonb->>'callNumberTypeId'); NEW.illPolicyId = (NEW.jsonb->>'illPolicyId'); NEW.sourceId = (NEW.jsonb->>'sourceId'); RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_holdings_record_references ON test_tenant_mod_inventory_storage.holdings_record CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_holdings_record_references" for relation "test_tenant_mod_inventory_storage.holdings_record" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_holdings_record_references ON test_tenant_mod_inventory_storage.holdings_record CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER update_holdings_record_references BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.holdings_record FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.update_holdings_record_references(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER update_holdings_record_references BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.holdings_record FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.update_holdings_record_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ DECLARE version TEXT; i INT; BEGIN SELECT jsonb->>'rmbVersion' INTO version FROM rmb_internal; IF version !~ '^(\d\.|1\d\.|2\d\.|30\.0\.)' THEN RETURN; END IF; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE holdings_record DROP CONSTRAINT IF EXISTS ' || 'instanceId_instance_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE holdings_record DROP CONSTRAINT IF EXISTS ' || 'permanentLocationId_location_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE holdings_record DROP CONSTRAINT IF EXISTS ' || 'temporaryLocationId_location_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE holdings_record DROP CONSTRAINT IF EXISTS ' || 'effectiveLocationId_location_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE holdings_record DROP CONSTRAINT IF EXISTS ' || 'holdingsTypeId_holdings_type_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE holdings_record DROP CONSTRAINT IF EXISTS ' || 'callNumberTypeId_call_number_type_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE holdings_record DROP CONSTRAINT IF EXISTS ' || 'illPolicyId_ill_policy_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE holdings_record DROP CONSTRAINT IF EXISTS ' || 'sourceId_holdings_records_source_fkey' || i; END LOOP; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ DECLARE version TEXT; i INT; BEGIN SELECT jsonb->>'rmbVersion' INTO version FROM rmb_internal; IF version !~ '^(\d\.|1\d\.|2\d\.|30\.0\.)' THEN RETURN; END IF; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE holdings_record DROP CONSTRAINT IF EXISTS ' || 'instanceId_instance_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE holdings_record DROP CONSTRAINT IF EXISTS ' || 'permanentLocationId_location_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE holdings_record DROP CONSTRAINT IF EXISTS ' || 'temporaryLocationId_location_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE holdings_record DROP CONSTRAINT IF EXISTS ' || 'effectiveLocationId_location_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE holdings_record DROP CONSTRAINT IF EXISTS ' || 'holdingsTypeId_holdings_type_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE holdings_record DROP CONSTRAINT IF EXISTS ' || 'callNumberTypeId_call_number_type_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE holdings_record DROP CONSTRAINT IF EXISTS ' || 'illPolicyId_ill_policy_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE holdings_record DROP CONSTRAINT IF EXISTS ' || 'sourceId_holdings_records_source_fkey' || i; END LOOP; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.holdings_record_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.holdings_record_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_holdings_record_md_trigger ON test_tenant_mod_inventory_storage.holdings_record CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_holdings_record_md_trigger" for relation "test_tenant_mod_inventory_storage.holdings_record" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_holdings_record_md_trigger ON test_tenant_mod_inventory_storage.holdings_record CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_holdings_record_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.holdings_record FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.holdings_record_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_holdings_record_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.holdings_record FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.holdings_record_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_holdings_record_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_holdings_record_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_holdings_record_md_json_trigger ON test_tenant_mod_inventory_storage.holdings_record CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_holdings_record_md_json_trigger" for relation "test_tenant_mod_inventory_storage.holdings_record" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_holdings_record_md_json_trigger ON test_tenant_mod_inventory_storage.holdings_record CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_holdings_record_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.holdings_record FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_holdings_record_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_holdings_record_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.holdings_record FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_holdings_record_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.holdings_record_set_ol_version() RETURNS trigger AS $$ BEGIN CASE TG_OP WHEN 'INSERT' THEN NEW.jsonb = jsonb_set(NEW.jsonb, '{_version}', to_jsonb(1)); WHEN 'UPDATE' THEN IF NEW.jsonb->'_version' IS DISTINCT FROM OLD.jsonb->'_version' THEN RAISE NOTICE 'Ignoring optimistic locking conflict while overwriting changed record %: ' 'Stored _version is %, _version of request is %', OLD.id, OLD.jsonb->'_version', NEW.jsonb->'_version' USING ERRCODE = '23F09', TABLE = 'holdings_record', SCHEMA = 'test_tenant_mod_inventory_storage'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{_version}', to_jsonb(COALESCE((OLD.jsonb->>'_version')::numeric + 1, 1))); END CASE; RETURN NEW; END; $$ LANGUAGE plpgsql; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.holdings_record_set_ol_version() RETURNS trigger AS $$ BEGIN CASE TG_OP WHEN 'INSERT' THEN NEW.jsonb = jsonb_set(NEW.jsonb, '{_version}', to_jsonb(1)); WHEN 'UPDATE' THEN IF NEW.jsonb->'_version' IS DISTINCT FROM OLD.jsonb->'_version' THEN RAISE NOTICE 'Ignoring optimistic locking conflict while overwriting changed record %: ' 'Stored _version is %, _version of request is %', OLD.id, OLD.jsonb->'_version', NEW.jsonb->'_version' USING ERRCODE = '23F09', TABLE = 'holdings_record', SCHEMA = 'test_tenant_mod_inventory_storage'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{_version}', to_jsonb(COALESCE((OLD.jsonb->>'_version')::numeric + 1, 1))); END CASE; RETURN NEW; END; $$ LANGUAGE plpgsql; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_holdings_record_ol_version_trigger ON test_tenant_mod_inventory_storage.holdings_record CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_holdings_record_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.holdings_record" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_holdings_record_ol_version_trigger ON test_tenant_mod_inventory_storage.holdings_record CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_holdings_record_ol_version_trigger BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.holdings_record FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.holdings_record_set_ol_version(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_holdings_record_ol_version_trigger BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.holdings_record FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.holdings_record_set_ol_version(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.audit_holdings_record_changes() RETURNS TRIGGER AS $holdings_record_audit$ DECLARE jsonb JSONB; uuidtext TEXT; uuid UUID; BEGIN jsonb = CASE WHEN TG_OP = 'DELETE' THEN OLD.jsonb ELSE NEW.jsonb END; -- create uuid based on the jsonb value so that concurrent updates of different records are possible. uuidtext = md5(jsonb::text); -- UUID version byte uuidtext = overlay(uuidtext placing '4' from 13); -- UUID variant byte uuidtext = overlay(uuidtext placing '8' from 17); uuid = uuidtext::uuid; -- If uuid is already in use increment until an unused is found. This can only happen if the jsonb content -- is exactly the same. This should be very rare when it includes a timestamp. WHILE EXISTS (SELECT 1 FROM test_tenant_mod_inventory_storage.audit_holdings_record WHERE id = uuid) LOOP uuid = test_tenant_mod_inventory_storage.next_uuid(uuid); END LOOP; jsonb = jsonb_build_object( 'id', to_jsonb(uuid::text), 'record', jsonb, 'operation', to_jsonb(left(TG_OP, 1)), 'createdDate', to_jsonb(current_timestamp::text)); IF (TG_OP = 'DELETE') THEN ELSIF (TG_OP = 'UPDATE') THEN ELSIF (TG_OP = 'INSERT') THEN END IF; INSERT INTO test_tenant_mod_inventory_storage.audit_holdings_record VALUES (uuid, jsonb); RETURN CASE WHEN TG_OP = 'DELETE' THEN OLD ELSE NEW END; END; $holdings_record_audit$ LANGUAGE plpgsql; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.audit_holdings_record_changes() RETURNS TRIGGER AS $holdings_record_audit$ DECLARE jsonb JSONB; uuidtext TEXT; uuid UUID; BEGIN jsonb = CASE WHEN TG_OP = 'DELETE' THEN OLD.jsonb ELSE NEW.jsonb END; -- create uuid based on the jsonb value so that concurrent updates of different records are possible. uuidtext = md5(jsonb::text); -- UUID version byte uuidtext = overlay(uuidtext placing '4' from 13); -- UUID variant byte uuidtext = overlay(uuidtext placing '8' from 17); uuid = uuidtext::uuid; -- If uuid is already in use increment until an unused is found. This can only happen if the jsonb content -- is exactly the same. This should be very rare when it includes a timestamp. WHILE EXISTS (SELECT 1 FROM test_tenant_mod_inventory_storage.audit_holdings_record WHERE id = uuid) LOOP uuid = test_tenant_mod_inventory_storage.next_uuid(uuid); END LOOP; jsonb = jsonb_build_object( 'id', to_jsonb(uuid::text), 'record', jsonb, 'operation', to_jsonb(left(TG_OP, 1)), 'createdDate', to_jsonb(current_timestamp::text)); IF (TG_OP = 'DELETE') THEN ELSIF (TG_OP = 'UPDATE') THEN ELSIF (TG_OP = 'INSERT') THEN END IF; INSERT INTO test_tenant_mod_inventory_storage.audit_holdings_record VALUES (uuid, jsonb); RETURN CASE WHEN TG_OP = 'DELETE' THEN OLD ELSE NEW END; END; $holdings_record_audit$ LANGUAGE plpgsql; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS audit_holdings_record ON test_tenant_mod_inventory_storage.holdings_record CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "audit_holdings_record" for relation "test_tenant_mod_inventory_storage.holdings_record" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS audit_holdings_record ON test_tenant_mod_inventory_storage.holdings_record CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER audit_holdings_record AFTER INSERT OR UPDATE OR DELETE ON test_tenant_mod_inventory_storage.holdings_record FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.audit_holdings_record_changes(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER audit_holdings_record AFTER INSERT OR UPDATE OR DELETE ON test_tenant_mod_inventory_storage.holdings_record FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.audit_holdings_record_changes(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS audit_holdings_record ON test_tenant_mod_inventory_storage.holdings_record CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS audit_holdings_record ON test_tenant_mod_inventory_storage.holdings_record CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER audit_holdings_record AFTER DELETE ON test_tenant_mod_inventory_storage.holdings_record FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.audit_holdings_record_changes(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER audit_holdings_record AFTER DELETE ON test_tenant_mod_inventory_storage.holdings_record FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.audit_holdings_record_changes(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.item ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.item ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.audit_item ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.audit_item ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_item ON test_tenant_mod_inventory_storage.item CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_item" for relation "test_tenant_mod_inventory_storage.item" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_item ON test_tenant_mod_inventory_storage.item CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.item CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.item" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.item CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.item FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.item FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.item ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.item ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'item', 'item_accessionNumber_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS item_accessionNumber_idx ON test_tenant_mod_inventory_storage.item ' || $rmb$(left(lower(jsonb->>'accessionNumber'),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "item_accessionnumber_idx" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS item_accessionNumber_idx" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'item', 'item_accessionNumber_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS item_accessionNumber_idx ON test_tenant_mod_inventory_storage.item ' || $rmb$(left(lower(jsonb->>'accessionNumber'),600))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'item', 'item_accessionNumber_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS item_accessionNumber_idx ON test_tenant_mod_inventory_storage.item ' || $rmb$(left(lower(jsonb->>'accessionNumber'),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'item', 'item_barcode_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS item_barcode_idx ON test_tenant_mod_inventory_storage.item ' || $rmb$(left(lower(f_unaccent(jsonb->>'barcode')),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "item_barcode_idx" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS item_barcode_idx" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'item', 'item_barcode_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS item_barcode_idx ON test_tenant_mod_inventory_storage.item ' || $rmb$(left(lower(f_unaccent(jsonb->>'barcode')),600))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'item', 'item_barcode_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS item_barcode_idx ON test_tenant_mod_inventory_storage.item ' || $rmb$(left(lower(f_unaccent(jsonb->>'barcode')),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'item', 'item_status_name_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS item_status_name_idx ON test_tenant_mod_inventory_storage.item ' || $rmb$(left(lower(f_unaccent(jsonb->'status'->>'name')),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "item_status_name_idx" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS item_status_name_idx" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'item', 'item_status_name_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS item_status_name_idx ON test_tenant_mod_inventory_storage.item ' || $rmb$(left(lower(f_unaccent(jsonb->'status'->>'name')),600))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'item', 'item_status_name_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS item_status_name_idx ON test_tenant_mod_inventory_storage.item ' || $rmb$(left(lower(f_unaccent(jsonb->'status'->>'name')),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'item', 'item_callNumberAndSuffix_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS item_callNumberAndSuffix_idx ON test_tenant_mod_inventory_storage.item ' || $rmb$(left(lower(concat_space_sql(item.jsonb->'effectiveCallNumberComponents'->>'callNumber' , item.jsonb->'effectiveCallNumberComponents'->>'suffix')),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "item_callnumberandsuffix_idx" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS item_callNumberAndSuffix_idx" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'item', 'item_callNumberAndSuffix_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS item_callNumberAndSuffix_idx ON test_tenant_mod_inventory_storage.item ' || $rmb$(left(lower(concat_space_sql(item.jsonb->'effectiveCallNumberComponents'->>'callNumber' , item.jsonb->'effectiveCallNumberComponents'->>'suffix')),600))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'item', 'item_callNumberAndSuffix_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS item_callNumberAndSuffix_idx ON test_tenant_mod_inventory_storage.item ' || $rmb$(left(lower(concat_space_sql(item.jsonb->'effectiveCallNumberComponents'->>'callNumber' , item.jsonb->'effectiveCallNumberComponents'->>'suffix')),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'item', 'item_fullCallNumber_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS item_fullCallNumber_idx ON test_tenant_mod_inventory_storage.item ' || $rmb$(left(lower(concat_space_sql(item.jsonb->'effectiveCallNumberComponents'->>'prefix' , item.jsonb->'effectiveCallNumberComponents'->>'callNumber' , item.jsonb->'effectiveCallNumberComponents'->>'suffix')),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "item_fullcallnumber_idx" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS item_fullCallNumber_idx" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'item', 'item_fullCallNumber_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS item_fullCallNumber_idx ON test_tenant_mod_inventory_storage.item ' || $rmb$(left(lower(concat_space_sql(item.jsonb->'effectiveCallNumberComponents'->>'prefix' , item.jsonb->'effectiveCallNumberComponents'->>'callNumber' , item.jsonb->'effectiveCallNumberComponents'->>'suffix')),600))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'item', 'item_fullCallNumber_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS item_fullCallNumber_idx ON test_tenant_mod_inventory_storage.item ' || $rmb$(left(lower(concat_space_sql(item.jsonb->'effectiveCallNumberComponents'->>'prefix' , item.jsonb->'effectiveCallNumberComponents'->>'callNumber' , item.jsonb->'effectiveCallNumberComponents'->>'suffix')),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'item', 'item_discoverySuppress_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS item_discoverySuppress_idx ON test_tenant_mod_inventory_storage.item ' || $rmb$(left(lower(jsonb->>'discoverySuppress'),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "item_discoverysuppress_idx" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS item_discoverySuppress_idx" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'item', 'item_discoverySuppress_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS item_discoverySuppress_idx ON test_tenant_mod_inventory_storage.item ' || $rmb$(left(lower(jsonb->>'discoverySuppress'),600))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'item', 'item_discoverySuppress_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS item_discoverySuppress_idx ON test_tenant_mod_inventory_storage.item ' || $rmb$(left(lower(jsonb->>'discoverySuppress'),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'item', 'item_purchaseOrderLineIdentifier_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS item_purchaseOrderLineIdentifier_idx ON test_tenant_mod_inventory_storage.item ' || $rmb$(left(lower(jsonb->>'purchaseOrderLineIdentifier'),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "item_purchaseorderlineidentifier_idx" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS item_purchaseOrderLineIdentifier_idx" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'item', 'item_purchaseOrderLineIdentifier_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS item_purchaseOrderLineIdentifier_idx ON test_tenant_mod_inventory_storage.item ' || $rmb$(left(lower(jsonb->>'purchaseOrderLineIdentifier'),600))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'item', 'item_purchaseOrderLineIdentifier_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS item_purchaseOrderLineIdentifier_idx ON test_tenant_mod_inventory_storage.item ' || $rmb$(left(lower(jsonb->>'purchaseOrderLineIdentifier'),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'item', 'item_effectiveCallNumberComponents_callNumber_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS item_effectiveCallNumberComponents_callNumber_idx ON test_tenant_mod_inventory_storage.item ' || $rmb$(left(lower(jsonb->'effectiveCallNumberComponents'->>'callNumber'),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "item_effectivecallnumbercomponents_callnumber_idx" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS item_effectiveCallNumberComponents_callNumber_idx" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'item', 'item_effectiveCallNumberComponents_callNumber_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS item_effectiveCallNumberComponents_callNumber_idx ON test_tenant_mod_inventory_storage.item ' || $rmb$(left(lower(jsonb->'effectiveCallNumberComponents'->>'callNumber'),600))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'item', 'item_effectiveCallNumberComponents_callNumber_idx', 'ADD', 'CREATE INDEX IF NOT EXISTS item_effectiveCallNumberComponents_callNumber_idx ON test_tenant_mod_inventory_storage.item ' || $rmb$(left(lower(jsonb->'effectiveCallNumberComponents'->>'callNumber'),600))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'item', 'item_hrid_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS item_hrid_idx_unique ON test_tenant_mod_inventory_storage.item ' || $rmb$(lower(f_unaccent(jsonb->>'hrid')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "item_hrid_idx_unique" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS item_hrid_idx_unique" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'item', 'item_hrid_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS item_hrid_idx_unique ON test_tenant_mod_inventory_storage.item ' || $rmb$(lower(f_unaccent(jsonb->>'hrid')))$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'item', 'item_hrid_idx_unique', 'ADD', 'CREATE UNIQUE INDEX IF NOT EXISTS item_hrid_idx_unique ON test_tenant_mod_inventory_storage.item ' || $rmb$(lower(f_unaccent(jsonb->>'hrid')))$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'item', 'item_barcode_idx_gin', 'ADD', 'CREATE INDEX IF NOT EXISTS item_barcode_idx_gin ON test_tenant_mod_inventory_storage.item USING GIN ' || $rmb$((lower(f_unaccent(jsonb->>'barcode'))) public.gin_trgm_ops)$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "item_barcode_idx_gin" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS item_barcode_idx_gin" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'item', 'item_barcode_idx_gin', 'ADD', 'CREATE INDEX IF NOT EXISTS item_barcode_idx_gin ON test_tenant_mod_inventory_storage.item USING GIN ' || $rmb$((lower(f_unaccent(jsonb->>'barcode'))) public.gin_trgm_ops)$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'item', 'item_barcode_idx_gin', 'ADD', 'CREATE INDEX IF NOT EXISTS item_barcode_idx_gin ON test_tenant_mod_inventory_storage.item USING GIN ' || $rmb$((lower(f_unaccent(jsonb->>'barcode'))) public.gin_trgm_ops)$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'item', 'item_status_name_idx_gin', 'ADD', 'CREATE INDEX IF NOT EXISTS item_status_name_idx_gin ON test_tenant_mod_inventory_storage.item USING GIN ' || $rmb$((lower(f_unaccent(jsonb->'status'->>'name'))) public.gin_trgm_ops)$rmb$ ); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "item_status_name_idx_gin" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS item_status_name_idx_gin" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'item', 'item_status_name_idx_gin', 'ADD', 'CREATE INDEX IF NOT EXISTS item_status_name_idx_gin ON test_tenant_mod_inventory_storage.item USING GIN ' || $rmb$((lower(f_unaccent(jsonb->'status'->>'name'))) public.gin_trgm_ops)$rmb$ )" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'item', 'item_status_name_idx_gin', 'ADD', 'CREATE INDEX IF NOT EXISTS item_status_name_idx_gin ON test_tenant_mod_inventory_storage.item USING GIN ' || $rmb$((lower(f_unaccent(jsonb->'status'->>'name'))) public.gin_trgm_ops)$rmb$ ); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'item', 'item_barcode_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS item_barcode_idx_ft ON test_tenant_mod_inventory_storage.item USING GIN ' || $rmb$( get_tsvector(f_unaccent(jsonb->>'barcode')) )$rmb$); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "item_barcode_idx_ft" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS item_barcode_idx_ft" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'item', 'item_barcode_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS item_barcode_idx_ft ON test_tenant_mod_inventory_storage.item USING GIN ' || $rmb$( get_tsvector(f_unaccent(jsonb->>'barcode')) )$rmb$)" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'item', 'item_barcode_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS item_barcode_idx_ft ON test_tenant_mod_inventory_storage.item USING GIN ' || $rmb$( get_tsvector(f_unaccent(jsonb->>'barcode')) )$rmb$); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'item', 'item_callNumberAndSuffixNormalized_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS item_callNumberAndSuffixNormalized_idx_ft ON test_tenant_mod_inventory_storage.item USING GIN ' || $rmb$( get_tsvector(normalize_item_call_number_and_suffix(jsonb)) )$rmb$); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "item_callnumberandsuffixnormalized_idx_ft" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS item_callNumberAndSuffixNormalized_idx_ft" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'item', 'item_callNumberAndSuffixNormalized_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS item_callNumberAndSuffixNormalized_idx_ft ON test_tenant_mod_inventory_storage.item USING GIN ' || $rmb$( get_tsvector(normalize_item_call_number_and_suffix(jsonb)) )$rmb$)" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'item', 'item_callNumberAndSuffixNormalized_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS item_callNumberAndSuffixNormalized_idx_ft ON test_tenant_mod_inventory_storage.item USING GIN ' || $rmb$( get_tsvector(normalize_item_call_number_and_suffix(jsonb)) )$rmb$); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $do$ BEGIN PERFORM rmb_internal_index( 'item', 'item_fullCallNumberNormalized_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS item_fullCallNumberNormalized_idx_ft ON test_tenant_mod_inventory_storage.item USING GIN ' || $rmb$( get_tsvector(normalize_item_full_call_number(jsonb)) )$rmb$); END $do$; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "item_fullcallnumbernormalized_idx_ft" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='SQL statement "DROP INDEX IF EXISTS item_fullCallNumberNormalized_idx_ft" PL/pgSQL function rmb_internal_index(text,text,text,text) line 23 at EXECUTE SQL statement "SELECT rmb_internal_index( 'item', 'item_fullCallNumberNormalized_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS item_fullCallNumberNormalized_idx_ft ON test_tenant_mod_inventory_storage.item USING GIN ' || $rmb$( get_tsvector(normalize_item_full_call_number(jsonb)) )$rmb$)" PL/pgSQL function inline_code_block line 3 at PERFORM', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $do$ BEGIN PERFORM rmb_internal_index( 'item', 'item_fullCallNumberNormalized_idx_ft', 'ADD', 'CREATE INDEX IF NOT EXISTS item_fullCallNumberNormalized_idx_ft ON test_tenant_mod_inventory_storage.item USING GIN ' || $rmb$( get_tsvector(normalize_item_full_call_number(jsonb)) )$rmb$); END $do$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.item ADD COLUMN IF NOT EXISTS holdingsRecordId UUID; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.item ADD COLUMN IF NOT EXISTS holdingsRecordId UUID; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ BEGIN BEGIN ALTER TABLE item ADD CONSTRAINT holdingsRecordId_holdings_record_fkey FOREIGN KEY (holdingsRecordId) REFERENCES holdings_record; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ BEGIN BEGIN ALTER TABLE item ADD CONSTRAINT holdingsRecordId_holdings_record_fkey FOREIGN KEY (holdingsRecordId) REFERENCES holdings_record; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE INDEX IF NOT EXISTS item_holdingsRecordId_idx ON test_tenant_mod_inventory_storage.item (holdingsRecordId); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE INDEX IF NOT EXISTS item_holdingsRecordId_idx ON test_tenant_mod_inventory_storage.item (holdingsRecordId); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} INSERT INTO rmb_internal_analyze VALUES ('item'); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed INSERT INTO rmb_internal_analyze VALUES ('item'); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.item ADD COLUMN IF NOT EXISTS permanentLoanTypeId UUID; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.item ADD COLUMN IF NOT EXISTS permanentLoanTypeId UUID; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ BEGIN BEGIN ALTER TABLE item ADD CONSTRAINT permanentLoanTypeId_loan_type_fkey FOREIGN KEY (permanentLoanTypeId) REFERENCES loan_type; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ BEGIN BEGIN ALTER TABLE item ADD CONSTRAINT permanentLoanTypeId_loan_type_fkey FOREIGN KEY (permanentLoanTypeId) REFERENCES loan_type; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE INDEX IF NOT EXISTS item_permanentLoanTypeId_idx ON test_tenant_mod_inventory_storage.item (permanentLoanTypeId); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE INDEX IF NOT EXISTS item_permanentLoanTypeId_idx ON test_tenant_mod_inventory_storage.item (permanentLoanTypeId); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} INSERT INTO rmb_internal_analyze VALUES ('item'); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed INSERT INTO rmb_internal_analyze VALUES ('item'); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.item ADD COLUMN IF NOT EXISTS temporaryLoanTypeId UUID; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.item ADD COLUMN IF NOT EXISTS temporaryLoanTypeId UUID; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ BEGIN BEGIN ALTER TABLE item ADD CONSTRAINT temporaryLoanTypeId_loan_type_fkey FOREIGN KEY (temporaryLoanTypeId) REFERENCES loan_type; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ BEGIN BEGIN ALTER TABLE item ADD CONSTRAINT temporaryLoanTypeId_loan_type_fkey FOREIGN KEY (temporaryLoanTypeId) REFERENCES loan_type; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE INDEX IF NOT EXISTS item_temporaryLoanTypeId_idx ON test_tenant_mod_inventory_storage.item (temporaryLoanTypeId); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE INDEX IF NOT EXISTS item_temporaryLoanTypeId_idx ON test_tenant_mod_inventory_storage.item (temporaryLoanTypeId); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} INSERT INTO rmb_internal_analyze VALUES ('item'); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed INSERT INTO rmb_internal_analyze VALUES ('item'); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.item ADD COLUMN IF NOT EXISTS materialTypeId UUID; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.item ADD COLUMN IF NOT EXISTS materialTypeId UUID; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ BEGIN BEGIN ALTER TABLE item ADD CONSTRAINT materialTypeId_material_type_fkey FOREIGN KEY (materialTypeId) REFERENCES material_type; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ BEGIN BEGIN ALTER TABLE item ADD CONSTRAINT materialTypeId_material_type_fkey FOREIGN KEY (materialTypeId) REFERENCES material_type; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE INDEX IF NOT EXISTS item_materialTypeId_idx ON test_tenant_mod_inventory_storage.item (materialTypeId); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE INDEX IF NOT EXISTS item_materialTypeId_idx ON test_tenant_mod_inventory_storage.item (materialTypeId); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} INSERT INTO rmb_internal_analyze VALUES ('item'); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed INSERT INTO rmb_internal_analyze VALUES ('item'); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.item ADD COLUMN IF NOT EXISTS permanentLocationId UUID; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.item ADD COLUMN IF NOT EXISTS permanentLocationId UUID; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ BEGIN BEGIN ALTER TABLE item ADD CONSTRAINT permanentLocationId_location_fkey FOREIGN KEY (permanentLocationId) REFERENCES location; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ BEGIN BEGIN ALTER TABLE item ADD CONSTRAINT permanentLocationId_location_fkey FOREIGN KEY (permanentLocationId) REFERENCES location; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE INDEX IF NOT EXISTS item_permanentLocationId_idx ON test_tenant_mod_inventory_storage.item (permanentLocationId); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE INDEX IF NOT EXISTS item_permanentLocationId_idx ON test_tenant_mod_inventory_storage.item (permanentLocationId); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} INSERT INTO rmb_internal_analyze VALUES ('item'); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed INSERT INTO rmb_internal_analyze VALUES ('item'); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.item ADD COLUMN IF NOT EXISTS temporaryLocationId UUID; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.item ADD COLUMN IF NOT EXISTS temporaryLocationId UUID; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ BEGIN BEGIN ALTER TABLE item ADD CONSTRAINT temporaryLocationId_location_fkey FOREIGN KEY (temporaryLocationId) REFERENCES location; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ BEGIN BEGIN ALTER TABLE item ADD CONSTRAINT temporaryLocationId_location_fkey FOREIGN KEY (temporaryLocationId) REFERENCES location; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE INDEX IF NOT EXISTS item_temporaryLocationId_idx ON test_tenant_mod_inventory_storage.item (temporaryLocationId); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE INDEX IF NOT EXISTS item_temporaryLocationId_idx ON test_tenant_mod_inventory_storage.item (temporaryLocationId); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} INSERT INTO rmb_internal_analyze VALUES ('item'); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed INSERT INTO rmb_internal_analyze VALUES ('item'); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.item ADD COLUMN IF NOT EXISTS effectiveLocationId UUID; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.item ADD COLUMN IF NOT EXISTS effectiveLocationId UUID; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ BEGIN BEGIN ALTER TABLE item ADD CONSTRAINT effectiveLocationId_location_fkey FOREIGN KEY (effectiveLocationId) REFERENCES location; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ BEGIN BEGIN ALTER TABLE item ADD CONSTRAINT effectiveLocationId_location_fkey FOREIGN KEY (effectiveLocationId) REFERENCES location; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE INDEX IF NOT EXISTS item_effectiveLocationId_idx ON test_tenant_mod_inventory_storage.item (effectiveLocationId); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE INDEX IF NOT EXISTS item_effectiveLocationId_idx ON test_tenant_mod_inventory_storage.item (effectiveLocationId); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} INSERT INTO rmb_internal_analyze VALUES ('item'); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed INSERT INTO rmb_internal_analyze VALUES ('item'); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.update_item_references() RETURNS TRIGGER AS $$ BEGIN NEW.holdingsRecordId = (NEW.jsonb->>'holdingsRecordId'); NEW.permanentLoanTypeId = (NEW.jsonb->>'permanentLoanTypeId'); NEW.temporaryLoanTypeId = (NEW.jsonb->>'temporaryLoanTypeId'); NEW.materialTypeId = (NEW.jsonb->>'materialTypeId'); NEW.permanentLocationId = (NEW.jsonb->>'permanentLocationId'); NEW.temporaryLocationId = (NEW.jsonb->>'temporaryLocationId'); NEW.effectiveLocationId = (NEW.jsonb->>'effectiveLocationId'); RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.update_item_references() RETURNS TRIGGER AS $$ BEGIN NEW.holdingsRecordId = (NEW.jsonb->>'holdingsRecordId'); NEW.permanentLoanTypeId = (NEW.jsonb->>'permanentLoanTypeId'); NEW.temporaryLoanTypeId = (NEW.jsonb->>'temporaryLoanTypeId'); NEW.materialTypeId = (NEW.jsonb->>'materialTypeId'); NEW.permanentLocationId = (NEW.jsonb->>'permanentLocationId'); NEW.temporaryLocationId = (NEW.jsonb->>'temporaryLocationId'); NEW.effectiveLocationId = (NEW.jsonb->>'effectiveLocationId'); RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_item_references ON test_tenant_mod_inventory_storage.item CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_item_references" for relation "test_tenant_mod_inventory_storage.item" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_item_references ON test_tenant_mod_inventory_storage.item CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER update_item_references BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.item FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.update_item_references(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER update_item_references BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.item FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.update_item_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ DECLARE version TEXT; i INT; BEGIN SELECT jsonb->>'rmbVersion' INTO version FROM rmb_internal; IF version !~ '^(\d\.|1\d\.|2\d\.|30\.0\.)' THEN RETURN; END IF; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE item DROP CONSTRAINT IF EXISTS ' || 'holdingsRecordId_holdings_record_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE item DROP CONSTRAINT IF EXISTS ' || 'permanentLoanTypeId_loan_type_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE item DROP CONSTRAINT IF EXISTS ' || 'temporaryLoanTypeId_loan_type_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE item DROP CONSTRAINT IF EXISTS ' || 'materialTypeId_material_type_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE item DROP CONSTRAINT IF EXISTS ' || 'permanentLocationId_location_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE item DROP CONSTRAINT IF EXISTS ' || 'temporaryLocationId_location_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE item DROP CONSTRAINT IF EXISTS ' || 'effectiveLocationId_location_fkey' || i; END LOOP; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ DECLARE version TEXT; i INT; BEGIN SELECT jsonb->>'rmbVersion' INTO version FROM rmb_internal; IF version !~ '^(\d\.|1\d\.|2\d\.|30\.0\.)' THEN RETURN; END IF; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE item DROP CONSTRAINT IF EXISTS ' || 'holdingsRecordId_holdings_record_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE item DROP CONSTRAINT IF EXISTS ' || 'permanentLoanTypeId_loan_type_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE item DROP CONSTRAINT IF EXISTS ' || 'temporaryLoanTypeId_loan_type_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE item DROP CONSTRAINT IF EXISTS ' || 'materialTypeId_material_type_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE item DROP CONSTRAINT IF EXISTS ' || 'permanentLocationId_location_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE item DROP CONSTRAINT IF EXISTS ' || 'temporaryLocationId_location_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE item DROP CONSTRAINT IF EXISTS ' || 'effectiveLocationId_location_fkey' || i; END LOOP; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.item_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.item_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_item_md_trigger ON test_tenant_mod_inventory_storage.item CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_item_md_trigger" for relation "test_tenant_mod_inventory_storage.item" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_item_md_trigger ON test_tenant_mod_inventory_storage.item CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_item_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.item FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.item_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_item_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.item FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.item_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_item_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_item_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_item_md_json_trigger ON test_tenant_mod_inventory_storage.item CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_item_md_json_trigger" for relation "test_tenant_mod_inventory_storage.item" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_item_md_json_trigger ON test_tenant_mod_inventory_storage.item CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_item_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.item FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_item_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_item_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.item FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_item_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.item_set_ol_version() RETURNS trigger AS $$ BEGIN CASE TG_OP WHEN 'INSERT' THEN NEW.jsonb = jsonb_set(NEW.jsonb, '{_version}', to_jsonb(1)); WHEN 'UPDATE' THEN IF NEW.jsonb->'_version' IS DISTINCT FROM OLD.jsonb->'_version' THEN RAISE NOTICE 'Ignoring optimistic locking conflict while overwriting changed record %: ' 'Stored _version is %, _version of request is %', OLD.id, OLD.jsonb->'_version', NEW.jsonb->'_version' USING ERRCODE = '23F09', TABLE = 'item', SCHEMA = 'test_tenant_mod_inventory_storage'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{_version}', to_jsonb(COALESCE((OLD.jsonb->>'_version')::numeric + 1, 1))); END CASE; RETURN NEW; END; $$ LANGUAGE plpgsql; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.item_set_ol_version() RETURNS trigger AS $$ BEGIN CASE TG_OP WHEN 'INSERT' THEN NEW.jsonb = jsonb_set(NEW.jsonb, '{_version}', to_jsonb(1)); WHEN 'UPDATE' THEN IF NEW.jsonb->'_version' IS DISTINCT FROM OLD.jsonb->'_version' THEN RAISE NOTICE 'Ignoring optimistic locking conflict while overwriting changed record %: ' 'Stored _version is %, _version of request is %', OLD.id, OLD.jsonb->'_version', NEW.jsonb->'_version' USING ERRCODE = '23F09', TABLE = 'item', SCHEMA = 'test_tenant_mod_inventory_storage'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{_version}', to_jsonb(COALESCE((OLD.jsonb->>'_version')::numeric + 1, 1))); END CASE; RETURN NEW; END; $$ LANGUAGE plpgsql; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_item_ol_version_trigger ON test_tenant_mod_inventory_storage.item CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_item_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.item" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_item_ol_version_trigger ON test_tenant_mod_inventory_storage.item CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_item_ol_version_trigger BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.item FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.item_set_ol_version(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_item_ol_version_trigger BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.item FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.item_set_ol_version(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.audit_item_changes() RETURNS TRIGGER AS $item_audit$ DECLARE jsonb JSONB; uuidtext TEXT; uuid UUID; BEGIN jsonb = CASE WHEN TG_OP = 'DELETE' THEN OLD.jsonb ELSE NEW.jsonb END; -- create uuid based on the jsonb value so that concurrent updates of different records are possible. uuidtext = md5(jsonb::text); -- UUID version byte uuidtext = overlay(uuidtext placing '4' from 13); -- UUID variant byte uuidtext = overlay(uuidtext placing '8' from 17); uuid = uuidtext::uuid; -- If uuid is already in use increment until an unused is found. This can only happen if the jsonb content -- is exactly the same. This should be very rare when it includes a timestamp. WHILE EXISTS (SELECT 1 FROM test_tenant_mod_inventory_storage.audit_item WHERE id = uuid) LOOP uuid = test_tenant_mod_inventory_storage.next_uuid(uuid); END LOOP; jsonb = jsonb_build_object( 'id', to_jsonb(uuid::text), 'record', jsonb, 'operation', to_jsonb(left(TG_OP, 1)), 'createdDate', to_jsonb(current_timestamp::text)); IF (TG_OP = 'DELETE') THEN ELSIF (TG_OP = 'UPDATE') THEN ELSIF (TG_OP = 'INSERT') THEN END IF; INSERT INTO test_tenant_mod_inventory_storage.audit_item VALUES (uuid, jsonb); RETURN CASE WHEN TG_OP = 'DELETE' THEN OLD ELSE NEW END; END; $item_audit$ LANGUAGE plpgsql; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.audit_item_changes() RETURNS TRIGGER AS $item_audit$ DECLARE jsonb JSONB; uuidtext TEXT; uuid UUID; BEGIN jsonb = CASE WHEN TG_OP = 'DELETE' THEN OLD.jsonb ELSE NEW.jsonb END; -- create uuid based on the jsonb value so that concurrent updates of different records are possible. uuidtext = md5(jsonb::text); -- UUID version byte uuidtext = overlay(uuidtext placing '4' from 13); -- UUID variant byte uuidtext = overlay(uuidtext placing '8' from 17); uuid = uuidtext::uuid; -- If uuid is already in use increment until an unused is found. This can only happen if the jsonb content -- is exactly the same. This should be very rare when it includes a timestamp. WHILE EXISTS (SELECT 1 FROM test_tenant_mod_inventory_storage.audit_item WHERE id = uuid) LOOP uuid = test_tenant_mod_inventory_storage.next_uuid(uuid); END LOOP; jsonb = jsonb_build_object( 'id', to_jsonb(uuid::text), 'record', jsonb, 'operation', to_jsonb(left(TG_OP, 1)), 'createdDate', to_jsonb(current_timestamp::text)); IF (TG_OP = 'DELETE') THEN ELSIF (TG_OP = 'UPDATE') THEN ELSIF (TG_OP = 'INSERT') THEN END IF; INSERT INTO test_tenant_mod_inventory_storage.audit_item VALUES (uuid, jsonb); RETURN CASE WHEN TG_OP = 'DELETE' THEN OLD ELSE NEW END; END; $item_audit$ LANGUAGE plpgsql; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS audit_item ON test_tenant_mod_inventory_storage.item CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "audit_item" for relation "test_tenant_mod_inventory_storage.item" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS audit_item ON test_tenant_mod_inventory_storage.item CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER audit_item AFTER INSERT OR UPDATE OR DELETE ON test_tenant_mod_inventory_storage.item FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.audit_item_changes(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER audit_item AFTER INSERT OR UPDATE OR DELETE ON test_tenant_mod_inventory_storage.item FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.audit_item_changes(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS audit_item ON test_tenant_mod_inventory_storage.item CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS audit_item ON test_tenant_mod_inventory_storage.item CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER audit_item AFTER DELETE ON test_tenant_mod_inventory_storage.item FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.audit_item_changes(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER audit_item AFTER DELETE ON test_tenant_mod_inventory_storage.item FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.audit_item_changes(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.hrid_settings ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.hrid_settings ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_hrid_settings ON test_tenant_mod_inventory_storage.hrid_settings CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_hrid_settings" for relation "test_tenant_mod_inventory_storage.hrid_settings" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_hrid_settings ON test_tenant_mod_inventory_storage.hrid_settings CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.hrid_settings CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.hrid_settings" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.hrid_settings CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.hrid_settings FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.hrid_settings FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.hrid_settings DROP COLUMN IF EXISTS creation_date CASCADE, DROP COLUMN IF EXISTS created_by CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='column "creation_date" of relation "hrid_settings" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='tablecmds.c', line='7343', routine='ATExecDropColumn', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='column "created_by" of relation "hrid_settings" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='tablecmds.c', line='7343', routine='ATExecDropColumn', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.hrid_settings DROP COLUMN IF EXISTS creation_date CASCADE, DROP COLUMN IF EXISTS created_by CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_hrid_settings_references ON test_tenant_mod_inventory_storage.hrid_settings CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_hrid_settings_references" for relation "test_tenant_mod_inventory_storage.hrid_settings" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_hrid_settings_references ON test_tenant_mod_inventory_storage.hrid_settings CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_hrid_settings_references(); 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.update_hrid_settings_references() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_hrid_settings_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.hrid_settings_set_md() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.hrid_settings_set_md() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.hrid_settings_set_md() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_hrid_settings_md_trigger ON test_tenant_mod_inventory_storage.hrid_settings CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_hrid_settings_md_trigger" for relation "test_tenant_mod_inventory_storage.hrid_settings" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_hrid_settings_md_trigger ON test_tenant_mod_inventory_storage.hrid_settings CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.set_hrid_settings_md_json() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.set_hrid_settings_md_json() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.set_hrid_settings_md_json() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_hrid_settings_md_json_trigger ON test_tenant_mod_inventory_storage.hrid_settings CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_hrid_settings_md_json_trigger" for relation "test_tenant_mod_inventory_storage.hrid_settings" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_hrid_settings_md_json_trigger ON test_tenant_mod_inventory_storage.hrid_settings CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_hrid_settings_ol_version_trigger ON test_tenant_mod_inventory_storage.hrid_settings CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_hrid_settings_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.hrid_settings" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_hrid_settings_ol_version_trigger ON test_tenant_mod_inventory_storage.hrid_settings CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.hrid_settings_set_ol_version() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.hrid_settings_set_ol_version() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.hrid_settings_set_ol_version() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.hrid_settings ADD COLUMN IF NOT EXISTS lock boolean DEFAULT true UNIQUE CHECK(lock=true); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.hrid_settings ADD COLUMN IF NOT EXISTS lock boolean DEFAULT true UNIQUE CHECK(lock=true); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} INSERT INTO test_tenant_mod_inventory_storage.hrid_settings SELECT 'a501f2a8-5b31-48b2-874d-2191e48db8cd', jsonb_build_object( 'instances', jsonb_build_object('prefix', 'in', 'startNumber', 1), 'holdings', jsonb_build_object('prefix', 'ho', 'startNumber', 1), 'items', jsonb_build_object('prefix', 'it', 'startNumber', 1) ) ON CONFLICT DO NOTHING; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed INSERT INTO test_tenant_mod_inventory_storage.hrid_settings SELECT 'a501f2a8-5b31-48b2-874d-2191e48db8cd', jsonb_build_object( 'instances', jsonb_build_object('prefix', 'in', 'startNumber', 1), 'holdings', jsonb_build_object('prefix', 'ho', 'startNumber', 1), 'items', jsonb_build_object('prefix', 'it', 'startNumber', 1) ) ON CONFLICT DO NOTHING; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE SEQUENCE IF NOT EXISTS test_tenant_mod_inventory_storage.hrid_instances_seq AS INT INCREMENT BY 1 START WITH 1 MAXVALUE 99999999 OWNED BY test_tenant_mod_inventory_storage.hrid_settings.jsonb; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE SEQUENCE IF NOT EXISTS test_tenant_mod_inventory_storage.hrid_instances_seq AS INT INCREMENT BY 1 START WITH 1 MAXVALUE 99999999 OWNED BY test_tenant_mod_inventory_storage.hrid_settings.jsonb; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE SEQUENCE IF NOT EXISTS test_tenant_mod_inventory_storage.hrid_holdings_seq AS INT INCREMENT BY 1 START WITH 1 MAXVALUE 99999999; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE SEQUENCE IF NOT EXISTS test_tenant_mod_inventory_storage.hrid_holdings_seq AS INT INCREMENT BY 1 START WITH 1 MAXVALUE 99999999; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE SEQUENCE IF NOT EXISTS test_tenant_mod_inventory_storage.hrid_items_seq AS INT INCREMENT BY 1 START WITH 1 MAXVALUE 99999999; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE SEQUENCE IF NOT EXISTS test_tenant_mod_inventory_storage.hrid_items_seq AS INT INCREMENT BY 1 START WITH 1 MAXVALUE 99999999; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} GRANT ALL ON SEQUENCE test_tenant_mod_inventory_storage.hrid_instances_seq TO test_tenant_mod_inventory_storage; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed GRANT ALL ON SEQUENCE test_tenant_mod_inventory_storage.hrid_instances_seq TO test_tenant_mod_inventory_storage; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} GRANT ALL ON SEQUENCE test_tenant_mod_inventory_storage.hrid_holdings_seq TO test_tenant_mod_inventory_storage; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed GRANT ALL ON SEQUENCE test_tenant_mod_inventory_storage.hrid_holdings_seq TO test_tenant_mod_inventory_storage; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} GRANT ALL ON SEQUENCE test_tenant_mod_inventory_storage.hrid_items_seq TO test_tenant_mod_inventory_storage; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed GRANT ALL ON SEQUENCE test_tenant_mod_inventory_storage.hrid_items_seq TO test_tenant_mod_inventory_storage; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.preceding_succeeding_title ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.preceding_succeeding_title ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_preceding_succeeding_title ON test_tenant_mod_inventory_storage.preceding_succeeding_title CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_preceding_succeeding_title" for relation "test_tenant_mod_inventory_storage.preceding_succeeding_title" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_preceding_succeeding_title ON test_tenant_mod_inventory_storage.preceding_succeeding_title CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.preceding_succeeding_title CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.preceding_succeeding_title" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.preceding_succeeding_title CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.preceding_succeeding_title FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.preceding_succeeding_title FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.preceding_succeeding_title ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.preceding_succeeding_title ADD COLUMN IF NOT EXISTS creation_date timestamp, ADD COLUMN IF NOT EXISTS created_by text; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.preceding_succeeding_title ADD COLUMN IF NOT EXISTS precedingInstanceId UUID; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.preceding_succeeding_title ADD COLUMN IF NOT EXISTS precedingInstanceId UUID; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ BEGIN BEGIN ALTER TABLE preceding_succeeding_title ADD CONSTRAINT precedingInstanceId_instance_fkey FOREIGN KEY (precedingInstanceId) REFERENCES instance; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ BEGIN BEGIN ALTER TABLE preceding_succeeding_title ADD CONSTRAINT precedingInstanceId_instance_fkey FOREIGN KEY (precedingInstanceId) REFERENCES instance; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE INDEX IF NOT EXISTS preceding_succeeding_title_precedingInstanceId_idx ON test_tenant_mod_inventory_storage.preceding_succeeding_title (precedingInstanceId); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE INDEX IF NOT EXISTS preceding_succeeding_title_precedingInstanceId_idx ON test_tenant_mod_inventory_storage.preceding_succeeding_title (precedingInstanceId); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} INSERT INTO rmb_internal_analyze VALUES ('preceding_succeeding_title'); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed INSERT INTO rmb_internal_analyze VALUES ('preceding_succeeding_title'); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.preceding_succeeding_title ADD COLUMN IF NOT EXISTS succeedingInstanceId UUID; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.preceding_succeeding_title ADD COLUMN IF NOT EXISTS succeedingInstanceId UUID; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ BEGIN BEGIN ALTER TABLE preceding_succeeding_title ADD CONSTRAINT succeedingInstanceId_instance_fkey FOREIGN KEY (succeedingInstanceId) REFERENCES instance; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ BEGIN BEGIN ALTER TABLE preceding_succeeding_title ADD CONSTRAINT succeedingInstanceId_instance_fkey FOREIGN KEY (succeedingInstanceId) REFERENCES instance; EXCEPTION WHEN duplicate_object OR duplicate_table THEN NULL; END; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE INDEX IF NOT EXISTS preceding_succeeding_title_succeedingInstanceId_idx ON test_tenant_mod_inventory_storage.preceding_succeeding_title (succeedingInstanceId); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE INDEX IF NOT EXISTS preceding_succeeding_title_succeedingInstanceId_idx ON test_tenant_mod_inventory_storage.preceding_succeeding_title (succeedingInstanceId); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} INSERT INTO rmb_internal_analyze VALUES ('preceding_succeeding_title'); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed INSERT INTO rmb_internal_analyze VALUES ('preceding_succeeding_title'); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.update_preceding_succeeding_title_references() RETURNS TRIGGER AS $$ BEGIN NEW.precedingInstanceId = (NEW.jsonb->>'precedingInstanceId'); NEW.succeedingInstanceId = (NEW.jsonb->>'succeedingInstanceId'); RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.update_preceding_succeeding_title_references() RETURNS TRIGGER AS $$ BEGIN NEW.precedingInstanceId = (NEW.jsonb->>'precedingInstanceId'); NEW.succeedingInstanceId = (NEW.jsonb->>'succeedingInstanceId'); RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_preceding_succeeding_title_references ON test_tenant_mod_inventory_storage.preceding_succeeding_title CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_preceding_succeeding_title_references" for relation "test_tenant_mod_inventory_storage.preceding_succeeding_title" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_preceding_succeeding_title_references ON test_tenant_mod_inventory_storage.preceding_succeeding_title CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER update_preceding_succeeding_title_references BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.preceding_succeeding_title FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.update_preceding_succeeding_title_references(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER update_preceding_succeeding_title_references BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.preceding_succeeding_title FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.update_preceding_succeeding_title_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DO $$ DECLARE version TEXT; i INT; BEGIN SELECT jsonb->>'rmbVersion' INTO version FROM rmb_internal; IF version !~ '^(\d\.|1\d\.|2\d\.|30\.0\.)' THEN RETURN; END IF; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE preceding_succeeding_title DROP CONSTRAINT IF EXISTS ' || 'precedingInstanceId_instance_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE preceding_succeeding_title DROP CONSTRAINT IF EXISTS ' || 'succeedingInstanceId_instance_fkey' || i; END LOOP; END $$; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DO $$ DECLARE version TEXT; i INT; BEGIN SELECT jsonb->>'rmbVersion' INTO version FROM rmb_internal; IF version !~ '^(\d\.|1\d\.|2\d\.|30\.0\.)' THEN RETURN; END IF; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE preceding_succeeding_title DROP CONSTRAINT IF EXISTS ' || 'precedingInstanceId_instance_fkey' || i; END LOOP; FOR i IN 1..50 LOOP EXECUTE 'ALTER TABLE preceding_succeeding_title DROP CONSTRAINT IF EXISTS ' || 'succeedingInstanceId_instance_fkey' || i; END LOOP; END $$; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.preceding_succeeding_title_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.preceding_succeeding_title_set_md() RETURNS TRIGGER AS $$ DECLARE input text; createdDate timestamp; BEGIN input = NEW.jsonb->'metadata'->>'createdDate'; IF input IS NULL THEN RETURN NEW; END IF; -- time stamp without time zone? IF (input::timestamp::timestamptz = input::timestamptz) THEN -- createdDate already has no time zone, normalize using ::timestamp createdDate = input::timestamp; ELSE -- createdDate has a time zone string -- normalize using ::timestamptz, convert to '+00' time zone and remove time zone string createdDate = input::timestamptz AT TIME ZONE '+00'; END IF; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(createdDate)); NEW.creation_date = createdDate; NEW.created_by = NEW.jsonb->'metadata'->>'createdByUserId'; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_preceding_succeeding_title_md_trigger ON test_tenant_mod_inventory_storage.preceding_succeeding_title CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_preceding_succeeding_title_md_trigger" for relation "test_tenant_mod_inventory_storage.preceding_succeeding_title" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_preceding_succeeding_title_md_trigger ON test_tenant_mod_inventory_storage.preceding_succeeding_title CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_preceding_succeeding_title_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.preceding_succeeding_title FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.preceding_succeeding_title_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_preceding_succeeding_title_md_trigger BEFORE INSERT ON test_tenant_mod_inventory_storage.preceding_succeeding_title FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.preceding_succeeding_title_set_md(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_preceding_succeeding_title_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_preceding_succeeding_title_md_json() RETURNS TRIGGER AS $$ BEGIN if NEW.creation_date IS NULL then RETURN NEW; end if; NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdDate}', to_jsonb(NEW.creation_date)); if NEW.created_by IS NULL then NEW.jsonb = NEW.jsonb #- '{metadata,createdByUserId}'; else NEW.jsonb = jsonb_set(NEW.jsonb, '{metadata,createdByUserId}', to_jsonb(NEW.created_by)); end if; RETURN NEW; END; $$ language 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_preceding_succeeding_title_md_json_trigger ON test_tenant_mod_inventory_storage.preceding_succeeding_title CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_preceding_succeeding_title_md_json_trigger" for relation "test_tenant_mod_inventory_storage.preceding_succeeding_title" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_preceding_succeeding_title_md_json_trigger ON test_tenant_mod_inventory_storage.preceding_succeeding_title CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_preceding_succeeding_title_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.preceding_succeeding_title FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_preceding_succeeding_title_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_preceding_succeeding_title_md_json_trigger BEFORE UPDATE ON test_tenant_mod_inventory_storage.preceding_succeeding_title FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_preceding_succeeding_title_md_json(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_preceding_succeeding_title_ol_version_trigger ON test_tenant_mod_inventory_storage.preceding_succeeding_title CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_preceding_succeeding_title_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.preceding_succeeding_title" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_preceding_succeeding_title_ol_version_trigger ON test_tenant_mod_inventory_storage.preceding_succeeding_title CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.preceding_succeeding_title_set_ol_version() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.preceding_succeeding_title_set_ol_version() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.preceding_succeeding_title_set_ol_version() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.preceding_succeeding_title DROP CONSTRAINT IF EXISTS preceding_or_succeeding_id_is_set; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='constraint "preceding_or_succeeding_id_is_set" of relation "preceding_succeeding_title" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='tablecmds.c', line='10359', routine='ATExecDropConstraint', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.preceding_succeeding_title DROP CONSTRAINT IF EXISTS preceding_or_succeeding_id_is_set; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.preceding_succeeding_title ADD CONSTRAINT preceding_or_succeeding_id_is_set CHECK( jsonb->'precedingInstanceId' IS NOT NULL OR jsonb->'succeedingInstanceId' IS NOT NULL); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.preceding_succeeding_title ADD CONSTRAINT preceding_or_succeeding_id_is_set CHECK( jsonb->'precedingInstanceId' IS NOT NULL OR jsonb->'succeedingInstanceId' IS NOT NULL); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.reindex_job ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TABLE IF NOT EXISTS test_tenant_mod_inventory_storage.reindex_job ( id UUID PRIMARY KEY, jsonb JSONB NOT NULL ); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_injson_reindex_job ON test_tenant_mod_inventory_storage.reindex_job CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_injson_reindex_job" for relation "test_tenant_mod_inventory_storage.reindex_job" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_injson_reindex_job ON test_tenant_mod_inventory_storage.reindex_job CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.reindex_job CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_id_in_jsonb" for relation "test_tenant_mod_inventory_storage.reindex_job" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_id_in_jsonb ON test_tenant_mod_inventory_storage.reindex_job CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.reindex_job FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_id_in_jsonb BEFORE INSERT OR UPDATE ON test_tenant_mod_inventory_storage.reindex_job FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_id_in_jsonb(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.reindex_job DROP COLUMN IF EXISTS creation_date CASCADE, DROP COLUMN IF EXISTS created_by CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='column "creation_date" of relation "reindex_job" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='tablecmds.c', line='7343', routine='ATExecDropColumn', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='column "created_by" of relation "reindex_job" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='tablecmds.c', line='7343', routine='ATExecDropColumn', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.reindex_job DROP COLUMN IF EXISTS creation_date CASCADE, DROP COLUMN IF EXISTS created_by CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_reindex_job_references ON test_tenant_mod_inventory_storage.reindex_job CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_reindex_job_references" for relation "test_tenant_mod_inventory_storage.reindex_job" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_reindex_job_references ON test_tenant_mod_inventory_storage.reindex_job CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_reindex_job_references(); 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.update_reindex_job_references() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.update_reindex_job_references(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.reindex_job_set_md() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.reindex_job_set_md() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.reindex_job_set_md() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_reindex_job_md_trigger ON test_tenant_mod_inventory_storage.reindex_job CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_reindex_job_md_trigger" for relation "test_tenant_mod_inventory_storage.reindex_job" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_reindex_job_md_trigger ON test_tenant_mod_inventory_storage.reindex_job CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.set_reindex_job_md_json() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.set_reindex_job_md_json() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.set_reindex_job_md_json() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_reindex_job_md_json_trigger ON test_tenant_mod_inventory_storage.reindex_job CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_reindex_job_md_json_trigger" for relation "test_tenant_mod_inventory_storage.reindex_job" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_reindex_job_md_json_trigger ON test_tenant_mod_inventory_storage.reindex_job CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_reindex_job_ol_version_trigger ON test_tenant_mod_inventory_storage.reindex_job CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_reindex_job_ol_version_trigger" for relation "test_tenant_mod_inventory_storage.reindex_job" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_reindex_job_ol_version_trigger ON test_tenant_mod_inventory_storage.reindex_job CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.reindex_job_set_ol_version() CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.reindex_job_set_ol_version() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.reindex_job_set_ol_version() CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} START TRANSACTION; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='WARNING', code='25001', message='there is already a transaction in progress', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='xact.c', line='3623', routine='BeginTransactionBlock', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed START TRANSACTION; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.instance DISABLE TRIGGER USER; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.instance DISABLE TRIGGER USER; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} UPDATE test_tenant_mod_inventory_storage.instance SET jsonb = JSONB_SET(instance.jsonb, '{previouslyHeld}', TO_JSONB(false)) WHERE jsonb->>'previouslyHeld' IS NULL; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed UPDATE test_tenant_mod_inventory_storage.instance SET jsonb = JSONB_SET(instance.jsonb, '{previouslyHeld}', TO_JSONB(false)) WHERE jsonb->>'previouslyHeld' IS NULL; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.instance ENABLE TRIGGER USER; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.instance ENABLE TRIGGER USER; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} END TRANSACTION; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed END TRANSACTION; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} START TRANSACTION; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed START TRANSACTION; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} UPDATE test_tenant_mod_inventory_storage.holdings_record SET jsonb = JSONB_SET(holdings_record.jsonb, '{effectiveLocationId}', TO_JSONB(holdings_record.jsonb->>'temporaryLocationId')) WHERE jsonb->>'temporaryLocationId' IS NOT NULL; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed UPDATE test_tenant_mod_inventory_storage.holdings_record SET jsonb = JSONB_SET(holdings_record.jsonb, '{effectiveLocationId}', TO_JSONB(holdings_record.jsonb->>'temporaryLocationId')) WHERE jsonb->>'temporaryLocationId' IS NOT NULL; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} UPDATE test_tenant_mod_inventory_storage.holdings_record SET jsonb = JSONB_SET(holdings_record.jsonb, '{effectiveLocationId}', TO_JSONB(holdings_record.jsonb->>'permanentLocationId')) WHERE jsonb->>'temporaryLocationId' IS NULL; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed UPDATE test_tenant_mod_inventory_storage.holdings_record SET jsonb = JSONB_SET(holdings_record.jsonb, '{effectiveLocationId}', TO_JSONB(holdings_record.jsonb->>'permanentLocationId')) WHERE jsonb->>'temporaryLocationId' IS NULL; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} END TRANSACTION;DROP TRIGGER IF EXISTS update_effective_location_for_items ON test_tenant_mod_inventory_storage.holdings_record; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_effective_location_for_items" for relation "test_tenant_mod_inventory_storage.holdings_record" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed END TRANSACTION;DROP TRIGGER IF EXISTS update_effective_location_for_items ON test_tenant_mod_inventory_storage.holdings_record; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_effective_location ON test_tenant_mod_inventory_storage.item; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_effective_location" for relation "test_tenant_mod_inventory_storage.item" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_effective_location ON test_tenant_mod_inventory_storage.item; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} START TRANSACTION; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed START TRANSACTION; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} UPDATE test_tenant_mod_inventory_storage.hrid_settings SET jsonb = (SELECT jsonb_insert(jsonb, '{commonRetainLeadingZeroes}','true', true) FROM test_tenant_mod_inventory_storage.hrid_settings WHERE id = 'a501f2a8-5b31-48b2-874d-2191e48db8cd') WHERE id = 'a501f2a8-5b31-48b2-874d-2191e48db8cd' and jsonb->>'commonRetainLeadingZeroes' is NULL; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed UPDATE test_tenant_mod_inventory_storage.hrid_settings SET jsonb = (SELECT jsonb_insert(jsonb, '{commonRetainLeadingZeroes}','true', true) FROM test_tenant_mod_inventory_storage.hrid_settings WHERE id = 'a501f2a8-5b31-48b2-874d-2191e48db8cd') WHERE id = 'a501f2a8-5b31-48b2-874d-2191e48db8cd' and jsonb->>'commonRetainLeadingZeroes' is NULL; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} END TRANSACTION; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed END TRANSACTION; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} START TRANSACTION; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed START TRANSACTION; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.item DISABLE TRIGGER USER; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.item DISABLE TRIGGER USER; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} UPDATE test_tenant_mod_inventory_storage.item AS it SET jsonb = JSONB_SET(it.jsonb, '{effectiveLocationId}', COALESCE( it.jsonb->'temporaryLocationId', it.jsonb->'permanentLocationId', hr.jsonb->'temporaryLocationId', hr.jsonb->'permanentLocationId' )), effectivelocationid = COALESCE( it.jsonb->>'temporaryLocationId', it.jsonb->>'permanentLocationId', hr.jsonb->>'temporaryLocationId', hr.jsonb->>'permanentLocationId' )::uuid FROM test_tenant_mod_inventory_storage.holdings_record AS hr WHERE hr.id = it.holdingsrecordid; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed UPDATE test_tenant_mod_inventory_storage.item AS it SET jsonb = JSONB_SET(it.jsonb, '{effectiveLocationId}', COALESCE( it.jsonb->'temporaryLocationId', it.jsonb->'permanentLocationId', hr.jsonb->'temporaryLocationId', hr.jsonb->'permanentLocationId' )), effectivelocationid = COALESCE( it.jsonb->>'temporaryLocationId', it.jsonb->>'permanentLocationId', hr.jsonb->>'temporaryLocationId', hr.jsonb->>'permanentLocationId' )::uuid FROM test_tenant_mod_inventory_storage.holdings_record AS hr WHERE hr.id = it.holdingsrecordid; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.item ENABLE TRIGGER USER; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.item ENABLE TRIGGER USER; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} END TRANSACTION; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed END TRANSACTION; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} START TRANSACTION; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed START TRANSACTION; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.item DISABLE TRIGGER USER; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.item DISABLE TRIGGER USER; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} UPDATE test_tenant_mod_inventory_storage.item SET effectiveLocationId = (jsonb->>'effectiveLocationId')::uuid; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed UPDATE test_tenant_mod_inventory_storage.item SET effectiveLocationId = (jsonb->>'effectiveLocationId')::uuid; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.item ENABLE TRIGGER USER; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.item ENABLE TRIGGER USER; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} END TRANSACTION; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed END TRANSACTION; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} START TRANSACTION; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed START TRANSACTION; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.item DISABLE TRIGGER USER; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.item DISABLE TRIGGER USER; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} UPDATE test_tenant_mod_inventory_storage.item AS it SET jsonb = JSONB_SET( it.jsonb, '{effectiveCallNumberComponents}', jsonb_build_object( 'callNumber', COALESCE(it.jsonb->'itemLevelCallNumber', hr.jsonb->'callNumber'), 'prefix', COALESCE(it.jsonb->'itemLevelCallNumberPrefix', hr.jsonb->'callNumberPrefix'), 'suffix', COALESCE(it.jsonb->'itemLevelCallNumberSuffix', hr.jsonb->'callNumberSuffix'), 'typeId', COALESCE(it.jsonb->'itemLevelCallNumberTypeId', hr.jsonb->'callNumberTypeId') ) ) FROM test_tenant_mod_inventory_storage.holdings_record AS hr WHERE hr.id = it.holdingsrecordid; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed UPDATE test_tenant_mod_inventory_storage.item AS it SET jsonb = JSONB_SET( it.jsonb, '{effectiveCallNumberComponents}', jsonb_build_object( 'callNumber', COALESCE(it.jsonb->'itemLevelCallNumber', hr.jsonb->'callNumber'), 'prefix', COALESCE(it.jsonb->'itemLevelCallNumberPrefix', hr.jsonb->'callNumberPrefix'), 'suffix', COALESCE(it.jsonb->'itemLevelCallNumberSuffix', hr.jsonb->'callNumberSuffix'), 'typeId', COALESCE(it.jsonb->'itemLevelCallNumberTypeId', hr.jsonb->'callNumberTypeId') ) ) FROM test_tenant_mod_inventory_storage.holdings_record AS hr WHERE hr.id = it.holdingsrecordid; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.item ENABLE TRIGGER USER; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.item ENABLE TRIGGER USER; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} END TRANSACTION; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed END TRANSACTION; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_instance_hrid ON test_tenant_mod_inventory_storage.instance CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_instance_hrid" for relation "test_tenant_mod_inventory_storage.instance" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_instance_hrid ON test_tenant_mod_inventory_storage.instance CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.set_instance_hrid CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.set_instance_hrid() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.set_instance_hrid CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP SEQUENCE IF EXISTS test_tenant_mod_inventory_storage.instance_hrid_seq CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='sequence "instance_hrid_seq" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP SEQUENCE IF EXISTS test_tenant_mod_inventory_storage.instance_hrid_seq CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_holdings_record_hrid ON test_tenant_mod_inventory_storage.holdings_record CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_holdings_record_hrid" for relation "test_tenant_mod_inventory_storage.holdings_record" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_holdings_record_hrid ON test_tenant_mod_inventory_storage.holdings_record CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.set_holdings_record_hrid CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.set_holdings_record_hrid() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.set_holdings_record_hrid CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP SEQUENCE IF EXISTS test_tenant_mod_inventory_storage.holdings_record_hrid_seq CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='sequence "holdings_record_hrid_seq" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP SEQUENCE IF EXISTS test_tenant_mod_inventory_storage.holdings_record_hrid_seq CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_item_hrid ON test_tenant_mod_inventory_storage.item CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_item_hrid" for relation "test_tenant_mod_inventory_storage.item" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_item_hrid ON test_tenant_mod_inventory_storage.item CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.set_item_hrid CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.set_item_hrid() does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP FUNCTION IF EXISTS test_tenant_mod_inventory_storage.set_item_hrid CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP SEQUENCE IF EXISTS test_tenant_mod_inventory_storage.item_hrid_seq CASCADE; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='sequence "item_hrid_seq" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP SEQUENCE IF EXISTS test_tenant_mod_inventory_storage.item_hrid_seq CASCADE; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_instance_status_updated_date() RETURNS trigger AS $function$ BEGIN IF (OLD.jsonb->'statusId' IS DISTINCT FROM NEW.jsonb->'statusId') THEN -- Date time in "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'" format at UTC (00:00) time zone NEW.jsonb = jsonb_set( NEW.jsonb, '{statusUpdatedDate}', to_jsonb(to_char(CURRENT_TIMESTAMP(3) AT TIME ZONE 'UTC', 'YYYY-MM-DD"T"HH24:MI:SS.ms"Z"')) ); END IF; RETURN NEW; END; $function$ LANGUAGE plpgsql; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.set_instance_status_updated_date() RETURNS trigger AS $function$ BEGIN IF (OLD.jsonb->'statusId' IS DISTINCT FROM NEW.jsonb->'statusId') THEN -- Date time in "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'" format at UTC (00:00) time zone NEW.jsonb = jsonb_set( NEW.jsonb, '{statusUpdatedDate}', to_jsonb(to_char(CURRENT_TIMESTAMP(3) AT TIME ZONE 'UTC', 'YYYY-MM-DD"T"HH24:MI:SS.ms"Z"')) ); END IF; RETURN NEW; END; $function$ LANGUAGE plpgsql; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS set_instance_status_updated_date ON test_tenant_mod_inventory_storage.instance; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "set_instance_status_updated_date" for relation "test_tenant_mod_inventory_storage.instance" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS set_instance_status_updated_date ON test_tenant_mod_inventory_storage.instance; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER set_instance_status_updated_date BEFORE UPDATE ON test_tenant_mod_inventory_storage.instance FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_instance_status_updated_date(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER set_instance_status_updated_date BEFORE UPDATE ON test_tenant_mod_inventory_storage.instance FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.set_instance_status_updated_date(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.update_item_status_date() RETURNS TRIGGER AS $$ DECLARE newStatus text; BEGIN newStatus = NEW.jsonb->'status'->>'name'; IF (newStatus IS DISTINCT FROM OLD.jsonb->'status'->>'name') THEN -- Date time in "YYYY-MM-DD"T"HH24:MI:SS.ms'Z'" format at UTC (00:00) time zone NEW.jsonb = jsonb_set(NEW.jsonb, '{status,date}', to_jsonb(to_char(CURRENT_TIMESTAMP(3) AT TIME ZONE 'UTC', 'YYYY-MM-DD"T"HH24:MI:SS.ms"Z"')), true); ELSIF (OLD.jsonb->'status'->'date' IS NOT NULL) THEN NEW.jsonb = jsonb_set(NEW.jsonb, '{status,date}', OLD.jsonb->'status'->'date', true); ELSE NEW.jsonb = NEW.jsonb #- '{status, date}'; END IF; RETURN NEW; END; $$ LANGUAGE 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE OR REPLACE FUNCTION test_tenant_mod_inventory_storage.update_item_status_date() RETURNS TRIGGER AS $$ DECLARE newStatus text; BEGIN newStatus = NEW.jsonb->'status'->>'name'; IF (newStatus IS DISTINCT FROM OLD.jsonb->'status'->>'name') THEN -- Date time in "YYYY-MM-DD"T"HH24:MI:SS.ms'Z'" format at UTC (00:00) time zone NEW.jsonb = jsonb_set(NEW.jsonb, '{status,date}', to_jsonb(to_char(CURRENT_TIMESTAMP(3) AT TIME ZONE 'UTC', 'YYYY-MM-DD"T"HH24:MI:SS.ms"Z"')), true); ELSIF (OLD.jsonb->'status'->'date' IS NOT NULL) THEN NEW.jsonb = jsonb_set(NEW.jsonb, '{status,date}', OLD.jsonb->'status'->'date', true); ELSE NEW.jsonb = NEW.jsonb #- '{status, date}'; END IF; RETURN NEW; END; $$ LANGUAGE 'plpgsql'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} DROP TRIGGER IF EXISTS update_item_status_date ON test_tenant_mod_inventory_storage.item; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='trigger "update_item_status_date" for relation "test_tenant_mod_inventory_storage.item" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed DROP TRIGGER IF EXISTS update_item_status_date ON test_tenant_mod_inventory_storage.item; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} CREATE TRIGGER update_item_status_date BEFORE UPDATE ON test_tenant_mod_inventory_storage.item FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.update_item_status_date(); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed CREATE TRIGGER update_item_status_date BEFORE UPDATE ON test_tenant_mod_inventory_storage.item FOR EACH ROW EXECUTE PROCEDURE test_tenant_mod_inventory_storage.update_item_status_date(); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER SEQUENCE IF EXISTS test_tenant_mod_inventory_storage.hrid_instances_seq AS BIGINT MAXVALUE 99999999999 OWNED BY test_tenant_mod_inventory_storage.hrid_settings.jsonb; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER SEQUENCE IF EXISTS test_tenant_mod_inventory_storage.hrid_instances_seq AS BIGINT MAXVALUE 99999999999 OWNED BY test_tenant_mod_inventory_storage.hrid_settings.jsonb; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER SEQUENCE IF EXISTS test_tenant_mod_inventory_storage.hrid_holdings_seq AS BIGINT MAXVALUE 99999999999 OWNED BY test_tenant_mod_inventory_storage.hrid_settings.jsonb; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER SEQUENCE IF EXISTS test_tenant_mod_inventory_storage.hrid_holdings_seq AS BIGINT MAXVALUE 99999999999 OWNED BY test_tenant_mod_inventory_storage.hrid_settings.jsonb; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER SEQUENCE IF EXISTS test_tenant_mod_inventory_storage.hrid_items_seq AS BIGINT MAXVALUE 99999999999 OWNED BY test_tenant_mod_inventory_storage.hrid_settings.jsonb; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER SEQUENCE IF EXISTS test_tenant_mod_inventory_storage.hrid_items_seq AS BIGINT MAXVALUE 99999999999 OWNED BY test_tenant_mod_inventory_storage.hrid_settings.jsonb; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} START TRANSACTION; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed START TRANSACTION; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.item DISABLE TRIGGER USER; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.item DISABLE TRIGGER USER; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} UPDATE test_tenant_mod_inventory_storage.item SET jsonb = CASE WHEN jsonb->>'copyNumbers' IS NOT NULL AND jsonb_array_length(jsonb->'copyNumbers') > 0 THEN jsonb_set(jsonb - 'copyNumbers', '{copyNumber}', jsonb#>'{copyNumbers, 0}') ELSE jsonb - 'copyNumbers' END WHERE jsonb->'copyNumbers' IS NOT NULL; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed UPDATE test_tenant_mod_inventory_storage.item SET jsonb = CASE WHEN jsonb->>'copyNumbers' IS NOT NULL AND jsonb_array_length(jsonb->'copyNumbers') > 0 THEN jsonb_set(jsonb - 'copyNumbers', '{copyNumber}', jsonb#>'{copyNumbers, 0}') ELSE jsonb - 'copyNumbers' END WHERE jsonb->'copyNumbers' IS NOT NULL; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.item ENABLE TRIGGER USER; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.item ENABLE TRIGGER USER; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} END TRANSACTION; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed END TRANSACTION; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} START TRANSACTION; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed START TRANSACTION; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} UPDATE test_tenant_mod_inventory_storage.mode_of_issuance AS it SET jsonb = jsonb_set(it.jsonb, '{name}', '"integrating resource"') WHERE it.jsonb->>'id' = '4fc0f4fe-06fd-490a-a078-c4da1754e03a'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed UPDATE test_tenant_mod_inventory_storage.mode_of_issuance AS it SET jsonb = jsonb_set(it.jsonb, '{name}', '"integrating resource"') WHERE it.jsonb->>'id' = '4fc0f4fe-06fd-490a-a078-c4da1754e03a'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} UPDATE test_tenant_mod_inventory_storage.mode_of_issuance AS it SET jsonb = jsonb_set(it.jsonb, '{name}', '"multipart monograph"') WHERE it.jsonb->>'id' = 'f5cc2ab6-bb92-4cab-b83f-5a3d09261a41'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed UPDATE test_tenant_mod_inventory_storage.mode_of_issuance AS it SET jsonb = jsonb_set(it.jsonb, '{name}', '"multipart monograph"') WHERE it.jsonb->>'id' = 'f5cc2ab6-bb92-4cab-b83f-5a3d09261a41'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} UPDATE test_tenant_mod_inventory_storage.mode_of_issuance AS it SET jsonb = jsonb_set(it.jsonb, '{name}', '"serial"') WHERE it.jsonb->>'id' = '068b5344-e2a6-40df-9186-1829e13cd344'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed UPDATE test_tenant_mod_inventory_storage.mode_of_issuance AS it SET jsonb = jsonb_set(it.jsonb, '{name}', '"serial"') WHERE it.jsonb->>'id' = '068b5344-e2a6-40df-9186-1829e13cd344'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} UPDATE test_tenant_mod_inventory_storage.mode_of_issuance AS it SET jsonb = jsonb_set(it.jsonb, '{name}', '"single unit"') WHERE it.jsonb->>'id' = '9d18a02f-5897-4c31-9106-c9abb5c7ae8b'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed UPDATE test_tenant_mod_inventory_storage.mode_of_issuance AS it SET jsonb = jsonb_set(it.jsonb, '{name}', '"single unit"') WHERE it.jsonb->>'id' = '9d18a02f-5897-4c31-9106-c9abb5c7ae8b'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} UPDATE test_tenant_mod_inventory_storage.mode_of_issuance SET jsonb = jsonb || '{"name": "unspecified", "source": "folio"}'::jsonb WHERE jsonb->>'id' = '612bbd3d-c16b-4bfb-8517-2afafc60204a'; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed UPDATE test_tenant_mod_inventory_storage.mode_of_issuance SET jsonb = jsonb || '{"name": "unspecified", "source": "folio"}'::jsonb WHERE jsonb->>'id' = '612bbd3d-c16b-4bfb-8517-2afafc60204a'; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} END TRANSACTION; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed END TRANSACTION; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} INSERT INTO test_tenant_mod_inventory_storage.preceding_succeeding_title (id, jsonb) SELECT id, jsonb_build_object( 'id', jsonb->'id', 'metadata', jsonb->'metadata', 'precedingInstanceId', jsonb->'superInstanceId', 'succeedingInstanceId', jsonb->'subInstanceId') FROM test_tenant_mod_inventory_storage.instance_relationship as ir WHERE ir.instanceRelationshipTypeId ='cde80cc2-0c8b-4672-82d4-721e51dcb990' ON CONFLICT DO NOTHING; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed INSERT INTO test_tenant_mod_inventory_storage.preceding_succeeding_title (id, jsonb) SELECT id, jsonb_build_object( 'id', jsonb->'id', 'metadata', jsonb->'metadata', 'precedingInstanceId', jsonb->'superInstanceId', 'succeedingInstanceId', jsonb->'subInstanceId') FROM test_tenant_mod_inventory_storage.instance_relationship as ir WHERE ir.instanceRelationshipTypeId ='cde80cc2-0c8b-4672-82d4-721e51dcb990' ON CONFLICT DO NOTHING; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} START TRANSACTION; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed START TRANSACTION; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.instance DISABLE TRIGGER USER; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.instance DISABLE TRIGGER USER; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} UPDATE test_tenant_mod_inventory_storage.instance SET jsonb = JSONB_SET(instance.jsonb, '{discoverySuppress}', TO_JSONB(false)) WHERE jsonb->>'discoverySuppress' IS NULL; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed UPDATE test_tenant_mod_inventory_storage.instance SET jsonb = JSONB_SET(instance.jsonb, '{discoverySuppress}', TO_JSONB(false)) WHERE jsonb->>'discoverySuppress' IS NULL; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} ALTER TABLE test_tenant_mod_inventory_storage.instance ENABLE TRIGGER USER; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed ALTER TABLE test_tenant_mod_inventory_storage.instance ENABLE TRIGGER USER; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} END TRANSACTION; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed END TRANSACTION; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} drop index if exists test_tenant_mod_inventory_storage.item_metadata_updateddate_idx; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "item_metadata_updateddate_idx" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed drop index if exists test_tenant_mod_inventory_storage.item_metadata_updateddate_idx; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} drop index if exists test_tenant_mod_inventory_storage.holdings_record_metadata_updateddate_idx; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "holdings_record_metadata_updateddate_idx" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed drop index if exists test_tenant_mod_inventory_storage.holdings_record_metadata_updateddate_idx; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} drop index if exists test_tenant_mod_inventory_storage.audit_instance_createddate_idx; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "audit_instance_createddate_idx" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed drop index if exists test_tenant_mod_inventory_storage.audit_instance_createddate_idx; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} drop index if exists test_tenant_mod_inventory_storage.audit_holdings_record_createddate_idx; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "audit_holdings_record_createddate_idx" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed drop index if exists test_tenant_mod_inventory_storage.audit_holdings_record_createddate_idx; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} drop index if exists test_tenant_mod_inventory_storage.audit_item_createddate_idx; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "audit_item_createddate_idx" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed drop index if exists test_tenant_mod_inventory_storage.audit_item_createddate_idx; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} create or replace function test_tenant_mod_inventory_storage.strToTimestamp(text) returns timestamptz as $$ select $1::timestamptz $$ language sql immutable strict; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed create or replace function test_tenant_mod_inventory_storage.strToTimestamp(text) returns timestamptz as $$ select $1::timestamptz $$ language sql immutable strict; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} create or replace function test_tenant_mod_inventory_storage.dateOrMin(timestamptz) returns timestamptz as $$ select coalesce($1, timestamptz '1970-01-01') $$ language sql immutable; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed create or replace function test_tenant_mod_inventory_storage.dateOrMin(timestamptz) returns timestamptz as $$ select coalesce($1, timestamptz '1970-01-01') $$ language sql immutable; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} create or replace function test_tenant_mod_inventory_storage.dateOrMax(timestamptz) returns timestamptz as $$ select coalesce($1, timestamptz '2050-01-01') $$ language sql immutable; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed create or replace function test_tenant_mod_inventory_storage.dateOrMax(timestamptz) returns timestamptz as $$ select coalesce($1, timestamptz '2050-01-01') $$ language sql immutable; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} create or replace function test_tenant_mod_inventory_storage.getElectronicAccessName(val jsonb) returns jsonb as $$ select jsonb_agg(distinct e) from ( select e || jsonb_build_object('name', ( select jsonb ->> 'name' from test_tenant_mod_inventory_storage.electronic_access_relationship ear where id = (e ->> 'relationshipId')::uuid )) e from jsonb_array_elements($1) as e ) e1 $$ language sql strict; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed create or replace function test_tenant_mod_inventory_storage.getElectronicAccessName(val jsonb) returns jsonb as $$ select jsonb_agg(distinct e) from ( select e || jsonb_build_object('name', ( select jsonb ->> 'name' from test_tenant_mod_inventory_storage.electronic_access_relationship ear where id = (e ->> 'relationshipId')::uuid )) e from jsonb_array_elements($1) as e ) e1 $$ language sql strict; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} create or replace function test_tenant_mod_inventory_storage.getItemNoteTypeName(val jsonb) returns jsonb as $$ select jsonb_agg(distinct e) from ( select e || jsonb_build_object('noteTypeName', ( select jsonb ->> 'name' from item_note_type where id = (e ->> 'itemNoteTypeId')::uuid )) e from jsonb_array_elements($1) as e ) e1 $$ language sql strict; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed create or replace function test_tenant_mod_inventory_storage.getItemNoteTypeName(val jsonb) returns jsonb as $$ select jsonb_agg(distinct e) from ( select e || jsonb_build_object('noteTypeName', ( select jsonb ->> 'name' from item_note_type where id = (e ->> 'itemNoteTypeId')::uuid )) e from jsonb_array_elements($1) as e ) e1 $$ language sql strict; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} drop index if exists test_tenant_mod_inventory_storage.item_pmh_metadata_updateddate_idx; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "item_pmh_metadata_updateddate_idx" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed drop index if exists test_tenant_mod_inventory_storage.item_pmh_metadata_updateddate_idx; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} drop index if exists test_tenant_mod_inventory_storage.holdings_record_pmh_metadata_updateddate_idx; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "holdings_record_pmh_metadata_updateddate_idx" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed drop index if exists test_tenant_mod_inventory_storage.holdings_record_pmh_metadata_updateddate_idx; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} drop index if exists test_tenant_mod_inventory_storage.audit_instance_pmh_createddate_idx; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "audit_instance_pmh_createddate_idx" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed drop index if exists test_tenant_mod_inventory_storage.audit_instance_pmh_createddate_idx; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} drop index if exists test_tenant_mod_inventory_storage.audit_holdings_record_pmh_createddate_idx; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "audit_holdings_record_pmh_createddate_idx" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed drop index if exists test_tenant_mod_inventory_storage.audit_holdings_record_pmh_createddate_idx; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} drop index if exists test_tenant_mod_inventory_storage.audit_item_pmh_createddate_idx; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "audit_item_pmh_createddate_idx" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed drop index if exists test_tenant_mod_inventory_storage.audit_item_pmh_createddate_idx; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} drop index if exists test_tenant_mod_inventory_storage.instance_pmh_metadata_updateddate_idx; 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='index "instance_pmh_metadata_updateddate_idx" does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='tablecmds.c', line='1191', routine='DropErrorMsgNonExistent', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed drop index if exists test_tenant_mod_inventory_storage.instance_pmh_metadata_updateddate_idx; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} create index if not exists instance_pmh_metadata_updateddate_idx on test_tenant_mod_inventory_storage.instance ((strToTimestamp(jsonb -> 'metadata' ->> 'updatedDate'))); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed create index if not exists instance_pmh_metadata_updateddate_idx on test_tenant_mod_inventory_storage.instance ((strToTimestamp(jsonb -> 'metadata' ->> 'updatedDate'))); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} create index if not exists item_pmh_metadata_updateddate_idx on test_tenant_mod_inventory_storage.item ((strToTimestamp(jsonb -> 'metadata' ->> 'updatedDate'))); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed create index if not exists item_pmh_metadata_updateddate_idx on test_tenant_mod_inventory_storage.item ((strToTimestamp(jsonb -> 'metadata' ->> 'updatedDate'))); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} create index if not exists holdings_record_pmh_metadata_updateddate_idx on test_tenant_mod_inventory_storage.holdings_record ((strToTimestamp(jsonb -> 'metadata' ->> 'updatedDate'))); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed create index if not exists holdings_record_pmh_metadata_updateddate_idx on test_tenant_mod_inventory_storage.holdings_record ((strToTimestamp(jsonb -> 'metadata' ->> 'updatedDate'))); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} create index if not exists audit_instance_pmh_createddate_idx on test_tenant_mod_inventory_storage.audit_instance ((strToTimestamp(jsonb ->> 'createdDate'))); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed create index if not exists audit_instance_pmh_createddate_idx on test_tenant_mod_inventory_storage.audit_instance ((strToTimestamp(jsonb ->> 'createdDate'))); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} create index if not exists audit_holdings_record_pmh_createddate_idx on test_tenant_mod_inventory_storage.audit_holdings_record ((strToTimestamp(jsonb -> 'record' ->> 'updatedDate'))); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed create index if not exists audit_holdings_record_pmh_createddate_idx on test_tenant_mod_inventory_storage.audit_holdings_record ((strToTimestamp(jsonb -> 'record' ->> 'updatedDate'))); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} create index if not exists audit_item_pmh_createddate_idx on test_tenant_mod_inventory_storage.audit_item ((strToTimestamp(jsonb -> 'record' ->> 'updatedDate'))); 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed create index if not exists audit_item_pmh_createddate_idx on test_tenant_mod_inventory_storage.audit_item ((strToTimestamp(jsonb -> 'record' ->> 'updatedDate'))); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} drop function if exists test_tenant_mod_inventory_storage.pmh_view_function(timestamptz, timestamptz, bool, bool); 11:53:39 [] [] [] [] WARN ? Backend notice: severity='NOTICE', code='00000', message='function test_tenant_mod_inventory_storage.pmh_view_function(timestamptz,timestamptz,bool,bool) does not exist, skipping', detail='null', hint='null', position='null', internalPosition='null', internalQuery='null', where='null', file='dropcmds.c', line='491', routine='does_not_exist_skipping', schema='null', table='null', column='null', dataType='null', constraint='null' 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed drop function if exists test_tenant_mod_inventory_storage.pmh_view_function(timestamptz, timestamptz, bool, bool); 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} create or replace function test_tenant_mod_inventory_storage.pmh_view_function(startDate timestamptz, endDate timestamptz, deletedRecordSupport bool default true, skipSuppressedFromDiscoveryRecords bool default true) returns table ( instanceId uuid, updatedDate timestamptz, deleted boolean, itemsAndHoldingsFields jsonb ) as $body$ with instanceIdsInRange as ( select inst.id as instanceId, (strToTimestamp(inst.jsonb -> 'metadata' ->> 'updatedDate')) as maxDate from test_tenant_mod_inventory_storage.instance inst where (strToTimestamp(inst.jsonb -> 'metadata' ->> 'updatedDate')) between dateOrMin($1) and dateOrMax($2) union all select instanceid, greatest((strToTimestamp(item.jsonb -> 'metadata' ->> 'updatedDate')), (strToTimestamp(hr.jsonb -> 'metadata' ->> 'updatedDate'))) as maxDate from holdings_record hr join test_tenant_mod_inventory_storage.item item on item.holdingsrecordid = hr.id where ((strToTimestamp(hr.jsonb -> 'metadata' ->> 'updatedDate')) between dateOrMin($1) and dateOrMax($2) or (strToTimestamp(item.jsonb -> 'metadata' ->> 'updatedDate')) between dateOrMin($1) and dateOrMax($2)) union all select (audit_holdings_record.jsonb #>> '{record,instanceId}')::uuid, greatest((strtotimestamp(audit_item.jsonb -> 'record' ->> 'updatedDate')), (strtotimestamp(audit_holdings_record.jsonb -> 'record' ->> 'updatedDate'))) as maxDate from audit_holdings_record audit_holdings_record join audit_item audit_item on (audit_item.jsonb ->> '{record,holdingsRecordId}')::uuid = audit_holdings_record.id where ((strToTimestamp(audit_holdings_record.jsonb -> 'record' ->> 'updatedDate')) between dateOrMin($1) and dateOrMax($2) or (strToTimestamp(audit_item.jsonb #>> '{record,updatedDate}')) between dateOrMin($1) and dateOrMax($2)) ), instanceIdsAndDatesInRange as ( select instanceId, max(instanceIdsInRange.maxDate) as maxDate, (instance.jsonb ->> 'discoverySuppress')::bool as suppressFromDiscovery from instanceIdsInRange, instance where instanceIdsInRange.maxDate between dateOrMin($1) and dateOrMax($2) and instance.id = instanceIdsInRange.instanceId and not ($4 and coalesce((instance.jsonb ->> 'discoverySuppress')::bool, false)) group by 1, 3) select instanceIdsAndDatesInRange.instanceId, instanceIdsAndDatesInRange.maxDate, false as deleted, ( select to_jsonb(itemAndHoldingsAttrs) as instanceFields from ( select hr.instanceid, instanceIdsAndDatesInRange.suppressFromDiscovery as suppressFromDiscovery, jsonb_agg(jsonb_build_object('id', item.id, 'callNumber', item.jsonb -> 'effectiveCallNumberComponents' || jsonb_build_object('typeName',cnt.jsonb ->> 'name'), 'location', json_build_object('location', jsonb_build_object('institutionId', itemLocInst.id, 'institutionName', itemLocInst.jsonb ->> 'name', 'campusId', itemLocCamp.id, 'campusName', itemLocCamp.jsonb ->> 'name', 'libraryId', itemLocLib.id, 'libraryName', itemLocLib.jsonb ->> 'name'), 'name', coalesce(loc.jsonb ->> 'discoveryDisplayName', loc.jsonb ->> 'name')), 'volume', item.jsonb -> 'volume', 'enumeration', item.jsonb -> 'enumeration', 'materialType', mt.jsonb -> 'name', 'electronicAccess', getElectronicAccessName( coalesce(item.jsonb #> '{electronicAccess}', '[]'::jsonb) || coalesce(hr.jsonb #> '{electronicAccess}', '[]'::jsonb)), 'suppressFromDiscovery', case when instanceIdsAndDatesInRange.suppressFromDiscovery then true else coalesce((hr.jsonb ->> 'discoverySuppress')::bool, false) or coalesce((item.jsonb ->> 'discoverySuppress')::bool, false) end, 'notes', getItemNoteTypeName(item.jsonb-> 'notes'), 'barcode', item.jsonb->>'barcode', 'chronology', item.jsonb->>'chronology', 'copyNumber', item.jsonb->>'copyNumber', 'holdingsRecordId', hr.id )) items from holdings_record hr join test_tenant_mod_inventory_storage.item item on item.holdingsrecordid = hr.id join test_tenant_mod_inventory_storage.location loc on (item.jsonb ->> 'effectiveLocationId')::uuid = loc.id and (loc.jsonb ->> 'isActive')::bool = true join test_tenant_mod_inventory_storage.locinstitution itemLocInst on (loc.jsonb ->> 'institutionId')::uuid = itemLocInst.id join test_tenant_mod_inventory_storage.loccampus itemLocCamp on (loc.jsonb ->> 'campusId')::uuid = itemLocCamp.id join test_tenant_mod_inventory_storage.loclibrary itemLocLib on (loc.jsonb ->> 'libraryId')::uuid = itemLocLib.id left join test_tenant_mod_inventory_storage.material_type mt on item.materialtypeid = mt.id left join test_tenant_mod_inventory_storage.call_number_type cnt on (item.jsonb #>> '{effectiveCallNumberComponents, typeId}')::uuid = cnt.id where instanceId = instanceIdsAndDatesInRange.instanceId and not ($4 and coalesce((hr.jsonb ->> 'discoverySuppress')::bool, false)) and not ($4 and coalesce((item.jsonb ->> 'discoverySuppress')::bool, false)) group by 1) itemAndHoldingsAttrs ) from instanceIdsAndDatesInRange union all select (audit_instance.jsonb #>> '{record,id}')::uuid as instanceId, strToTimestamp(jsonb ->> 'createdDate') as maxDate, true as deleted, null as itemFields from test_tenant_mod_inventory_storage.audit_instance where $3 and strToTimestamp(jsonb ->> 'createdDate') between dateOrMin($1) and dateOrMax($2) $body$ language sql; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed create or replace function test_tenant_mod_inventory_storage.pmh_view_function(startDate timestamptz, endDate timestamptz, deletedRecordSupport bool default true, skipSuppressedFromDiscoveryRecords bool default true) returns table ( instanceId uuid, updatedDate timestamptz, deleted boolean, itemsAndHoldingsFields jsonb ) as $body$ with instanceIdsInRange as ( select inst.id as instanceId, (strToTimestamp(inst.jsonb -> 'metadata' ->> 'updatedDate')) as maxDate from test_tenant_mod_inventory_storage.instance inst where (strToTimestamp(inst.jsonb -> 'metadata' ->> 'updatedDate')) between dateOrMin($1) and dateOrMax($2) union all select instanceid, greatest((strToTimestamp(item.jsonb -> 'metadata' ->> 'updatedDate')), (strToTimestamp(hr.jsonb -> 'metadata' ->> 'updatedDate'))) as maxDate from holdings_record hr join test_tenant_mod_inventory_storage.item item on item.holdingsrecordid = hr.id where ((strToTimestamp(hr.jsonb -> 'metadata' ->> 'updatedDate')) between dateOrMin($1) and dateOrMax($2) or (strToTimestamp(item.jsonb -> 'metadata' ->> 'updatedDate')) between dateOrMin($1) and dateOrMax($2)) union all select (audit_holdings_record.jsonb #>> '{record,instanceId}')::uuid, greatest((strtotimestamp(audit_item.jsonb -> 'record' ->> 'updatedDate')), (strtotimestamp(audit_holdings_record.jsonb -> 'record' ->> 'updatedDate'))) as maxDate from audit_holdings_record audit_holdings_record join audit_item audit_item on (audit_item.jsonb ->> '{record,holdingsRecordId}')::uuid = audit_holdings_record.id where ((strToTimestamp(audit_holdings_record.jsonb -> 'record' ->> 'updatedDate')) between dateOrMin($1) and dateOrMax($2) or (strToTimestamp(audit_item.jsonb #>> '{record,updatedDate}')) between dateOrMin($1) and dateOrMax($2)) ), instanceIdsAndDatesInRange as ( select instanceId, max(instanceIdsInRange.maxDate) as maxDate, (instance.jsonb ->> 'discoverySuppress')::bool as suppressFromDiscovery from instanceIdsInRange, instance where instanceIdsInRange.maxDate between dateOrMin($1) and dateOrMax($2) and instance.id = instanceIdsInRange.instanceId and not ($4 and coalesce((instance.jsonb ->> 'discoverySuppress')::bool, false)) group by 1, 3) select instanceIdsAndDatesInRange.instanceId, instanceIdsAndDatesInRange.maxDate, false as deleted, ( select to_jsonb(itemAndHoldingsAttrs) as instanceFields from ( select hr.instanceid, instanceIdsAndDatesInRange.suppressFromDiscovery as suppressFromDiscovery, jsonb_agg(jsonb_build_object('id', item.id, 'callNumber', item.jsonb -> 'effectiveCallNumberComponents' || jsonb_build_object('typeName',cnt.jsonb ->> 'name'), 'location', json_build_object('location', jsonb_build_object('institutionId', itemLocInst.id, 'institutionName', itemLocInst.jsonb ->> 'name', 'campusId', itemLocCamp.id, 'campusName', itemLocCamp.jsonb ->> 'name', 'libraryId', itemLocLib.id, 'libraryName', itemLocLib.jsonb ->> 'name'), 'name', coalesce(loc.jsonb ->> 'discoveryDisplayName', loc.jsonb ->> 'name')), 'volume', item.jsonb -> 'volume', 'enumeration', item.jsonb -> 'enumeration', 'materialType', mt.jsonb -> 'name', 'electronicAccess', getElectronicAccessName( coalesce(item.jsonb #> '{electronicAccess}', '[]'::jsonb) || coalesce(hr.jsonb #> '{electronicAccess}', '[]'::jsonb)), 'suppressFromDiscovery', case when instanceIdsAndDatesInRange.suppressFromDiscovery then true else coalesce((hr.jsonb ->> 'discoverySuppress')::bool, false) or coalesce((item.jsonb ->> 'discoverySuppress')::bool, false) end, 'notes', getItemNoteTypeName(item.jsonb-> 'notes'), 'barcode', item.jsonb->>'barcode', 'chronology', item.jsonb->>'chronology', 'copyNumber', item.jsonb->>'copyNumber', 'holdingsRecordId', hr.id )) items from holdings_record hr join test_tenant_mod_inventory_storage.item item on item.holdingsrecordid = hr.id join test_tenant_mod_inventory_storage.location loc on (item.jsonb ->> 'effectiveLocationId')::uuid = loc.id and (loc.jsonb ->> 'isActive')::bool = true join test_tenant_mod_inventory_storage.locinstitution itemLocInst on (loc.jsonb ->> 'institutionId')::uuid = itemLocInst.id join test_tenant_mod_inventory_storage.loccampus itemLocCamp on (loc.jsonb ->> 'campusId')::uuid = itemLocCamp.id join test_tenant_mod_inventory_storage.loclibrary itemLocLib on (loc.jsonb ->> 'libraryId')::uuid = itemLocLib.id left join test_tenant_mod_inventory_storage.material_type mt on item.materialtypeid = mt.id left join test_tenant_mod_inventory_storage.call_number_type cnt on (item.jsonb #>> '{effectiveCallNumberComponents, typeId}')::uuid = cnt.id where instanceId = instanceIdsAndDatesInRange.instanceId and not ($4 and coalesce((hr.jsonb ->> 'discoverySuppress')::bool, false)) and not ($4 and coalesce((item.jsonb ->> 'discoverySuppress')::bool, false)) group by 1) itemAndHoldingsAttrs ) from instanceIdsAndDatesInRange union all select (audit_instance.jsonb #>> '{record,id}')::uuid as instanceId, strToTimestamp(jsonb ->> 'createdDate') as maxDate, true as deleted, null as itemFields from test_tenant_mod_inventory_storage.audit_instance where $3 and strToTimestamp(jsonb ->> 'createdDate') between dateOrMin($1) and dateOrMax($2) $body$ language sql; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} create or replace function test_tenant_mod_inventory_storage.pmh_get_updated_instances_ids(startDate timestamptz, endDate timestamptz, deletedRecordSupport bool default true, skipSuppressedFromDiscoveryRecords bool default true) returns table ( instanceId uuid, updatedDate timestamptz, suppressFromDiscovery boolean, deleted boolean ) as $body$ with instanceIdsInRange as ( select inst.id as instanceId, (strToTimestamp(inst.jsonb -> 'metadata' ->> 'updatedDate')) as maxDate from test_tenant_mod_inventory_storage.instance inst where (strToTimestamp(inst.jsonb -> 'metadata' ->> 'updatedDate')) between dateOrMin($1) and dateOrMax($2) union all select instanceid, greatest((strToTimestamp(item.jsonb -> 'metadata' ->> 'updatedDate')), (strToTimestamp(hr.jsonb -> 'metadata' ->> 'updatedDate'))) as maxDate from holdings_record hr join test_tenant_mod_inventory_storage.item item on item.holdingsrecordid = hr.id where ((strToTimestamp(hr.jsonb -> 'metadata' ->> 'updatedDate')) between dateOrMin($1) and dateOrMax($2) or (strToTimestamp(item.jsonb -> 'metadata' ->> 'updatedDate')) between dateOrMin($1) and dateOrMax($2)) union all select (audit_holdings_record.jsonb #>> '{record,instanceId}')::uuid, greatest((strtotimestamp(audit_item.jsonb -> 'record' ->> 'updatedDate')), (strtotimestamp(audit_holdings_record.jsonb -> 'record' ->> 'updatedDate'))) as maxDate from audit_holdings_record audit_holdings_record join audit_item audit_item on (audit_item.jsonb ->> '{record,holdingsRecordId}')::uuid = audit_holdings_record.id where ((strToTimestamp(audit_holdings_record.jsonb -> 'record' ->> 'updatedDate')) between dateOrMin($1) and dateOrMax($2) or (strToTimestamp(audit_item.jsonb #>> '{record,updatedDate}')) between dateOrMin($1) and dateOrMax($2)) ) select instanceId, max(instanceIdsInRange.maxDate) as maxDate, (instance.jsonb ->> 'discoverySuppress')::bool as suppressFromDiscovery, false as deleted from instanceIdsInRange, instance where instanceIdsInRange.maxDate between dateOrMin($1) and dateOrMax($2) and instance.id = instanceIdsInRange.instanceId and not ($4 and coalesce((instance.jsonb ->> 'discoverySuppress')::bool, false)) group by 1, 3 union all select (audit_instance.jsonb #>> '{record,id}')::uuid as instanceId, strToTimestamp(jsonb ->> 'createdDate') as maxDate, false as suppressFromDiscovery, true as deleted from test_tenant_mod_inventory_storage.audit_instance where $3 and strToTimestamp(jsonb ->> 'createdDate') between dateOrMin($1) and dateOrMax($2) $body$ language sql; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed create or replace function test_tenant_mod_inventory_storage.pmh_get_updated_instances_ids(startDate timestamptz, endDate timestamptz, deletedRecordSupport bool default true, skipSuppressedFromDiscoveryRecords bool default true) returns table ( instanceId uuid, updatedDate timestamptz, suppressFromDiscovery boolean, deleted boolean ) as $body$ with instanceIdsInRange as ( select inst.id as instanceId, (strToTimestamp(inst.jsonb -> 'metadata' ->> 'updatedDate')) as maxDate from test_tenant_mod_inventory_storage.instance inst where (strToTimestamp(inst.jsonb -> 'metadata' ->> 'updatedDate')) between dateOrMin($1) and dateOrMax($2) union all select instanceid, greatest((strToTimestamp(item.jsonb -> 'metadata' ->> 'updatedDate')), (strToTimestamp(hr.jsonb -> 'metadata' ->> 'updatedDate'))) as maxDate from holdings_record hr join test_tenant_mod_inventory_storage.item item on item.holdingsrecordid = hr.id where ((strToTimestamp(hr.jsonb -> 'metadata' ->> 'updatedDate')) between dateOrMin($1) and dateOrMax($2) or (strToTimestamp(item.jsonb -> 'metadata' ->> 'updatedDate')) between dateOrMin($1) and dateOrMax($2)) union all select (audit_holdings_record.jsonb #>> '{record,instanceId}')::uuid, greatest((strtotimestamp(audit_item.jsonb -> 'record' ->> 'updatedDate')), (strtotimestamp(audit_holdings_record.jsonb -> 'record' ->> 'updatedDate'))) as maxDate from audit_holdings_record audit_holdings_record join audit_item audit_item on (audit_item.jsonb ->> '{record,holdingsRecordId}')::uuid = audit_holdings_record.id where ((strToTimestamp(audit_holdings_record.jsonb -> 'record' ->> 'updatedDate')) between dateOrMin($1) and dateOrMax($2) or (strToTimestamp(audit_item.jsonb #>> '{record,updatedDate}')) between dateOrMin($1) and dateOrMax($2)) ) select instanceId, max(instanceIdsInRange.maxDate) as maxDate, (instance.jsonb ->> 'discoverySuppress')::bool as suppressFromDiscovery, false as deleted from instanceIdsInRange, instance where instanceIdsInRange.maxDate between dateOrMin($1) and dateOrMax($2) and instance.id = instanceIdsInRange.instanceId and not ($4 and coalesce((instance.jsonb ->> 'discoverySuppress')::bool, false)) group by 1, 3 union all select (audit_instance.jsonb #>> '{record,id}')::uuid as instanceId, strToTimestamp(jsonb ->> 'createdDate') as maxDate, false as suppressFromDiscovery, true as deleted from test_tenant_mod_inventory_storage.audit_instance where $3 and strToTimestamp(jsonb ->> 'createdDate') between dateOrMin($1) and dateOrMax($2) $body$ language sql; 11:53:39 [] [] [] [] INFO PostgresClient trying to execute: {} create or replace function test_tenant_mod_inventory_storage.pmh_instance_view_function(instanceIds uuid[], skipSuppressedFromDiscoveryRecords bool default true) returns table ( instanceId uuid, itemsAndHoldingsFields jsonb ) as $body$ select instId, (select to_jsonb(itemAndHoldingsAttrs) as itemsAndHoldingsFields from ( select hr.instanceid, jsonb_agg(jsonb_build_object('id', item.id, 'callNumber', item.jsonb -> 'effectiveCallNumberComponents' || jsonb_build_object('typeName',cnt.jsonb ->> 'name'), 'location', json_build_object('location', jsonb_build_object('institutionId', itemLocInst.id, 'institutionName', itemLocInst.jsonb ->> 'name', 'campusId', itemLocCamp.id, 'campusName', itemLocCamp.jsonb ->> 'name', 'libraryId', itemLocLib.id, 'libraryName', itemLocLib.jsonb ->> 'name'), 'name', coalesce(loc.jsonb ->> 'discoveryDisplayName', loc.jsonb ->> 'name')), 'volume', item.jsonb -> 'volume', 'enumeration', item.jsonb -> 'enumeration', 'materialType', mt.jsonb -> 'name', 'electronicAccess', getElectronicAccessName( coalesce(item.jsonb #> '{electronicAccess}', '[]'::jsonb) || coalesce(hr.jsonb #> '{electronicAccess}', '[]'::jsonb)), 'suppressFromDiscovery', coalesce((hr.jsonb ->> 'discoverySuppress')::bool, false) or coalesce((item.jsonb ->> 'discoverySuppress')::bool, false), 'notes', getItemNoteTypeName(item.jsonb-> 'notes'), 'barcode', item.jsonb->>'barcode', 'chronology', item.jsonb->>'chronology', 'copyNumber', item.jsonb->>'copyNumber', 'holdingsRecordId', hr.id )) items from holdings_record hr join test_tenant_mod_inventory_storage.item item on item.holdingsrecordid = hr.id join test_tenant_mod_inventory_storage.location loc on (item.jsonb ->> 'effectiveLocationId')::uuid = loc.id and (loc.jsonb ->> 'isActive')::bool = true join test_tenant_mod_inventory_storage.locinstitution itemLocInst on (loc.jsonb ->> 'institutionId')::uuid = itemLocInst.id join test_tenant_mod_inventory_storage.loccampus itemLocCamp on (loc.jsonb ->> 'campusId')::uuid = itemLocCamp.id join test_tenant_mod_inventory_storage.loclibrary itemLocLib on (loc.jsonb ->> 'libraryId')::uuid = itemLocLib.id left join test_tenant_mod_inventory_storage.material_type mt on item.materialtypeid = mt.id left join test_tenant_mod_inventory_storage.call_number_type cnt on (item.jsonb #>> '{effectiveCallNumberComponents, typeId}')::uuid = cnt.id where instanceId = instId and not ($2 and coalesce((hr.jsonb ->> 'discoverySuppress')::bool, false)) and not ($2 and coalesce((item.jsonb ->> 'discoverySuppress')::bool, false)) group by 1) itemAndHoldingsAttrs) FROM unnest( $1 ) AS instId; $body$ language sql; 11:53:39 [] [] [] [] INFO PostgresClient Successfully executed create or replace function test_tenant_mod_inventory_storage.pmh_instance_view_function(instanceIds uuid[], skipSuppressedFromDiscoveryRecords bool default true) returns table ( instanceId uuid, itemsAndHoldingsFields jsonb ) as $body$ select instId, (select to_jsonb(itemAndHoldingsAttrs) as itemsAndHoldingsFields from ( select hr.instanceid, jsonb_agg(jsonb_build_object('id', item.id, 'callNumber', item.jsonb -> 'effectiveCallNumberComponents' || jsonb_build_object('typeName',cnt.jsonb ->> 'name'), 'location', json_build_object('location', jsonb_build_object('institutionId', itemLocInst.id, 'institutionName', itemLocInst.jsonb ->> 'name', 'campusId', itemLocCamp.id, 'campusName', itemLocCamp.jsonb ->> 'name', 'libraryId', itemLocLib.id, 'libraryName', itemLocLib.jsonb ->> 'name'), 'name', coalesce(loc.jsonb ->> 'discoveryDisplayName', loc.jsonb ->> 'name')), 'volume', item.jsonb -> 'volume', 'enumeration', item.jsonb -> 'enumeration', 'materialType', mt.jsonb -> 'name',