Ticket #126 (accepted defect)

Opened 6 months ago

Last modified 4 months ago

C3po error after making configuration change

Reported by: dbs Owned by: dbs
Priority: major Milestone: CONGO 2.1.0
Component: Coconut Version: 2.0
Keywords: Cc:

Description

If a user makes a chnage to the configuration settings (Maintenance -> Server Settings) - it forces a logout (necessary?) - but worse, after logging in, a C3po error occurs. This happens every time.

description The server encountered an internal error () that prevented
it from fulfilling this request.

exception

java.sql.SQLException: com.mchange.v2.c3p0.ComboPooledDataSource? [
java.beans.IntrospectionException?:
java.lang.reflect.InvocationTargetException?
[numThreadsAwaitingCheckoutDefaultUser] ] has been closed() -- you can
no longer use it.

com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource?.assertCpds(AbstractPoolBackedDataSource?.ja

va:447)

com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource?.getPoolManager(AbstractPoolBackedDataSourc?

e.java:459)

com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource?.getConnection(AbstractPoolBackedDataSource?

.java:128)

com.stonekeep.congo.dao.ConventionDAO.recalculate(ConventionDAO.java:159)
com.stonekeep.congo.interceptors.SessionChecker?.intercept(SessionChecker?.java:66)
com.opensymphony.xwork2.DefaultActionInvocation?$1.doProfiling(DefaultActionInvocation?.java:230)
com.opensymphony.xwork2.DefaultActionInvocation?$1.doProfiling(DefaultActionInvocation?.java:229)
com.opensymphony.xwork2.util.profiling.UtilTimerStack?.profile(UtilTimerStack?.java:456)
com.opensymphony.xwork2.DefaultActionInvocation?.invoke(DefaultActionInvocation?.java:227)
com.stonekeep.congo.interceptors.ToggleInterceptor?.intercept(ToggleInterceptor?.java:29)
sun.reflect.GeneratedMethodAccessor?93.invoke(Unknown Source)

Change History

Changed 4 months ago by dbs

Owen says this will take quite a lot of work to fix as we're modifying the running context ont he fly - and requires a context cleanout and re-init when a change is made.

The better fix would be to move non-JDBC / C3PO related changes out of this process and into a different properties mechanism that will allow reloads on the fly. A longer term project, I think.

Changed 4 months ago by dbs

  • owner changed from ojacobson to dbs
  • priority changed from blocker to major
  • status changed from new to accepted
Note: See TracTickets for help on using tickets.