Uploaded image for project: 'Infinispan'
  1. Infinispan
  2. ISPN-1297

Add configuration option to enable single-phase transactions for implicitly started transactions

    XMLWordPrintable

Details

    Description

      Starting with Infinispan 5.1 a cache is only able to function in either transactional or non-transactional mode. Mixed mode won't be supported any more.
      This is causing a backward compatibility issue for existing users that make both transactional and non-transactional access to the same cache.
      A good example is the Lucene-directory that is writing to a cache through batching API and directly. In Lucene-D's case, one can configure autoCommit=true for a transaction: that will induce a transaction within direct (i.e. non transactional) calls. Whilst this preserves backward compatibility, it is not "good enough" as an injected transaction does results in 2 RPCs, one for each phase of 2PC, and that is less performant than the "old" direct call. In order to solve this performance shortcoming, another attribute is to be added: use1PcForInducedTransaction(default to true). Enabling this attribute causes the induced transaction to force an 1PC resulting in a single RPC. Other tx that induced one won't be affected by this configuration.

      This mail thread is also relevant: http://bit.ly/plNbLT

      Attachments

        Activity

          People

            mircea.markus Mircea Markus (Inactive)
            mircea.markus Mircea Markus (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: