-
Type:
Bug
-
Status: Closed
-
Resolution: Fixed
-
Affects Version/s: 7.1.X, 7.2.X, Master
-
Fix Version/s: 7.1.10 DXP FP18, 7.1.10.5 SP5, 7.1.X, 7.2.10 DXP FP5, 7.2.10.2 DXP SP2, 7.2.X, 7.3.10 DXP GA1, Master
-
Component/s: Blogs, Staging > Export/Import
-
Branch Version/s:7.2.x, 7.1.x
-
Backported to Branch:Committed
-
Story Points:1
-
Fix Priority:3
-
Git Pull Request:
Reproducing Steps
- Create a new web content.
- Using the 3-dot menu in the top left corner go to Export/Import > Export > New Export Process.
- Export using the default configuration.
- Download the resulting lar file.
- For the same site's web content administration, go now to Export/Import > Import > New Import Process.
- Select the downloaded lar file.
- Change the Update Data strategy to Copy as New and import.
Expected: Import is successful and a new web content is added.
Observed: Import fails with details:
An unexpected error occurred with the publication process. Please check your portal and publishing configuration.
The model.resource.com.liferay.friendly.url.model.FriendlyURLEntry b8a5e84c-8ec6-3bec-c942-19b6dc4d23e6 could not be imported because of the following error: Could not execute JDBC batch update.The log file shows the error trace:
2020-04-14 07:27:23.051 ERROR [liferay/background_task-5][JDBCExceptionReporter:234] Batch entry 0 insert into FriendlyURLEntry (mvccVersion, uuid_, defaultLanguageId, groupId, companyId, createDate, modifiedDate, classNameId, classPK, friendlyURLEntryId) values (0, 'b8a5e84c-8ec6-3bec-c942-19b6dc4d23e6', 'en_US', 41102, 20097, '2020-04-14 07:27:23.035000+00', '2020-04-14 07:27:23.035000+00', 20008, 41158, 41167) was aborted: ERROR: duplicate key value violates unique constraint "ix_63fd57ea"_ Detail: Key (uuid_, groupid)=(b8a5e84c-8ec6-3bec-c942-19b6dc4d23e6, 41102) already exists. Call getNextException to see other errors in the batch. [Sanitized] 2020-04-14 07:27:23.054 ERROR [liferay/background_task-5][JDBCExceptionReporter:234] ERROR: duplicate key value violates unique constraint "ix_63fd57ea"_ Detail: Key (uuid_, groupid)=(b8a5e84c-8ec6-3bec-c942-19b6dc4d23e6, 41102) already exists. [Sanitized] 2020-04-14 07:27:23.220 ERROR [liferay/background_task-5][BackgroundTaskMessageListener:182] Unable to execute background task com.liferay.exportimport.kernel.lar.PortletDataException: Could not execute JDBC batch update at com.liferay.exportimport.kernel.lar.BaseStagedModelDataHandler.importStagedModel(BaseStagedModelDataHandler.java:408) at com.liferay.exportimport.kernel.lar.StagedModelDataHandlerUtil.importStagedModel(StagedModelDataHandlerUtil.java:381) at com.liferay.exportimport.kernel.lar.StagedModelDataHandlerUtil.importStagedModel(StagedModelDataHandlerUtil.java:367) at com.liferay.journal.internal.exportimport.data.handler.JournalArticleStagedModelDataHandler._importFriendlyURLEntries(JournalArticleStagedModelDataHandler.java:1446) at com.liferay.journal.internal.exportimport.data.handler.JournalArticleStagedModelDataHandler.doImportStagedModel(JournalArticleStagedModelDataHandler.java:1046) at com.liferay.journal.internal.exportimport.data.handler.JournalArticleStagedModelDataHandler.doImportStagedModel(JournalArticleStagedModelDataHandler.java:119) at com.liferay.exportimport.kernel.lar.BaseStagedModelDataHandler.importStagedModel(BaseStagedModelDataHandler.java:367) at com.liferay.exportimport.kernel.lar.StagedModelDataHandlerUtil.importStagedModel(StagedModelDataHandlerUtil.java:381) at com.liferay.exportimport.kernel.lar.StagedModelDataHandlerUtil.importStagedModel(StagedModelDataHandlerUtil.java:367) at com.liferay.journal.internal.exportimport.data.handler.JournalPortletDataHandler.doImportData(JournalPortletDataHandler.java:392) at com.liferay.exportimport.kernel.lar.BasePortletDataHandler.importData(BasePortletDataHandler.java:390) at com.liferay.exportimport.internal.controller.PortletImportControllerImpl.importPortletData(PortletImportControllerImpl.java:409) at com.liferay.exportimport.internal.controller.PortletImportControllerImpl.importPortletData(PortletImportControllerImpl.java:340) at com.liferay.exportimport.internal.controller.PortletImportControllerImpl.doImportPortletInfo(PortletImportControllerImpl.java:1039) at com.liferay.exportimport.internal.controller.PortletImportControllerImpl.importFile(PortletImportControllerImpl.java:293) at com.liferay.portlet.exportimport.service.impl.ExportImportLocalServiceImpl.importPortletInfo(ExportImportLocalServiceImpl.java:430) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at com.liferay.portal.spring.aop.AopMethodInvocationImpl.proceed(AopMethodInvocationImpl.java:50) at com.liferay.portal.spring.transaction.TransactionInterceptor.invoke(TransactionInterceptor.java:69) at com.liferay.portal.spring.aop.AopMethodInvocationImpl.proceed(AopMethodInvocationImpl.java:57) at com.liferay.portal.spring.aop.AopInvocationHandler.invoke(AopInvocationHandler.java:49) at com.sun.proxy.$Proxy151.importPortletInfo(Unknown Source) at com.liferay.exportimport.kernel.service.ExportImportLocalServiceUtil.importPortletInfo(ExportImportLocalServiceUtil.java:182) at com.liferay.exportimport.internal.background.task.PortletImportBackgroundTaskExecutor$PortletImportCallable.call(PortletImportBackgroundTaskExecutor.java:143) at com.liferay.exportimport.internal.background.task.PortletImportBackgroundTaskExecutor$PortletImportCallable.call(PortletImportBackgroundTaskExecutor.java:129) at com.liferay.portal.spring.transaction.BaseTransactionExecutor.execute(BaseTransactionExecutor.java:37) at com.liferay.portal.spring.transaction.TransactionInvokerImpl.invoke(TransactionInvokerImpl.java:39) at com.liferay.portal.kernel.transaction.TransactionInvokerUtil.invoke(TransactionInvokerUtil.java:28) at com.liferay.exportimport.internal.background.task.PortletImportBackgroundTaskExecutor.execute(PortletImportBackgroundTaskExecutor.java:88) at com.liferay.portal.background.task.internal.SerialBackgroundTaskExecutor.execute(SerialBackgroundTaskExecutor.java:62) at com.liferay.portal.kernel.backgroundtask.DelegatingBackgroundTaskExecutor.execute(DelegatingBackgroundTaskExecutor.java:41) at com.liferay.portal.background.task.internal.ThreadLocalAwareBackgroundTaskExecutor.execute(ThreadLocalAwareBackgroundTaskExecutor.java:72) at com.liferay.portal.background.task.internal.messaging.BackgroundTaskMessageListener.doReceive(BackgroundTaskMessageListener.java:136) at com.liferay.portal.kernel.messaging.BaseMessageListener.receive(BaseMessageListener.java:26) at com.liferay.portal.kernel.messaging.InvokerMessageListener.receive(InvokerMessageListener.java:74) at com.liferay.portal.messaging.internal.ParallelDestination$1.run(ParallelDestination.java:56) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) 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:2412) at org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2875) at org.hibernate.action.EntityInsertAction.execute(EntityInsertAction.java:79) at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:273) at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:265) at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:184) at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:321) at com.liferay.portal.dao.orm.hibernate.event.NestableFlushEventListener.onFlush(NestableFlushEventListener.java:61) at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1216) at com.liferay.portal.spring.hibernate.PortletTransactionManager$TransactionStatusWrapper.reset(PortletTransactionManager.java:260) at com.liferay.portal.spring.hibernate.PortletTransactionManager.commit(PortletTransactionManager.java:63) at com.liferay.portal.spring.transaction.DefaultTransactionExecutor.commit(DefaultTransactionExecutor.java:41) at com.liferay.portal.spring.transaction.TransactionInterceptor.invoke(TransactionInterceptor.java:77) at com.liferay.portal.spring.aop.AopMethodInvocationImpl.proceed(AopMethodInvocationImpl.java:57) at com.liferay.portal.service.ServiceContextAdvice.invoke(ServiceContextAdvice.java:60) at com.liferay.portal.spring.aop.AopMethodInvocationImpl.proceed(AopMethodInvocationImpl.java:57) at com.liferay.portal.spring.aop.AopInvocationHandler.invoke(AopInvocationHandler.java:49) at com.sun.proxy.$Proxy976.addFriendlyURLEntry(Unknown Source) at com.liferay.friendly.url.internal.exportimport.staged.model.repository.FriendlyURLEntryStagedModelRepository.addStagedModel(FriendlyURLEntryStagedModelRepository.java:61) at com.liferay.friendly.url.internal.exportimport.staged.model.repository.FriendlyURLEntryStagedModelRepository.addStagedModel(FriendlyURLEntryStagedModelRepository.java:42) at com.liferay.friendly.url.internal.exportimport.data.handler.FriendlyURLEntryStagedModelDataHandler.doImportStagedModel(FriendlyURLEntryStagedModelDataHandler.java:142) at com.liferay.friendly.url.internal.exportimport.data.handler.FriendlyURLEntryStagedModelDataHandler.doImportStagedModel(FriendlyURLEntryStagedModelDataHandler.java:38) at com.liferay.exportimport.kernel.lar.BaseStagedModelDataHandler.importStagedModel(BaseStagedModelDataHandler.java:367) ... 41 more Caused by: java.sql.BatchUpdateException: Batch entry 0 insert into FriendlyURLEntry (mvccVersion, uuid_, defaultLanguageId, groupId, companyId, createDate, modifiedDate, classNameId, classPK, friendlyURLEntryId) values (0, 'b8a5e84c-8ec6-3bec-c942-19b6dc4d23e6', 'en_US', 41102, 20097, '2020-04-14 07:27:23.035000+00', '2020-04-14 07:27:23.035000+00', 20008, 41158, 41167) was aborted: ERROR: duplicate key value violates unique constraint "ix_63fd57ea"_ Detail: Key (uuid_, groupid)=(b8a5e84c-8ec6-3bec-c942-19b6dc4d23e6, 41102) already exists. Call getNextException to see other errors in the batch. [Sanitized] at org.postgresql.jdbc.BatchResultHandler.handleError(BatchResultHandler.java:148) at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2126) at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:469) at org.postgresql.jdbc.PgStatement.executeBatch(PgStatement.java:791) at org.postgresql.jdbc.PgPreparedStatement.executeBatch(PgPreparedStatement.java:1547) at com.zaxxer.hikari.pool.ProxyStatement.executeBatch(ProxyStatement.java:125) at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.executeBatch(HikariProxyPreparedStatement.java) at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:70) at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:268) ... 67 more Caused by: org.postgresql.util.PSQLException: ERROR: duplicate key value violates unique constraint "ix_63fd57ea"_ Detail: Key (uuid_, groupid)=(b8a5e84c-8ec6-3bec-c942-19b6dc4d23e6, 41102) already exists. [Sanitized] at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2412) at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2125) ... 74 more
Note: The same issue affects Blogs but it is obscured by LPS-111854.
- relates
-
LPS-111854 Cannot import blog using copy as new if already exists
- Closed