Unable to create a metadata version

Hi everyone

We were trying to create a Metadata version of type atomic and we are seeing the following error log in backend after getting a message of failed to create a version.

We are able to create the version when we are restarting the system without any other changes.

Please share your inputs on this.

ERROR 2023-02-14T11:10:41,910 Exception occurred while exporting metadata for capturing a metadata versionorg.hibernate.LazyInitializationException: could not initialize proxy [org.hisp.dhis.option.OptionSet#964] - no Session (DefaultMetadataVersionService.java [http-nio-8080-exec-342])
javax.persistence.PersistenceException: org.hibernate.LazyInitializationException: could not initialize proxy [org.hisp.dhis.option.OptionSet#964] - no Session
	at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:154) ~[hibernate-core-5.4.28.Final.jar:5.4.28.Final]
	at org.hibernate.query.internal.AbstractProducedQuery.list(AbstractProducedQuery.java:1602) ~[hibernate-core-5.4.28.Final.jar:5.4.28.Final]
	at org.hibernate.query.Query.getResultList(Query.java:165) ~[hibernate-core-5.4.28.Final.jar:5.4.28.Final]
	at org.hibernate.query.criteria.internal.compile.CriteriaQueryTypeQueryAdapter.getResultList(CriteriaQueryTypeQueryAdapter.java:76) ~[hibernate-core-5.4.28.Final.jar:5.4.28.Final]
	at org.hisp.dhis.hibernate.HibernateGenericStore.getSingleResult(HibernateGenericStore.java:249) ~[dhis-support-hibernate-2.37.8.1-SNAPSHOT.jar:?]
	at org.hisp.dhis.hibernate.HibernateGenericStore.getSingleResult(HibernateGenericStore.java:377) ~[dhis-support-hibernate-2.37.8.1-SNAPSHOT.jar:?]
	at org.hisp.dhis.common.hibernate.HibernateIdentifiableObjectStore.getByUidNoAcl(HibernateIdentifiableObjectStore.java:339) ~[dhis-service-core-2.37.8.1-SNAPSHOT.jar:?]
	at org.hisp.dhis.common.hibernate.HibernateIdentifiableObjectStore.getByUidNoAcl(HibernateIdentifiableObjectStore.java:83) ~[dhis-service-core-2.37.8.1-SNAPSHOT.jar:?]
	at org.hisp.dhis.user.DefaultUserGroupService.lambda$getDisplayName$0(DefaultUserGroupService.java:267) ~[dhis-service-core-2.37.8.1-SNAPSHOT.jar:?]
	at org.hisp.dhis.cache.LocalCache.get(LocalCache.java:116) ~[dhis-api-2.37.8.1-SNAPSHOT.jar:?]
	at org.hisp.dhis.user.DefaultUserGroupService.getDisplayName(DefaultUserGroupService.java:266) ~[dhis-service-core-2.37.8.1-SNAPSHOT.jar:?]
	at jdk.internal.reflect.GeneratedMethodAccessor3093.invoke(Unknown Source) ~[?:?]
	at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
	at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]

Caused by: org.hibernate.LazyInitializationException: could not initialize proxy [org.hisp.dhis.option.OptionSet#964] - no Session
	at org.hibernate.proxy.AbstractLazyInitializer.initialize(AbstractLazyInitializer.java:170) ~[hibernate-core-5.4.28.Final.jar:5.4.28.Final]
	at org.hibernate.proxy.AbstractLazyInitializer.getImplementation(AbstractLazyInitializer.java:310) ~[hibernate-core-5.4.28.Final.jar:5.4.28.Final]
	at org.hibernate.proxy.pojo.bytebuddy.ByteBuddyInterceptor.intercept(ByteBuddyInterceptor.java:45) ~[hibernate-core-5.4.28.Final.jar:5.4.28.Final]
	at org.hibernate.proxy.ProxyConfiguration$InterceptorDispatcher.intercept(ProxyConfiguration.java:95) ~[hibernate-core-5.4.28.Final.jar:5.4.28.Final]
	at org.hisp.dhis.option.OptionSet$HibernateProxy$MlkAB10u.hashCode(Unknown Source) ~[dhis-api-2.37.8.1-SNAPSHOT.jar:?]
	at java.util.Arrays.hashCode(Arrays.java:4685) ~[?:?]
	at java.util.Objects.hash(Objects.java:146) ~[?:?]
	at org.hisp.dhis.attribute.Attribute.hashCode(Attribute.java:168) ~[dhis-api-2.37.8.1-SNAPSHOT.jar:?]
	at org.hisp.dhis.attribute.AttributeValue.hashCode(AttributeValue.java:109) ~[dhis-api-2.37.8.1-SNAPSHOT.jar:?]
	at java.util.HashMap.hash(HashMap.java:340) ~[?:?]
	at java.util.HashMap.containsKey(HashMap.java:592) ~[?:?]
	at java.util.HashSet.contains(HashSet.java:204) ~[?:?]
	at java.util.AbstractCollection.containsAll(AbstractCollection.java:325) ~[?:?]
	at java.util.AbstractSet.equals(AbstractSet.java:95) ~[?:?]
	at org.hisp.dhis.hibernate.jsonb.type.JsonBinaryType.equals(JsonBinaryType.java:115) ~[dhis-support-hibernate-2.37.8.1-SNAPSHOT.jar:?]
	at org.hibernate.type.CustomType.isEqual(CustomType.java:105) ~[hibernate-core-5.4.28.Final.jar:5.4.28.Final]
	at org.hibernate.type.AbstractType.isSame(AbstractType.java:119) ~[hibernate-core-5.4.28.Final.jar:5.4.28.Final]
	at org.hibernate.type.AbstractType.isDirty(AbstractType.java:79) ~[hibernate-core-5.4.28.Final.jar:5.4.28.Final]
	at org.hibernate.type.CustomType.isDirty(CustomType.java:249) ~[hibernate-core-5.4.28.Final.jar:5.4.28.Final]
	at org.hibernate.type.TypeHelper.findDirty(TypeHelper.java:316) ~[hibernate-core-5.4.28.Final.jar:5.4.28.Final]
	at org.hibernate.persister.entity.AbstractEntityPersister.findDirty(AbstractEntityPersister.java:4661) ~[hibernate-core-5.4.28.Final.jar:5.4.28.Final]
	at org.hibernate.event.internal.DefaultFlushEntityEventListener.dirtyCheck(DefaultFlushEntityEventListener.java:582) ~[hibernate-core-5.4.28.Final.jar:5.4.28.Final]
	at org.hibernate.event.internal.DefaultFlushEntityEventListener.isUpdateNecessary(DefaultFlushEntityEventListener.java:244) ~[hibernate-core-5.4.28.Final.jar:5.4.28.Final]

Thanks
R. Sri Laxmi Ragini

Thanks @R_Sri_Laxmi_Ragini for your patience! Have you found a solution to this issue?

Would you please share the steps to reproduce this on any of the play.dhis2.org instances?

Hi @Gassim

Further discovery we go to know the issue is related to custom attributes created with an option set.
There is an existing issue in jira board for the same.

Thanks
R. Sri Laxmi Ragini

1 Like