
| Key: |
UP-1773
|
| Type: |
Bug
|
| Status: |
Open
|
| Priority: |
Major
|
| Assignee: |
Unassigned
|
| Reporter: |
George Lindholm
|
| Votes: |
0
|
| Watchers: |
0
|
|
If you were logged in you would be able to see more operations.
|
|
|
uPortal
Created: 01/Aug/07 12:22 AM
Updated: 19/Dec/07 02:47 PM
|
|
| Component/s: |
Database
|
| Affects Version/s: |
2.5.3 GA
|
| Fix Version/s: |
None
|
|
|
Original Estimate:
|
Unknown
|
Remaining Estimate:
|
Unknown
|
Time Spent:
|
Unknown
|
|
|
ERROR [TP-Processor23] portal.RDBMUserIdentityStore.[] Jul/31 15:44:44 - SQL database error while retrieving user's portal UID
org.jasig.portal.AuthorizationException: SQL database error while retrieving user's portal UID
at org.jasig.portal.RDBMUserIdentityStore.updateUser(RDBMUserIdentityStore.java:680)
at org.jasig.portal.RDBMUserIdentityStore.getPortalUID(RDBMUserIdentityStore.java:287)
at org.jasig.portal.services.Authentication.authenticate(Authentication.java:183)
at org.jasig.portal.LoginServlet.service(LoginServlet.java:141)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:199)
at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:282)
at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:754)
at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:684)
at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:876)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.sql.SQLException: Already closed
at org.apache.tomcat.dbcp.dbcp.PoolablePreparedStatement.close(PoolablePreparedStatement.java:75)
at org.apache.tomcat.dbcp.dbcp.DelegatingStatement.close(DelegatingStatement.java:165)
at org.jasig.portal.RDBMUserIdentityStore.updateUser(RDBMUserIdentityStore.java:573)
... 19 more
Looking at the code I see some dubious database connection management. Not saying that it
hides another problem.
The error was generated during a heavy loadtest
|
|
Description
|
ERROR [TP-Processor23] portal.RDBMUserIdentityStore.[] Jul/31 15:44:44 - SQL database error while retrieving user's portal UID
org.jasig.portal.AuthorizationException: SQL database error while retrieving user's portal UID
at org.jasig.portal.RDBMUserIdentityStore.updateUser(RDBMUserIdentityStore.java:680)
at org.jasig.portal.RDBMUserIdentityStore.getPortalUID(RDBMUserIdentityStore.java:287)
at org.jasig.portal.services.Authentication.authenticate(Authentication.java:183)
at org.jasig.portal.LoginServlet.service(LoginServlet.java:141)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:199)
at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:282)
at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:754)
at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:684)
at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:876)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.sql.SQLException: Already closed
at org.apache.tomcat.dbcp.dbcp.PoolablePreparedStatement.close(PoolablePreparedStatement.java:75)
at org.apache.tomcat.dbcp.dbcp.DelegatingStatement.close(DelegatingStatement.java:165)
at org.jasig.portal.RDBMUserIdentityStore.updateUser(RDBMUserIdentityStore.java:573)
... 19 more
Looking at the code I see some dubious database connection management. Not saying that it
hides another problem.
The error was generated during a heavy loadtest |
Show » |
|
This is the relevant block of code:
insertStmt = con.prepareStatement(insert);
while (rs.next()) {
insert =
"INSERT INTO UP_USER_PARAM (USER_ID, USER_PARAM_NAME, USER_PARAM_VALUE) " +
"VALUES(?, ?, ?)";
...
There is no initialization of the "insert" string prior to this code (although it was there in previous versions).
-Robin