Details
-
Type:
Bug
-
Status:
Closed
-
Priority:
Major
-
Resolution: No Longer Reproducible
-
Affects Version/s: 6.0.6 GA, 6.1.0 CE GA1
-
Fix Version/s: 6.2.0 CE M4
-
Component/s: WCM, WCM > Staging
-
Labels:
-
Environment:Liferay Tomcat Bundle
PostgreSQL 9.1
-
Similar Issues:
Description
After a "default" installation of the bundle (data populated by the Seven Cogs Hook) and then turning on staging, the following exception is thrown:
14:18:26,132 ERROR [JDBCExceptionReporter:101] Batch entry 0 insert into JournalArticleResource (uuid_, groupId, articleId, resourcePrimKey) values ('
dacc445b-71f6-4680-8228-1aeea9ed1e31', '11342', '', '11393') was aborted. Call getNextException to see the cause.
14:18:26,139 ERROR [JDBCExceptionReporter:101] ERROR: duplicate key value violates unique constraint "ix_88df994a"
Detail: Key (groupid, articleid)=(11342, ) already exists.
14:18:26,150 ERROR [SearchPermissionCheckerImpl:139] com.liferay.portal.kernel.search.SearchException: com.liferay.portal.kernel.exception.SystemExcep
tion: com.liferay.portal.kernel.dao.orm.ORMException: org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch update
com.liferay.portal.kernel.search.SearchException: com.liferay.portal.kernel.exception.SystemException: com.liferay.portal.kernel.dao.orm.ORMException:
org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch update
at com.liferay.portal.kernel.search.BaseIndexer.reindex(BaseIndexer.java:98)
at com.liferay.portal.search.SearchPermissionCheckerImpl.doUpdatePermissionFields_6(SearchPermissionCheckerImpl.java:488)
at com.liferay.portal.search.SearchPermissionCheckerImpl.updatePermissionFields(SearchPermissionCheckerImpl.java:135)
at com.liferay.portal.kernel.search.SearchEngineUtil.updatePermissionFields(SearchEngineUtil.java:238)
at com.liferay.portal.service.impl.ResourcePermissionLocalServiceImpl.doUpdateResourcePermission(ResourcePermissionLocalServiceImpl.java:404)
at com.liferay.portal.service.impl.ResourcePermissionLocalServiceImpl.updateResourcePermission(ResourcePermissionLocalServiceImpl.java:415)
at com.liferay.portal.service.impl.ResourcePermissionLocalServiceImpl.setResourcePermissions(ResourcePermissionLocalServiceImpl.java:329)
at sun.reflect.GeneratedMethodAccessor424.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
....
Caused by: com.liferay.portal.kernel.exception.SystemException: com.liferay.portal.kernel.dao.orm.ORMException: org.hibernate.exception.ConstraintViol
ationException: Could not execute JDBC batch update
at com.liferay.portal.service.persistence.impl.BasePersistenceImpl.processException(BasePersistenceImpl.java:195)
at com.liferay.portlet.journal.service.persistence.JournalArticlePersistenceImpl.findByR_ST(JournalArticlePersistenceImpl.java:2833)
at com.liferay.portlet.journal.service.impl.JournalArticleLocalServiceImpl.getLatestArticle(JournalArticleLocalServiceImpl.java:1213)
at com.liferay.portlet.journal.service.impl.JournalArticleLocalServiceImpl.getLatestArticle(JournalArticleLocalServiceImpl.java:1189)
at sun.reflect.GeneratedMethodAccessor850.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
.....
Caused by: com.liferay.portal.kernel.dao.orm.ORMException: org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch update
at com.liferay.portal.dao.orm.hibernate.ExceptionTranslator.translate(ExceptionTranslator.java:30)
at com.liferay.portal.dao.orm.hibernate.QueryImpl.list(QueryImpl.java:78)
at com.liferay.portal.kernel.dao.orm.QueryUtil.list(QueryUtil.java:67)
at com.liferay.portal.kernel.dao.orm.QueryUtil.list(QueryUtil.java:52)
at com.liferay.portlet.journal.service.persistence.JournalArticlePersistenceImpl.findByR_ST(JournalArticlePersistenceImpl.java:2829)
... 292 more
Caused by: org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch update
at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:96)
at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:66)
at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:275)
at org.hibernate.jdbc.AbstractBatcher.prepareStatement(AbstractBatcher.java:114)
at org.hibernate.jdbc.AbstractBatcher.prepareStatement(AbstractBatcher.java:109)
at org.hibernate.jdbc.AbstractBatcher.prepareBatchStatement(AbstractBatcher.java:244)
at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2395)
at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2858)
at org.hibernate.action.EntityInsertAction.execute(EntityInsertAction.java:79)
at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:268)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:260)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:179)
at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:321)
at org.hibernate.event.def.DefaultAutoFlushEventListener.onAutoFlush(DefaultAutoFlushEventListener.java:64)
at org.hibernate.impl.SessionImpl.autoFlushIfRequired(SessionImpl.java:1175)
at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1251)
at org.hibernate.impl.QueryImpl.list(QueryImpl.java:102)
at com.liferay.portal.dao.orm.hibernate.QueryImpl.list(QueryImpl.java:68)
... 295 more
Caused by: java.sql.BatchUpdateException: Batch entry 0 insert into JournalArticleResource (uuid_, groupId, articleId, resourcePrimKey) values ('dacc4
45b-71f6-4680-8228-1aeea9ed1e31', '11342', '', '11393') was aborted. Call getNextException to see the cause.
at org.postgresql.jdbc2.AbstractJdbc2Statement$BatchResultHandler.handleError(AbstractJdbc2Statement.java:2621)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1837)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:407)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeBatch(AbstractJdbc2Statement.java:2754)
at org.apache.tomcat.dbcp.dbcp.DelegatingStatement.executeBatch(DelegatingStatement.java:297)
at org.apache.tomcat.dbcp.dbcp.DelegatingStatement.executeBatch(DelegatingStatement.java:297)
at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:70)
at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:268)
... 310 more
The staging environment is not initialized properly after this and the only option is to turn it off again.
The installation was started with the following portal-ext.properties
jdbc.default.jndi.name=jdbc/LiferayPool
##
## Schema
##
#
# Set this to true to automatically create tables and populate with default
# data if the database is empty.
#
schema.run.enabled=true
#
# Set this to to true to populate with the minimal amount of data. Set this
# to false to populate with a larger amount of sample data.
#
schema.run.minimal=true
##
## Users
##
#
# Set the following to true if all users are required to agree to the terms
# of use.
#
terms.of.use.required=false
##
## Shutdown Events
##
#
# Programmatically kill the Java process on shutdown. This is a workaround
# for a bug in Tomcat and Linux where the process hangs on forever.
#
# See [http://support.liferay.com/browse/LEP-2048] for more information.
#
shutdown.programmatically.exit=true

Thank you for the report. As part of our community verifier program, I am taking a look at this issue. If it is no longer a concern or you have additional information that will help in troubleshooting it, please let me know