Uploaded image for project: 'ActiveMQ Classic'
  1. ActiveMQ Classic
  2. AMQ-1244

DatabaseLocker implementation impedes database replication

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 4.1.1
    • 5.2.0
    • Message Store
    • None
    • Latest ActiveMQ snapshot, Sybase ASE 12.5.x

    Description

      The current implementation of the JDBC Master/Slave feature makes one broker (the master) acquire a lock on a database object. In Sybase, this has been implemented with the command:

      LOCK TABLE foo IN EXCLUSIVE MODE

      This command can only be executed within a transaction, see:
      http://manuals.sybase.com/onlinebooks/group-as/asg1250e/sqlug/@Generic__BookTextView/54552;pt=54651

      This implies that for the whole lifespan of the ActiveMQ-process there is an open transaction in the RDBMS. This is a problem in a professional environment making use of a database replication server: The open transaction impedes that the transaction log in the active database is emptied, then the stable queue at the replication server won't be purged and will steadily grow up to infinitum. We have been able to observe this behaviour.

      Attachments

        Activity

          People

            rajdavies Robert Davies
            marsangr Marcos Sanz
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: