On 03/12/2014 07:52 PM, Alexander Korotkov wrote:
>> >
>> >* I just noticed that the dummy trueTriConsistentFn returns GIN_MAYBE,
>> >rather than GIN_TRUE. The equivalent boolean version returns 'true' without
>> >recheck. Is that a typo, or was there some reason for the discrepancy?
>> >
> Actually, there is not difference in current implementation, But I
> implemented it so that trueTriConsistentFn can correctly work
> with shimBoolConsistentFn. In this case it should return GIN_MAYBE in case
> when it have no GIN_MAYBE in the input (as analogue of setting recheck
> flag). So, it could return GIN_TRUE only if it checked that input has
> GIN_MAYBE. However, checking would be just wasting of cycles. So I end up
> with just GIN_MAYBE :-)
I don't understand that. As it is, it's inconsistent with the boolean
trueConsistent function. trueConsistent always returns TRUE with
recheck=false. And in GIN_SEARCH_MODE_EVERYTHING mode, there are no
regular scan keys.
- Heikki