Cayenne
  1. Cayenne
  2. CAY-466

Improving Modeler preferences DB concurrency and consistency

    Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Major Major
    • Resolution: Won't Fix
    • Affects Version/s: 1.2 branch
    • Fix Version/s: Undefined future
    • Component/s: Modeler
    • Labels:
      None

      Description

      Embedded HSQLDB creates a number of concurrency problems - two or more instances of the Modeler can't use the same DB; when a Modeler is killed via kill -9, the DB lock is not cleaned; fresh preferences updates are not picked up by the local apps using cayenne "JNDI emulation" mode, etc.

      Suggested improvements:

      • Issue SHUTDOWN periodically (most likely by closing the connection pool and using "shutdown=true" URL property, so it will be transparent to Cayenne)
      • When a DB is locked we create a copy of it so that the Modeler can still run. But then if the preferences are saved to this copy, they never make it to the master instance. Improve that by presenting "unlock preferences" dialog when a user attempts to edit preferences on the copy. If a users selects "yes, unlock", an attempt will be made to delete the lock on the master DB and take it over.

        Activity

        No work has yet been logged on this issue.

          People

          • Assignee:
            Andrus Adamchik
            Reporter:
            Andrus Adamchik
          • Votes:
            3 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development