Replace our TimSort with JDK TimSort [LUCENE-9632]
Open
affects-version:9.0
legacy-jira-priority:Major
type:enhancement
- Dominant language
- Java
- Stars
- 3.6k
- Forks
- 1.4k
- Avg merge
- 2d 11h
- Merged PRs (30d)
- 88
Description
JDK 11 has a TimSort with very similar lineage to our TimSort (written by Josh Bloch, based on Tim Peter's python list sort), we should consider replacing our fork with a version that we don't have to maintain.
---
Migrated from [LUCENE-9632](https://issues.apache.org/jira/browse/LUCENE-9632) by Mike Drob (@madrob), updated Jan 23 2021
Contributor guide
Research direction
Locate Lucene's maintained TimSort fork and its call sites, then compare them with the JDK 11 TimSort implementation. Check the relevant sorting tests and compatibility requirements first; done means the fork is replaced without changing sorting behavior or leaving callers dependent on the old implementation.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- backend
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100