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

selectorAware subscription cache replication

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Won't Fix
    • Affects Version/s: 5.10.0
    • Fix Version/s: None
    • Component/s: None
    • Environment:

      ActiveMQ 5.10.0
      Replica Leveldb Cluster

      Description

      AMQ Replica LevelDB cluster does not replicate VirtualTopic Subscriber's selector expression. So on consumer disconnect followed by failover, new master does not have consumer's selector expression. It causes consumer to miss messages published during its offline duration.

      Steps to reproduce:
      1. consumer subscribes (JMSSelector filter)
      2. producer publishes
      3. consumer consumes
      4. consumer disconnects (offline)
      5. Activemq failover occurs (new master gets elected)
      6. producer publishes
      7. consumer reconnects ( missed messages during offline period)

      I poked around SelectorAware cache code. It persists selector cache to local filesystem, that never gets replicated to slave nodes.
      Possible solution is to persists subscription info to leveldb, so that it gets replicated.

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              pankajtakawale Pankaj Takawale
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: