li36909 opened a new pull request #2790:
URL: https://github.com/apache/hudi/pull/2790


   ## *Tips*
   - *Thank you very much for contributing to Apache Hudi.*
   - *Please review https://hudi.apache.org/contributing.html before opening a 
pull request.*
   
   ## What is the purpose of the pull request
   
   current when hudi bootstrap a parquet file, or upsert into a parquet file 
which contains timestmap column, it will fail because these issues:
   
   1) At bootstrap operation, if the origin parquet file was written by a spark 
application, then spark will default save timestamp as int96(see 
spark.sql.parquet.int96AsTimestamp), then bootstrap will fail, it’s because of 
Hudi can not read Int96 type now.(this issue can be solve by upgrade parquet to 
1.12.0, and set parquet.avro.readInt96AsFixed=true, please check https://github 
<https://github/>.com/apache/parquet-mr/pull/831/files) 
   
   2) after bootstrap, doing upsert will fail because we use hoodie schema to 
read origin parquet file. The schema is not match because hoodie schema  treat 
timestamp as long and at origin file it’s Int96 
   
   3) after bootstrap, and partial update for a parquet file will fail, because 
we copy the old record and save by hoodie schema( we miss a convertFixedToLong 
operation like spark does)
   
   ## Brief change log
   
   *(for example:)*
     - *Modify AnnotationLocation checkstyle rule in checkstyle.xml*
   
   ## Verify this pull request
   
   add new UT, and also check by exists UTs
   
   ## Committer checklist
   
    - [ ] Has a corresponding JIRA in PR title & commit
    
    - [ ] Commit message is descriptive of the change
    
    - [ ] CI is green
   
    - [ ] Necessary doc changes done or have another open PR
          
    - [ ] For large changes, please consider breaking it into sub-tasks under 
an umbrella JIRA.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Reply via email to