Uploaded image for project: 'Lucene - Core'
  1. Lucene - Core
  2. LUCENE-1149

add XA transaction support

    XMLWordPrintableJSON

    Details

    • Type: New Feature
    • Status: Reopened
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: core/index
    • Labels:
      None
    • Lucene Fields:
      New

      Description

      Need to add XA transaction support to Lucene.

      Without XA support, it is difficult to keep disparate resources (e.g. database) in sync with the Lucene index.

      A review of the XA support added to Hibernate might be a good start (although Hibernate almost always uses a XA capable backing store database).

      It would be ideal to have a combined IndexReaderWriter instance, then create a XAIndexReaderWriter which wraps it.

      The implementation might be as simple as a XA log file which lists the XA transaction id, and the segments XXX number(s), since Lucene already allows you to rollback to a previous version (??? for sure, or does it only allow you to abort the current commit).

      If operating under a XA transaction, the no explicit commits or rollbacks should be allowed on the instance.

      The index would be committed during XA prepare(), and then if needed rolledback when requested. The XA commit() would be a no-op.

      There is a lot more to this but this should get the ball rolling.

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              rengels@ix.netcom.com robert engels
            • Votes:
              2 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated: