apache / apache/pinot

Low maximum limit for batch jobSpec pushParallelism

Open
#6,146 4 comments 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
6.1k
Forks
1.5k
Avg merge
1d 21h
Merged PRs (30d)
189

Description

On batch jobs processing lots of segments for a table, they often run into Zookeeper conflicts when updating idealState. This causes contention on updates, slowing down everything. To resolve that the pushParallelism on a job spec had to be reduced to ~5, so that it would conflicts less recently. There was another issue y'all resolved which helped ensure progress happened on conflicts.

Being able to upload segments faster will drastically reduce the burden for operating Pinot (backfilling, large segment uploads, or for adjusting existing data).

Contributor guide

Open the contributing guide

Research direction

Start by tracing the job spec pushParallelism limit and the batch-job updates to idealState, then examine how Zookeeper conflicts are handled. Reproduce the contention with a high pushParallelism value if a suitable batch-job path is available. Done means segment uploads can use a higher parallelism without recurring conflicts or loss of progress.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
databases, distributed-systems
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.