RE: [OS-JIRA] Created: (CAY-227) Cannot launch modeler on OSX when logged in as user with networked home directory

From: Andrus Adamchik (andru..bjectstyle.org)
Date: Tue Nov 02 2004 - 11:37:36 EST

  • Next message: Gentry, Michael: "RE: [OS-JIRA] Created: (CAY-227) Cannot launch modeler on OSX when logged in as user with networked home directory"

    I was also thinking about that when I looked at the stack... Still it is
    likely more subtle. Current behavior for handling multiple instances is
    that when a db.lck file is detected (this might indicate other another
    open app or a crashed app), it copies the db (using db1, db2, db3 and so
    on), and runs from that copy. So the fact that the copy can't be accessed
    is probably some concurrency issue (two instances of modeler loaded at the
    same time).

    Ah... This whole part should probably be redone anyway... Maybe the first
    instance that locks the DB should become an HSQL server?

    Also as Ari (the author of this bug report) is likely not on this list, I
    guess I should paste this thread as an issue comment in JIRA.

    Andrus

    > I don't think this is a network issue. Here is the offending exception,
    > I think:
    >
    > Caused by: java.sql.SQLException: The database is already in use by
    > another process: org.hsqldb.NIOLockFil..9737627[file
    > =/private/Network/Servers/dish.ish.com.au/SharedItems/Users/ari/.cayenne
    > /prefs/1.1/db3.lck, exists=true, locked=false, valid=false, fl =null]:
    >
    > With HSQLDB in embedded/standalone mode (where you aren't running a
    > server -- the client accesses the database file directly), the database
    > can only be accessed by one client at a time. I'd be willing to bet you
    > had tried to run the modeler twice (two different OS X systems). This
    > is related to the modeler switching over to HSQLDB to store preferences.
    >
    > /dev/mrg
    >
    >
    > -----Original Message-----
    > From: jir..bjectstyle.org [mailto:jira@objectstyle.org]
    > Sent: Tuesday, November 02, 2004 8:00 AM
    > To: cayenne-deve..bjectstyle.org
    > Subject: [OS-JIRA] Created: (CAY-227) Cannot launch modeler on OSX when
    > logged in as user with networked home directory
    >
    >
    > Message:
    >
    > A new issue has been created in JIRA.
    >
    > ---------------------------------------------------------------------
    > View the issue:
    >
    > http://objectstyle.org/jira/secure/ViewIssue.jspa?key=CAY-227
    >
    >
    > Here is an overview of the issue:
    > ---------------------------------------------------------------------
    > Key: CAY-227
    > Summary: Cannot launch modeler on OSX when logged in as user with
    > networked home directory
    > Type: Bug
    >
    > Status: Assigned
    > Priority: Major
    >
    > Project: Cayenne
    > Components:
    > CayenneModeler GUI
    > Versions:
    > 1.1
    >
    > Assignee: Andrus Adamchik
    > Reporter: Ari Maniatis
    >
    > Created: Tue, 2 Nov 2004 7:58 AM
    > Updated: Tue, 2 Nov 2004 7:58 AM
    > Environment: OSX 10.3, Cayenne 1.1RC2. Home directory is on network
    > share point. No problem when run as user with local home directory.
    >
    > Description:
    > apple.awt.EventQueueExceptionHandler Caught Throwable :
    > org.objectstyle.cayenne.CayenneRuntimeException: [v.1.1RC2 October 24
    > 2004] Global exception.
    > org.objectstyle.cayenne.CayenneRuntimeException: [v.1.1RC2 October 24
    > 2004] Global exception.
    > at
    > org.objectstyle.cayenne.access.util.SelectObserver.nextGlobalException(S
    > electObserver.java:222)
    > at
    > org.objectstyle.cayenne.access.DataNode.performQueries(DataNode.java:325
    > )
    > at
    > org.objectstyle.cayenne.access.DataDomain.performQueries(DataDomain.java
    > :654)
    > at
    > org.objectstyle.cayenne.access.DataContext.performQueries(DataContext.ja
    > va:1408)
    > at
    > org.objectstyle.cayenne.access.Transaction.performQueries(Transaction.ja
    > va:179)
    > at
    > org.objectstyle.cayenne.access.DataContext.performQueries(DataContext.ja
    > va:1366)
    > at
    > org.objectstyle.cayenne.access.DataContext.performQuery(DataContext.java
    > :1622)
    > at
    > org.objectstyle.cayenne.access.DataContext.performQuery(DataContext.java
    > :1556)
    > at
    > org.objectstyle.cayenne.pref.CayennePreferenceService.getDomain(CayenneP
    > referenceService.java:119)
    > at
    > org.objectstyle.cayenne.pref.CayennePreferenceService.getPreferenceDomai
    > n(CayennePreferenceService.java:172)
    > at
    > org.objectstyle.cayenne.pref.CayennePreferenceService.initPreferences(Ca
    > yennePreferenceService.java:180)
    > at
    > org.objectstyle.cayenne.pref.HSQLEmbeddedPreferenceService.startService(
    > HSQLEmbeddedPreferenceService.java:153)
    > at
    > org.objectstyle.cayenne.modeler.Application.initPreferences(Application.
    > java:295)
    > at
    > org.objectstyle.cayenne.modeler.Application.startup(Application.java:219
    > )
    > at org.objectstyle.cayenne.modeler.Main$1.run(Main.java:136) at
    > java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:178)
    > at java.awt.EventQueue.dispatchEvent(EventQueue.java:454)
    > at
    > java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThrea
    > d.java:234)
    > at
    > java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.
    > java:184)
    > at
    > java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:178)
    > at
    > java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:170)
    > at
    > java.awt.EventDispatchThread.run(EventDispatchThread.java:100)
    > Caused by: java.sql.SQLException: The database is already in use by
    > another process: org.hsqldb.NIOLockFil..9737627[file
    > =/private/Network/Servers/dish.ish.com.au/SharedItems/Users/ari/.cayenne
    > /prefs/1.1/db3.lck, exists=true, locked=false, valid=false, fl =null]:
    > at org.hsqldb.jdbc.jdbcUtil.sqlException(Unknown Source)
    > at org.hsqldb.jdbc.jdbcConnection.<init>(Unknown Source)
    > at org.hsqldb.jdbcDriver.getConnection(Unknown Source)
    > at org.hsqldb.jdbcDriver.connect(Unknown Source)
    > at
    > org.objectstyle.cayenne.conn.DriverDataSource.getConnection(DriverDataSo
    > urce.java:151)
    > at
    > org.objectstyle.cayenne.conn.PooledConnectionImpl.reconnect(PooledConnec
    > tionImpl.java:126)
    > at
    > org.objectstyle.cayenne.conn.PooledConnectionImpl.getConnection(PooledCo
    > nnectionImpl.java:163)
    > at
    > org.objectstyle.cayenne.conn.PoolManager.uncheckConnection(PoolManager.j
    > ava:427)
    > at
    > org.objectstyle.cayenne.conn.PoolManager.getConnection(PoolManager.java:
    > 411)
    > at
    > org.objectstyle.cayenne.conn.PoolManager.getConnection(PoolManager.java:
    > 385)
    > at
    > org.objectstyle.cayenne.access.DataNode.performQueries(DataNode.java:313
    > )
    > ... 20 more
    >
    >
    >
    > ---------------------------------------------------------------------
    > JIRA INFORMATION:
    > This message is automatically generated by JIRA.
    >
    > If you think it was sent incorrectly contact one of the administrators:
    > http://objectstyle.org/jira/secure/Administrators.jspa
    >
    > If you want more information on JIRA, or have a bug to report see:
    > http://www.atlassian.com/software/jira



    This archive was generated by hypermail 2.0.0 : Tue Nov 02 2004 - 11:37:37 EST