Details
-
Bug
-
Resolution: Fixed
-
Blocker
-
14.2-rc-1
-
Windows 11 Pro 64 bit, Edge 99, using a local instance of XWiki 14.2 RC1 on Oracle 19c, Tomcat 9.0.60
-
Unknown
-
N/A
-
N/A
-
Description
STEPS TO REPRODUCE
- Configure an instance of XWiki 14.2 RC1 with Oracle 19c (I've tested with both ojdbc8-19.3.0.0.jar and ojdbc8.jar (downloaded from https://www.oracle.com/database/technologies/appdev/jdbc-downloads.html)
- Start XWiki
- After startup, access the instance
EXPECTED RESULTS
The Distribution Wizard opens with no errors and the instance can be created successfully.
ACTUAL RESULTS
As soon as the instance is accessed in browser, an error is displayed multiple times in XWiki console:
2022-03-28 13:32:29,836 [XWiki initialization] WARN o.h.e.j.s.SqlExceptionHelper - SQL Error: 1400, SQLState: 23000 2022-03-28 13:32:29,836 [XWiki initialization] ERROR o.h.e.j.s.SqlExceptionHelper - ORA-01400: nu poate fi inserat NULL εn ("XWIKI"."XWIKIDOCUMENTINDEXINGQUEUE"."XWT_VERSION") 2022-03-28 13:32:29,839 [XWiki initialization] ERROR .x.x.s.XWikiHibernateBaseStore - Exception while close transaction javax.persistence.PersistenceException: org.hibernate.exception.ConstraintViolationException: could not execute statement at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:154) at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:181) at org.hibernate.internal.ExceptionConverterImpl.convert(ExceptionConverterImpl.java:188) at org.hibernate.internal.SessionImpl.doFlush(SessionImpl.java:1406) at org.hibernate.internal.SessionImpl.managedFlush(SessionImpl.java:493) at org.hibernate.internal.SessionImpl.flushBeforeTransactionCompletion(SessionImpl.java:3285) at org.hibernate.internal.SessionImpl.beforeTransactionCompletion(SessionImpl.java:2420) at org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.beforeTransactionCompletion(JdbcCoordinatorImpl.java:449) at org.hibernate.resource.transaction.backend.jdbc.internal.JdbcResourceLocalTransactionCoordinatorImpl.beforeCompletionCallback(JdbcResourceLocalTransactionCoordinatorImpl.java:183) at org.hibernate.resource.transaction.backend.jdbc.internal.JdbcResourceLocalTransactionCoordinatorImpl.access$300(JdbcResourceLocalTransactionCoordinatorImpl.java:40) at org.hibernate.resource.transaction.backend.jdbc.internal.JdbcResourceLocalTransactionCoordinatorImpl$TransactionDriverControlImpl.commit(JdbcResourceLocalTransactionCoordinatorImpl.java:281) at org.hibernate.engine.transaction.internal.TransactionImpl.commit(TransactionImpl.java:101) at com.xpn.xwiki.internal.store.hibernate.HibernateStore.endTransaction(HibernateStore.java:880) at com.xpn.xwiki.store.XWikiHibernateBaseStore.execute(XWikiHibernateBaseStore.java:830) at com.xpn.xwiki.store.XWikiHibernateBaseStore.executeWrite(XWikiHibernateBaseStore.java:934) at org.xwiki.index.internal.TasksStore.lambda$addTask$3(TasksStore.java:85) at org.xwiki.index.internal.TasksStore.initWikiContext(TasksStore.java:170) at org.xwiki.index.internal.TasksStore.addTask(TasksStore.java:84) at org.xwiki.index.internal.DefaultTasksManager.addTask(DefaultTasksManager.java:136) at org.xwiki.index.internal.DefaultTasksManager.addTask(DefaultTasksManager.java:126) at org.xwiki.index.internal.listener.LinksUpdateListener.onEvent(LinksUpdateListener.java:74) at org.xwiki.observation.internal.DefaultObservationManager.notify(DefaultObservationManager.java:320) at org.xwiki.observation.internal.DefaultObservationManager.notify(DefaultObservationManager.java:285) at com.xpn.xwiki.XWiki.afterSave(XWiki.java:1986) at com.xpn.xwiki.XWiki.saveDocument(XWiki.java:2066) at com.xpn.xwiki.XWiki.saveDocument(XWiki.java:1954) at com.xpn.xwiki.XWiki.initializeMandatoryDocument(XWiki.java:1415) at com.xpn.xwiki.XWiki.initializeMandatoryDocuments(XWiki.java:1379) at com.xpn.xwiki.XWiki.initXWiki(XWiki.java:1288) at com.xpn.xwiki.XWiki.initXWiki(XWiki.java:1225) at com.xpn.xwiki.XWiki.<init>(XWiki.java:1198) at com.xpn.xwiki.internal.XWikiInitializerJob.runInternal(XWikiInitializerJob.java:117) at org.xwiki.job.AbstractJob.runInContext(AbstractJob.java:243) at org.xwiki.job.AbstractJob.run(AbstractJob.java:220) at java.base/java.lang.Thread.run(Thread.java:833) Caused by: org.hibernate.exception.ConstraintViolationException: could not execute statement at org.hibernate.exception.internal.SQLExceptionTypeDelegate.convert(SQLExceptionTypeDelegate.java:59) at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:37) at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:113) at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:99) at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:200) at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3381) at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3908) at org.hibernate.action.internal.EntityInsertAction.execute(EntityInsertAction.java:107) at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:604) at org.hibernate.engine.spi.ActionQueue.lambda$executeActions$1(ActionQueue.java:478) at java.base/java.util.LinkedHashMap.forEach(LinkedHashMap.java:721) at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:475) at org.hibernate.event.internal.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:344) at org.hibernate.event.internal.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:40) at org.hibernate.event.service.internal.EventListenerGroupImpl.fireEventOnEachListener(EventListenerGroupImpl.java:107) at org.hibernate.internal.SessionImpl.doFlush(SessionImpl.java:1402) ... 31 common frames omitted Caused by: java.sql.SQLIntegrityConstraintViolationException: ORA-01400: nu poate fi inserat NULL εn ("XWIKI"."XWIKIDOCUMENTINDEXINGQUEUE"."XWT_VERSION") at oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:509) at oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:461) at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:1104) at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:550) at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:268) at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:655) at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:270) at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:91) at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:970) at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1205) at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3666) at oracle.jdbc.driver.T4CPreparedStatement.executeInternal(T4CPreparedStatement.java:1426) at oracle.jdbc.driver.OraclePreparedStatement.executeLargeUpdate(OraclePreparedStatement.java:3756) at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:3736) at oracle.jdbc.driver.OraclePreparedStatementWrapper.executeUpdate(OraclePreparedStatementWrapper.java:1063) at org.apache.commons.dbcp2.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:136) at org.apache.commons.dbcp2.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:136) at org.apache.commons.dbcp2.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:136) at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:197) ... 42 common frames omitted Caused by: oracle.jdbc.OracleDatabaseException: ORA-01400: nu poate fi inserat NULL εn ("XWIKI"."XWIKIDOCUMENTINDEXINGQUEUE"."XWT_VERSION") at oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:513) ... 60 common frames omitted
The error is "ORA-01400: cannot insert null into (string)".
Despite the errors occurring, Distribution Wizard opens and can be completed to the end.
Also, the error is encountered when creating a subwiki as well (see screenshot).
The issue could not be reproduced on XWiki 14.1 and XWiki 14.0 (which was smoke tested on Oracle 19c).
Attachments
Issue Links
- relates to
-
XWIKI-19581 Refactor XWIKIDOCUMENTINDEXINGQUEUE to allow null values in the version
- Closed