Uploaded image for project: 'PUBLIC - Liferay Portal Community Edition'
  1. PUBLIC - Liferay Portal Community Edition
  2. LPS-32338

Created User using Blogs Portlet associated with a User Statistics Social Activity Counter throws exception

    Details

    • Type: Bug
    • Status: Closed
    • Resolution: No Longer Reproducible
    • Affects Version/s: 6.2.0 CE M4
    • Fix Version/s: 6.2.0 CE RC2
    • Labels:
      None
    • Environment:
      Tomcat 7.0.34 + MySQL 5. Portal 6.2.x GIT ID: 1fbf66b56ca30f8c8c2cdbd66b70503b46853b5d.
    • Fix Priority:
      4

      Description

      Steps to reproduce:

      1. Add Blank Site 'Site Name'
      2. Add two pages, 'Blogs Test Page' & 'User Statistics Test Page,' to Site Name
      3. Navigate to Site Name --> Blogs Test Page and add Blogs portlet
      4. Add User Statistics portlet to its corresponding test page
      5. Configure User Statistics:
        • Uncheck 'Show Header Text' and 'Show Totals'
        • Create counters for the following:
          • User Subscriptions
          • Votes by User
          • User's Blog Entry Updates
          • User's Blog Entries
          • User's Comments
      6. Save
      7. Navigate to Blogs portlet > Add 'Blogs Entry1' and 'Blogs Entry2'
      8. Create User1 and add 'Site Name' to its sites
      9. Sign in as User1
      10. Subscribe to Blogs Entry2 comments > View User Statistics
      11. Comment on Blogs Entry2 > View User Statistics
      12. Click on Blogs Entry2 title and the following exception occurs without any UI error messages, but the counter miscounts:
      00:10:31,826 ERROR [liferay/async_service-7][JDBCExceptionReporter:76] Lock wait timeout exceeded; try restarting transaction
      00:10:31,830 ERROR [liferay/async_service-7][ParallelDestination:71] Unable to process message {destinationName=liferay/async_service, response=null, responseDestinationName=null, responseId=null, payload=com.liferay.portlet.social.service.SocialActivityLocalService.addActivity(com.liferay.portlet.s
      ocial.model.SocialActivity,com.liferay.portlet.social.model.SocialActivity)@com.liferay.portlet.social.service.impl.SocialActivityLocalServiceImpl, values={permissionChecker=com.liferay.portal.kernel.util.TransientValue@493a1a36, principalName=10914, companyId=1}}
      com.liferay.portal.kernel.messaging.MessageListenerException: java.lang.RuntimeException: com.liferay.portal.kernel.exception.SystemException: com.liferay.portal.kernel.dao.orm.ORMException: org.hibernate.exception.GenericJDBCException: Could not execute JDBC batch update
              at com.liferay.portal.kernel.messaging.BaseMessageListener.receive(BaseMessageListener.java:31)
              at com.liferay.portal.kernel.messaging.InvokerMessageListener.receive(InvokerMessageListener.java:63)
              at com.liferay.portal.kernel.messaging.ParallelDestination$1.run(ParallelDestination.java:68)
              at com.liferay.portal.kernel.concurrent.ThreadPoolExecutor$WorkerTask._runTask(ThreadPoolExecutor.java:675)
              at com.liferay.portal.kernel.concurrent.ThreadPoolExecutor$WorkerTask.run(ThreadPoolExecutor.java:586)
              at java.lang.Thread.run(Thread.java:722)
      Caused by: java.lang.RuntimeException: com.liferay.portal.kernel.exception.SystemException: com.liferay.portal.kernel.dao.orm.ORMException: org.hibernate.exception.GenericJDBCException: Could not execute JDBC batch update
              at com.liferay.portal.messaging.async.AsyncAdvice$2.run(AsyncAdvice.java:79)
              at com.liferay.portal.messaging.async.AsyncMessageListener.doReceive(AsyncMessageListener.java:30)
              at com.liferay.portal.kernel.messaging.BaseMessageListener.receive(BaseMessageListener.java:25)
              ... 5 more
      Caused by: com.liferay.portal.kernel.exception.SystemException: com.liferay.portal.kernel.dao.orm.ORMException: org.hibernate.exception.GenericJDBCException: Could not execute JDBC batch update
              at com.liferay.portal.service.persistence.impl.BasePersistenceImpl.processException(BasePersistenceImpl.java:211)
              at com.liferay.portlet.social.service.persistence.SocialActivityCounterPersistenceImpl.fetchByG_C_C_N_O_E(SocialActivityCounterPersistenceImpl.java:1783)
              at com.liferay.portlet.social.service.persistence.SocialActivityCounterPersistenceImpl.fetchByG_C_C_N_O_E(SocialActivityCounterPersistenceImpl.java:1656)
              at com.liferay.portlet.social.service.impl.SocialActivityCounterLocalServiceImpl.fetchLatestActivityCounter(SocialActivityCounterLocalServiceImpl.java:770)
              at com.liferay.portlet.social.service.impl.SocialActivityCounterLocalServiceImpl.incrementActivityCounter(SocialActivityCounterLocalServiceImpl.java:1202)
              at com.liferay.portlet.social.service.impl.SocialActivityCounterLocalServiceImpl.addActivityCounters(SocialActivityCounterLocalServiceImpl.java:341)
              at sun.reflect.GeneratedMethodAccessor1217.invoke(Unknown Source)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
              at java.lang.reflect.Method.invoke(Method.java:601)
              at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:122)
              at com.liferay.portal.spring.transaction.TransactionInterceptor.invoke(TransactionInterceptor.java:80)
              at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:118)
              at com.liferay.portal.spring.aop.ServiceBeanAopProxy.invoke(ServiceBeanAopProxy.java:162)
              at $Proxy161.addActivityCounters(Unknown Source)
              at com.liferay.portlet.social.service.impl.SocialActivityLocalServiceImpl.addActivity(SocialActivityLocalServiceImpl.java:246)
              at sun.reflect.GeneratedMethodAccessor1216.invoke(Unknown Source)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
              at java.lang.reflect.Method.invoke(Method.java:601)
              at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:122)
              at com.liferay.portal.spring.transaction.TransactionInterceptor.invoke(TransactionInterceptor.java:80)
              at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:118)
              at com.liferay.portal.messaging.async.AsyncAdvice$2.run(AsyncAdvice.java:76)
              ... 7 more
      Caused by: com.liferay.portal.kernel.dao.orm.ORMException: org.hibernate.exception.GenericJDBCException: 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:108)
              at com.liferay.portal.dao.orm.hibernate.QueryImpl.list(QueryImpl.java:85)
              at com.liferay.portlet.social.service.persistence.SocialActivityCounterPersistenceImpl.fetchByG_C_C_N_O_E(SocialActivityCounterPersistenceImpl.java:1754)
              ... 27 more
      Caused by: org.hibernate.exception.GenericJDBCException: Could not execute JDBC batch update
              at org.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:140)
              at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:128)
              at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:66)
              at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:275)
              at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:268)
              at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:185)
              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:1185)
              at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1261)
              at org.hibernate.impl.QueryImpl.list(QueryImpl.java:102)
              at com.liferay.portal.dao.orm.hibernate.QueryImpl.list(QueryImpl.java:96)
              ... 29 more
      Caused by: java.sql.BatchUpdateException: Lock wait timeout exceeded; try restarting transaction
              at com.mysql.jdbc.PreparedStatement.executeBatchSerially(PreparedStatement.java:1257)
              at com.mysql.jdbc.PreparedStatement.executeBatch(PreparedStatement.java:943)
              at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeBatch(NewProxyPreparedStatement.java:1723)
              at org.hibernate.jdbc.BatchingBatcher.doExecuteBatch(BatchingBatcher.java:70)
              at org.hibernate.jdbc.AbstractBatcher.executeBatch(AbstractBatcher.java:268)
      

        Attachments

          Issue Links

            Activity

              People

              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:
                  Days since last comment:
                  6 years, 8 weeks, 6 days ago

                  Packages

                  Version Package
                  6.2.0 CE RC2