LsomeYeah opened a new pull request, #8616:
URL: https://github.com/apache/paimon/pull/8616

   ## Summary
   
   Add a physical full-history clone mode for Paimon tables across explicitly 
mapped storage locations. The clone preserves retained table history and 
rewrites metadata references at the target while leaving the existing logical 
clone behavior unchanged.
   
   ## Changes
   
   - add `clone_mode=full-history` and repeatable `path_mapping` options to the 
Flink clone action and procedure
   - discover payload files reachable from retained main and branch snapshots, 
tags, and long-lived changelogs
   - copy normal and external data files, extra files, and index files with 
independent source and target `FileIO` instances
   - restore historical schemas and rewrite manifests, manifest lists, 
snapshots, tags, branches, changelogs, statistics, indexes, and hints
   - add source fingerprints, ownership/completion markers, two-phase payload 
publication, and idempotent retry checks
   - keep file-copy parallelism independent of table bucket count
   - document the full-history interface, operational contract, and limitations
   
   ## Testing
   
   - `mvn -s ~/.m2/settings.xml.paimon-ali -pl paimon-core 
-Dtest='org.apache.paimon.clone.*Test,org.apache.paimon.tag.TagTimeExpireTest' 
test`
   - `mvn -s ~/.m2/settings.xml.paimon-ali -pl paimon-flink/paimon-flink-common 
-Pflink1 -DwildcardSuites=none -DfailIfNoTests=false 
-Dtest='org.apache.paimon.flink.action.CloneActionTest,org.apache.paimon.flink.clone.history.*Test,org.apache.paimon.flink.procedure.CloneProcedureTest,org.apache.paimon.flink.procedure.ProcedureTest'
 clean test`
   - `mvn -s ~/.m2/settings.xml.paimon-ali -pl paimon-flink/paimon-flink-common 
-Pflink1 -DwildcardSuites=none -DfailIfNoTests=false 
-Dtest=org.apache.paimon.flink.action.CloneFullHistoryActionITCase test`
   
   ## Current Limitations
   
   - target catalog registration is not included
   - blob descriptors, blob views, and Iceberg compatibility metadata are not 
migrated
   - filtered, format-converting, metadata-only, and Spark execution modes are 
not included
   - mapped external data and index locations must be dedicated to the clone
   - existing-file validation compares sizes rather than checksums
   
   ## Notes
   
   This PR is marked WIP to collect feedback on the API, metadata rewrite 
protocol, and first-version scope before it is made ready for merge.


-- 
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.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to