Fix Upgrade/Downgrade Command To Keep MDT Table and Data Table (max one version difference apart)
- Dominant language
- Java
- Stars
- 6.2k
- Forks
- 2.5k
- Avg merge
- 2d 8h
- Merged PRs (30d)
- 111
Description
Currently within our code for Upgrade/Downgrade we first either fully uprgade/downgrade the mdt table from a startVersion to an endVersion. Then we do the same for the data table. For example say a user would like to go from table version 6 to now table version 9.
We would first migrate the MDT table to 6 -> 7, then 7-> 8, and finally 8->9 . Then we repeat the same process for the data table.
The issue is that if there is a crash after upgrading the mdt table say during the process of finishing 9, the problem is the data table is still stuck on 6.
We should ideally increment both mdt table and data table together to a version such as doing mdt table 6->7 and dt table 6->7, then move on to next increment for both.
## JIRA info
- Link: https://issues.apache.org/jira/browse/HUDI-9660
- Type: Improvement
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by tracing the Upgrade/Downgrade command and the existing migration loops for the MDT and data tables. Check how a crash during one version transition leaves the tables inconsistent. Done means both tables advance together by at most one version difference, with coverage for interrupted upgrades or downgrades.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- data-engineering, databases
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100