Details

    • Type: Improvement Improvement
    • Status: Closed
    • Priority: Blocker Blocker
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 1.4
    • Component/s: jackrabbit-core
    • Labels:
      None

      Description

      Currently the data store garbage collection needs to be run manually. It should be simpler to use (maybe tool based), or automatic.

        Activity

        Thomas Mueller created issue -
        Thomas Mueller made changes -
        Field Original Value New Value
        Comment [ Hi,

        The patch looks good. I tried with PostgreSQL and got this problem:

        ConnectionRecoveryManager: could not setup connection, reason: could not load driver: org.postgresql.Driver, state/code: null/0
        (ConnectionRecoveryManager.java, line 430)
        ConnectionRecoveryManager: blocking until database connection is up again...
        (ConnectionRecoveryManager.java, line 368)

        Do you agree that retry doesn't make sense if the driver could not be loaded? If yes I will change the code. Also, it would probably make sense to write the database URL and the user name (not the password) to the log file, so the person (alias poor guy) who has to start the database knows which one and can test the connection using some other tool.

        Thomas ]
        Thomas Mueller made changes -
        Comment [ If that's OK with you, I will make it throw a RepositoryException if the database driver could not be loaded or initialized (ExceptionInInitializerError):

            private void setupConnection() throws SQLException, RepositoryException {
                try {
                    Class driverClass = Class.forName(driver);
                    // Workaround for Apache Derby:
                    // The JDBC specification recommends the Class.ForName method without the .newInstance() method call,
                    // but adding the newInstance() guarantees that Derby will be booted on any Java Virtual Machine.
                    driverClass.newInstance();
                } catch (Throwable e) {
                    throw new RepositoryException("Could not load or initialize the database driver class " + driver, e);
                } ]
        Jukka Zitting made changes -
        Fix Version/s 1.4 [ 12312447 ]
        Jukka Zitting made changes -
        Priority Major [ 3 ] Blocker [ 1 ]
        Thomas Mueller made changes -
        Status Open [ 1 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Jukka Zitting made changes -
        Status Resolved [ 5 ] Closed [ 6 ]
        Jukka Zitting made changes -
        Workflow jira [ 12413047 ] no-reopen-closed, patch-avail [ 12468777 ]

          People

          • Assignee:
            Thomas Mueller
            Reporter:
            Thomas Mueller
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development