[This is the old, single node version for Elasticsearch 2.x, see the latest "Siren Federate" plugin for distributed Elasticsearch 5.x and 6.x capabilities]
Currently the cache key is generated from the join query definition. However, the data in the index can change and two identical queries can return different result sets.
Given that the cache key is used in the lucene query cache and in the siren join cache, this can lead to incorrect results.
Instead, we have to create a cache key that will be dependent on the version of the source index.
Currently the cache key is generated from the join query definition. However, the data in the index can change and two identical queries can return different result sets. Given that the cache key is used in the lucene query cache and in the siren join cache, this can lead to incorrect results. Instead, we have to create a cache key that will be dependent on the version of the source index.