When indexing is set up, the Query module transparently indexes every added, updated, or removed cache entry. Indices improve performance of queries, though induce additional overhead during updates. For index-less querying see Chapter 6, The Infinispan Query DSL.
For data that already exists in the grid, create an initial Lucene index. After relevant properties and annotations are added, trigger an initial batch index of the books as shown in Section 2.4.4, “Rebuilding the Index”.
1.4.1. Using Indexing with Transactions
In Red Hat JBoss Data Grid, the relationship between transactions and indexing is as follows:
- If the cache is transactional, index updates are applied using a listener after the commit process (after-commit listener). An index update failure does not cause the transaction as a whole to fail.
- If the cache is not transactional, index updates are applied using a listener that works after the event completes (post-event listener).