Skip to content

Using paging to improve performance for indexlookup #30578

Closed
@you06

Description

Enhancement

#29612 allows TiDB's distsql executors using paging copr requests for pipelined processing. However, paging copr will introduce more RPC rounds. There is a use case which paging copr is a wise choose, only partial data is desired, e.g. a limit executor upon a distsql executor. Limit executor can early stop the distsql executor if distsql executor using paging copr, which does not fetch all data one time.

In most single read cases, limit can be pushed down, so we focus on the double read case. There are some discussions in #21250 which described the problem in double read and got a conclusion that streaming API is the correct solution. As there are still many issues on the streaming API, we use an easier approach, paging API.

This issue suggests the usage of paging API in indexlookup executor which are under limit executor(they can not be pushed down in some cases).

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

No one assigned

    Labels

    type/enhancementThe issue or PR belongs to an enhancement.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions