Custom filter implementations must provide proper implementations of the #equals() and #hashCode() methods.
Description
Activity
Show:
Fixed
Assignee
Andrej Golovnin
Andrej GolovninReporter
Andrej Golovnin
Andrej GolovninComponents
Fix versions
Affects versions
Priority
Created April 23, 2017 at 3:21 PM
Updated May 11, 2017 at 7:35 AM
Resolved April 23, 2017 at 6:39 PM
The filters ChainedFilter, DistanceFilter and SpatialHashFilter does not have their own implementations of the #equals() and #hashCode() methods. A filter may be used as a key for the Lucene's QueryCache and this cache requires that all queries (a filter is a query) must provide proper implementations of the #equals() and #hashCode() methods. The absence of the implementations for this methods may lead to incorrect results of a query execution.
Btw. I think Hibernate Search should allow to configure different QueryCache and QueryCachingPolicy.