About timeAllowed when using LTR

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

About timeAllowed when using LTR

李世明
Hi:

When using the LTR, open timeAllowed parameter, LTR feature of query may call ExitableFilterAtomicReader. CheckAndThrow timeout detection.

If a timeout occurs at this point, the exception ExitingReaderException is thrown, resulting in a no-result return.

Is it possible to accommodate this exception in LTR so that any result that THE LTR has cleared will be returned instead of empty.

This exception occurs in two places:

1. LTRScoringQuery. CreateWeight or createWeightsParallel. Here is the loading stage, timeout directly end is acceptable.

2. ModelWeight.scorer. This is a stage that evaluates each Doc and can catch the exception, end early, and return part of the result.
Reply | Threaded
Open this post in threaded view
|

Re: About timeAllowed when using LTR

Mikhail Khludnev-2
Hi, Dawn.

It might make sense. Feel free to raise a jira, and "patches are welcome!".


On Tue, Jun 30, 2020 at 10:33 AM Dawn <[hidden email]> wrote:

> Hi:
>
> When using the LTR, open timeAllowed parameter, LTR feature of query may
> call ExitableFilterAtomicReader. CheckAndThrow timeout detection.
>
> If a timeout occurs at this point, the exception ExitingReaderException is
> thrown, resulting in a no-result return.
>
> Is it possible to accommodate this exception in LTR so that any result
> that THE LTR has cleared will be returned instead of empty.
>
> This exception occurs in two places:
>
> 1. LTRScoringQuery. CreateWeight or createWeightsParallel. Here is the
> loading stage, timeout directly end is acceptable.
>
> 2. ModelWeight.scorer. This is a stage that evaluates each Doc and can
> catch the exception, end early, and return part of the result.



--
Sincerely yours
Mikhail Khludnev