History | Log In     View a printable version of the current page.  
Issue Details (XML | Word | Printable)

Key: UP-2019
Type: Bug Bug
Status: Open Open
Priority: Major Major
Assignee: Unassigned
Reporter: Jen Bourey
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
uPortal

Importing existing layouts fails to properly update them

Created: 16/Apr/08 12:57 PM   Updated: 05/Aug/08 02:44 PM
Component/s: Import / Export
Affects Version/s: 3.0.0-RC3, 3.0.0, 3.0.1
Fix Version/s: 3.0.2, 3.1.0

Original Estimate: Unknown Remaining Estimate: Unknown Time Spent: Unknown
Environment: PostgreSQL


 Description  « Hide
When an existing layout is re-imported, it should update the layout in question. Currently it results in a stack trace.

 All   Comments   Work Log   Change History   FishEye      Sort Order:
Jen Bourey [16/Apr/08 09:40 PM]
Stack trace for the current admin.layout ends with:

[java] Caused by: org.springframework.dao.DataRetrievalFailureException: Failed to retrieve ChannelDefinition for fName='jasig-test-portlet'; nested exception is javax.persistence.PersistenceException: org.hibernate.exception.GenericJDBCException: could not execute query
[java] at org.jasig.portal.io.support.PortletEntityPreferenceHandler.getPortletEntity(PortletEntityPreferenceHandler.java:151)
[java] at org.jasig.portal.io.support.PortletEntityPreferenceHandler.setEntityPreference(PortletEntityPreferenceHandler.java:121)
[java] ... 68 more
[java] Caused by: javax.persistence.PersistenceException: org.hibernate.exception.GenericJDBCException: could not execute query
[java] at org.hibernate.ejb.AbstractEntityManagerImpl.throwPersistenceException(AbstractEntityManagerImpl.java:630)
[java] at org.hibernate.ejb.QueryImpl.getResultList(QueryImpl.java:75)
[java] at org.jasig.portal.portlet.dao.jpa.JpaPortletDefinitionDao.getPortletDefinition(JpaPortletDefinitionDao.java:101)
[java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[java] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
[java] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
[java] at java.lang.reflect.Method.invoke(Method.java:585)
[java] at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:301)
[java] at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
[java] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
[java] at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106)
[java] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
[java] at org.springframework.aop.aspectj.AspectJAfterThrowingAdvice.invoke(AspectJAfterThrowingAdvice.java:54)
[java] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
[java] at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:77)
[java] at org.jasig.portal.portlet.dao.jpa.ThreadContextClassLoaderAspect.doThreadContextClassLoaderUpdate(ThreadContextClassLoaderAspect.java:37)
[java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[java] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
[java] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
[java] at java.lang.reflect.Method.invoke(Method.java:585)
[java] at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:627)
[java] at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:616)
[java] at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:64)
[java] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
[java] at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
[java] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
[java] at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
[java] at $Proxy39.getPortletDefinition(Unknown Source)
[java] at org.jasig.portal.portlet.registry.PortletDefinitionRegistryImpl.getPortletDefinition(PortletDefinitionRegistryImpl.java:100)
[java] at org.jasig.portal.RDBMChannelRegistryStore.getChannelDefinition(RDBMChannelRegistryStore.java:518)
[java] at org.jasig.portal.RDBMChannelRegistryStore.getChannelDefinition(RDBMChannelRegistryStore.java:593)
[java] at org.jasig.portal.io.support.PortletEntityPreferenceHandler.getPortletEntity(PortletEntityPreferenceHandler.java:143)
[java] ... 69 more
[java] Caused by: org.hibernate.exception.GenericJDBCException: could not execute query
[java] at org.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:103)
[java] at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:91)
[java] at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
[java] at org.hibernate.loader.Loader.doList(Loader.java:2223)
[java] at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2104)
[java] at org.hibernate.loader.Loader.list(Loader.java:2099)
[java] at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:378)
[java] at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:338)
[java] at org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:172)
[java] at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1121)
[java] at org.hibernate.impl.QueryImpl.list(QueryImpl.java:79)
[java] at org.hibernate.ejb.QueryImpl.getResultList(QueryImpl.java:66)
[java] ... 99 more
[java] Caused by: org.postgresql.util.PSQLException: ERROR: current transaction is aborted, commands ignored until end of transaction block
[java] at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:1548)
[java] at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1316)
[java] at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:191)
[java] at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:452)
[java] at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:351)
[java] at org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:255)
[java] at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:92)
[java] at org.hibernate.jdbc.AbstractBatcher.getResultSet(AbstractBatcher.java:186)
[java] at org.hibernate.loader.Loader.getResultSet(Loader.java:1787)
[java] at org.hibernate.loader.Loader.doQuery(Loader.java:674)
[java] at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:236)
[java] at org.hibernate.loader.Loader.doList(Loader.java:2220)
[java] ... 107 more


Eric Dalquist [17/Apr/08 12:28 PM]
With some additional debugging Jen found the following error message:

WARN [main] util.JDBCExceptionReporter Apr/17 10:51:42.580 - SQL Error: 0, SQLState: 25P02

This appears to be come specific interaction between Hibernate and PostgreSQL that we are still trying to track down.