You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hudi.apache.org by "HuangZhenQiu (via GitHub)" <gi...@apache.org> on 2026/01/27 02:26:27 UTC

[PR] feat: add flink HoodieSourceSplitComparator [hudi]

HuangZhenQiu opened a new pull request, #18009:
URL: https://github.com/apache/hudi/pull/18009

   ### Describe the issue this Pull Request addresses
   
   add flink HoodieSourceSplitComparator for better watermark alignment
   
   
   ### Summary and Changelog
   
   add flink HoodieSourceSplitComparator and use it as default split comparator in Hudi Source.
   
   ### Impact
   
    
   none
   
   ### Risk Level
   
    
   none
   
   ### Documentation Update
   
   
   none
   
   ### Contributor's checklist
   
   - [ ] Read through [contributor's guide](https://hudi.apache.org/contribute/how-to-contribute)
   - [ ] Enough context is provided in the sections above
   - [ ] Adequate tests were added if applicable
   


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "hudi-bot (via GitHub)" <gi...@apache.org>.
hudi-bot commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3804107597

   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373",
       "triggerID" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11383",
       "triggerID" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11390",
       "triggerID" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "triggerType" : "PUSH"
     }, {
       "hash" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11393",
       "triggerID" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * a135519b45aabc68fb835fc246c3b1dc4ffc39f6 Azure: [FAILURE](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11390) 
   * 07c539bd012ddd3254bf2df4c35a046e5bb56e5f Azure: [PENDING](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11393) 
   
   <details>
   <summary>Bot commands</summary>
     @hudi-bot supports the following commands:
   
    - `@hudi-bot run azure` re-run the last Azure build
   </details>


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "HuangZhenQiu (via GitHub)" <gi...@apache.org>.
HuangZhenQiu commented on code in PR #18009:
URL: https://github.com/apache/hudi/pull/18009#discussion_r2734087959


##########
hudi-flink-datasource/hudi-flink/src/main/java/org/apache/hudi/source/split/DefaultHoodieSplitProvider.java:
##########
@@ -37,6 +40,16 @@ public DefaultHoodieSplitProvider() {
     this.pendingSplits = new ConcurrentLinkedDeque<>();
   }
 
+  /**
+   * Creates a DefaultHoodieSplitProvider with a custom comparator for ordering splits.
+   *
+   * @param comparator the comparator to use for ordering splits, or null for FIFO ordering
+   */
+  public DefaultHoodieSplitProvider(
+      @Nullable SerializableComparator<HoodieSourceSplit> comparator) {
+    this.pendingSplits = comparator == null ? new ArrayDeque<>() : new PriorityQueue<>(comparator);

Review Comment:
   Got catch. Will update.



-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "hudi-bot (via GitHub)" <gi...@apache.org>.
hudi-bot commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3810242317

   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373",
       "triggerID" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11383",
       "triggerID" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11390",
       "triggerID" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "triggerType" : "PUSH"
     }, {
       "hash" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11393",
       "triggerID" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "triggerType" : "PUSH"
     }, {
       "hash" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11402",
       "triggerID" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "triggerType" : "PUSH"
     }, {
       "hash" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11403",
       "triggerID" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "triggerType" : "PUSH"
     }, {
       "hash" : "d1bb1ab5a1297bb133770dde0ad2a8c18343676f",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11422",
       "triggerID" : "d1bb1ab5a1297bb133770dde0ad2a8c18343676f",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a1ed151b5c6f30583d84281ae08518e336eb6585",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "a1ed151b5c6f30583d84281ae08518e336eb6585",
       "triggerType" : "PUSH"
     }, {
       "hash" : "d4ac4e250e6500069e32b57a122d074140fbd72b",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11425",
       "triggerID" : "d4ac4e250e6500069e32b57a122d074140fbd72b",
       "triggerType" : "PUSH"
     }, {
       "hash" : "53a0357ef93bbe71879b86af4cdc988a1047b81a",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11428",
       "triggerID" : "53a0357ef93bbe71879b86af4cdc988a1047b81a",
       "triggerType" : "PUSH"
     }, {
       "hash" : "97b7de072db8c77c6de19d57522d40220d7d811e",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11430",
       "triggerID" : "97b7de072db8c77c6de19d57522d40220d7d811e",
       "triggerType" : "PUSH"
     }, {
       "hash" : "6f53e74cab531cf8985584a07afc1185feb48804",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "6f53e74cab531cf8985584a07afc1185feb48804",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * a1ed151b5c6f30583d84281ae08518e336eb6585 UNKNOWN
   * 97b7de072db8c77c6de19d57522d40220d7d811e Azure: [SUCCESS](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11430) 
   * 6f53e74cab531cf8985584a07afc1185feb48804 UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     @hudi-bot supports the following commands:
   
    - `@hudi-bot run azure` re-run the last Azure build
   </details>


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "hudi-bot (via GitHub)" <gi...@apache.org>.
hudi-bot commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3810354661

   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373",
       "triggerID" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11383",
       "triggerID" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11390",
       "triggerID" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "triggerType" : "PUSH"
     }, {
       "hash" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11393",
       "triggerID" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "triggerType" : "PUSH"
     }, {
       "hash" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11402",
       "triggerID" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "triggerType" : "PUSH"
     }, {
       "hash" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11403",
       "triggerID" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "triggerType" : "PUSH"
     }, {
       "hash" : "d1bb1ab5a1297bb133770dde0ad2a8c18343676f",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11422",
       "triggerID" : "d1bb1ab5a1297bb133770dde0ad2a8c18343676f",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a1ed151b5c6f30583d84281ae08518e336eb6585",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "a1ed151b5c6f30583d84281ae08518e336eb6585",
       "triggerType" : "PUSH"
     }, {
       "hash" : "d4ac4e250e6500069e32b57a122d074140fbd72b",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11425",
       "triggerID" : "d4ac4e250e6500069e32b57a122d074140fbd72b",
       "triggerType" : "PUSH"
     }, {
       "hash" : "53a0357ef93bbe71879b86af4cdc988a1047b81a",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11428",
       "triggerID" : "53a0357ef93bbe71879b86af4cdc988a1047b81a",
       "triggerType" : "PUSH"
     }, {
       "hash" : "97b7de072db8c77c6de19d57522d40220d7d811e",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11430",
       "triggerID" : "97b7de072db8c77c6de19d57522d40220d7d811e",
       "triggerType" : "PUSH"
     }, {
       "hash" : "6f53e74cab531cf8985584a07afc1185feb48804",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11442",
       "triggerID" : "6f53e74cab531cf8985584a07afc1185feb48804",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * a1ed151b5c6f30583d84281ae08518e336eb6585 UNKNOWN
   * 97b7de072db8c77c6de19d57522d40220d7d811e Azure: [SUCCESS](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11430) 
   * 6f53e74cab531cf8985584a07afc1185feb48804 Azure: [PENDING](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11442) 
   
   <details>
   <summary>Bot commands</summary>
     @hudi-bot supports the following commands:
   
    - `@hudi-bot run azure` re-run the last Azure build
   </details>


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "hudi-bot (via GitHub)" <gi...@apache.org>.
hudi-bot commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3808106166

   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373",
       "triggerID" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11383",
       "triggerID" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11390",
       "triggerID" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "triggerType" : "PUSH"
     }, {
       "hash" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11393",
       "triggerID" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "triggerType" : "PUSH"
     }, {
       "hash" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11402",
       "triggerID" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "triggerType" : "PUSH"
     }, {
       "hash" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11403",
       "triggerID" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "triggerType" : "PUSH"
     }, {
       "hash" : "d1bb1ab5a1297bb133770dde0ad2a8c18343676f",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11422",
       "triggerID" : "d1bb1ab5a1297bb133770dde0ad2a8c18343676f",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a1ed151b5c6f30583d84281ae08518e336eb6585",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "a1ed151b5c6f30583d84281ae08518e336eb6585",
       "triggerType" : "PUSH"
     }, {
       "hash" : "d4ac4e250e6500069e32b57a122d074140fbd72b",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "d4ac4e250e6500069e32b57a122d074140fbd72b",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 60ae7fc5d292db1005c62189b05e64c928bf5930 Azure: [SUCCESS](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11403) 
   * d1bb1ab5a1297bb133770dde0ad2a8c18343676f Azure: [PENDING](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11422) 
   * a1ed151b5c6f30583d84281ae08518e336eb6585 UNKNOWN
   * d4ac4e250e6500069e32b57a122d074140fbd72b UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     @hudi-bot supports the following commands:
   
    - `@hudi-bot run azure` re-run the last Azure build
   </details>


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "hudi-bot (via GitHub)" <gi...@apache.org>.
hudi-bot commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3803779194

   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373",
       "triggerID" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11383",
       "triggerID" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11390",
       "triggerID" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * a72406d29128e4c78c2816a83a2ebde5c40cdcd9 Azure: [SUCCESS](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11383) 
   * a135519b45aabc68fb835fc246c3b1dc4ffc39f6 Azure: [PENDING](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11390) 
   
   <details>
   <summary>Bot commands</summary>
     @hudi-bot supports the following commands:
   
    - `@hudi-bot run azure` re-run the last Azure build
   </details>


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "hudi-bot (via GitHub)" <gi...@apache.org>.
hudi-bot commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3808487678

   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373",
       "triggerID" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11383",
       "triggerID" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11390",
       "triggerID" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "triggerType" : "PUSH"
     }, {
       "hash" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11393",
       "triggerID" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "triggerType" : "PUSH"
     }, {
       "hash" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11402",
       "triggerID" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "triggerType" : "PUSH"
     }, {
       "hash" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11403",
       "triggerID" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "triggerType" : "PUSH"
     }, {
       "hash" : "d1bb1ab5a1297bb133770dde0ad2a8c18343676f",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11422",
       "triggerID" : "d1bb1ab5a1297bb133770dde0ad2a8c18343676f",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a1ed151b5c6f30583d84281ae08518e336eb6585",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "a1ed151b5c6f30583d84281ae08518e336eb6585",
       "triggerType" : "PUSH"
     }, {
       "hash" : "d4ac4e250e6500069e32b57a122d074140fbd72b",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11425",
       "triggerID" : "d4ac4e250e6500069e32b57a122d074140fbd72b",
       "triggerType" : "PUSH"
     }, {
       "hash" : "53a0357ef93bbe71879b86af4cdc988a1047b81a",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11428",
       "triggerID" : "53a0357ef93bbe71879b86af4cdc988a1047b81a",
       "triggerType" : "PUSH"
     }, {
       "hash" : "97b7de072db8c77c6de19d57522d40220d7d811e",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "97b7de072db8c77c6de19d57522d40220d7d811e",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * d1bb1ab5a1297bb133770dde0ad2a8c18343676f Azure: [PENDING](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11422) 
   * a1ed151b5c6f30583d84281ae08518e336eb6585 UNKNOWN
   * d4ac4e250e6500069e32b57a122d074140fbd72b Azure: [FAILURE](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11425) 
   * 53a0357ef93bbe71879b86af4cdc988a1047b81a Azure: [PENDING](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11428) 
   * 97b7de072db8c77c6de19d57522d40220d7d811e UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     @hudi-bot supports the following commands:
   
    - `@hudi-bot run azure` re-run the last Azure build
   </details>


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "xushiyan (via GitHub)" <gi...@apache.org>.
xushiyan commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3812420394

   CI failure is flaky and unrelated (tracked somewhere else). merging it now.


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "hudi-bot (via GitHub)" <gi...@apache.org>.
hudi-bot commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3804093412

   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373",
       "triggerID" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11383",
       "triggerID" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11390",
       "triggerID" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "triggerType" : "PUSH"
     }, {
       "hash" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * a135519b45aabc68fb835fc246c3b1dc4ffc39f6 Azure: [FAILURE](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11390) 
   * 07c539bd012ddd3254bf2df4c35a046e5bb56e5f UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     @hudi-bot supports the following commands:
   
    - `@hudi-bot run azure` re-run the last Azure build
   </details>


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "hudi-bot (via GitHub)" <gi...@apache.org>.
hudi-bot commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3804281696

   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373",
       "triggerID" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11383",
       "triggerID" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11390",
       "triggerID" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "triggerType" : "PUSH"
     }, {
       "hash" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11393",
       "triggerID" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 07c539bd012ddd3254bf2df4c35a046e5bb56e5f Azure: [FAILURE](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11393) 
   
   <details>
   <summary>Bot commands</summary>
     @hudi-bot supports the following commands:
   
    - `@hudi-bot run azure` re-run the last Azure build
   </details>


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "xushiyan (via GitHub)" <gi...@apache.org>.
xushiyan commented on code in PR #18009:
URL: https://github.com/apache/hudi/pull/18009#discussion_r2734047121


##########
hudi-flink-datasource/hudi-flink/src/main/java/org/apache/hudi/source/split/HoodieSourceSplitComparator.java:
##########
@@ -0,0 +1,51 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.hudi.source.split;
+
+import org.apache.hudi.common.util.StringUtils;
+import org.apache.hudi.common.util.ValidationUtils;
+
+import static org.apache.hudi.common.fs.FSUtils.getCommitTime;
+
+/**
+ * Commit time based Hoodie source split comparator.
+ * <p>
+ * This comparator orders splits by their latest commit time in ascending order.
+ * When two splits have the same latest commit time, they are ordered by the commit
+ * time extracted from their base file path.
+ */
+public class HoodieSourceSplitComparator implements SerializableComparator<HoodieSourceSplit> {
+
+  @Override
+  public int compare(HoodieSourceSplit o1, HoodieSourceSplit o2) {
+    ValidationUtils.checkArgument(
+        !StringUtils.isNullOrEmpty(o1.getLatestCommit()),
+        "The latest commit field of split can't be null or empty: " + o1);
+
+    ValidationUtils.checkArgument(
+        !StringUtils.isNullOrEmpty(o2.getLatestCommit()),
+        "The latest commit field of split can't be null or empty: " + o2);
+
+    int commitComparison = CharSequence.compare(o1.getLatestCommit(), o2.getLatestCommit());
+    if (commitComparison == 0) {
+      return CharSequence.compare(getCommitTime(o1.getBasePath().orElse("")), getCommitTime(o2.getBasePath().orElse("")));

Review Comment:
   can getCommitTime() take `""` ? the fallback value may not work



##########
hudi-flink-datasource/hudi-flink/src/main/java/org/apache/hudi/source/split/DefaultHoodieSplitProvider.java:
##########
@@ -37,6 +40,16 @@ public DefaultHoodieSplitProvider() {
     this.pendingSplits = new ConcurrentLinkedDeque<>();
   }
 
+  /**
+   * Creates a DefaultHoodieSplitProvider with a custom comparator for ordering splits.
+   *
+   * @param comparator the comparator to use for ordering splits, or null for FIFO ordering
+   */
+  public DefaultHoodieSplitProvider(
+      @Nullable SerializableComparator<HoodieSourceSplit> comparator) {
+    this.pendingSplits = comparator == null ? new ArrayDeque<>() : new PriorityQueue<>(comparator);

Review Comment:
   neither array deque or priority queue is thread-safe. the default constructor uses ConcurrentLinkedDeque for thread-safety, this new constructor regressed



-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "hudi-bot (via GitHub)" <gi...@apache.org>.
hudi-bot commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3808571988

   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373",
       "triggerID" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11383",
       "triggerID" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11390",
       "triggerID" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "triggerType" : "PUSH"
     }, {
       "hash" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11393",
       "triggerID" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "triggerType" : "PUSH"
     }, {
       "hash" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11402",
       "triggerID" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "triggerType" : "PUSH"
     }, {
       "hash" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11403",
       "triggerID" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "triggerType" : "PUSH"
     }, {
       "hash" : "d1bb1ab5a1297bb133770dde0ad2a8c18343676f",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11422",
       "triggerID" : "d1bb1ab5a1297bb133770dde0ad2a8c18343676f",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a1ed151b5c6f30583d84281ae08518e336eb6585",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "a1ed151b5c6f30583d84281ae08518e336eb6585",
       "triggerType" : "PUSH"
     }, {
       "hash" : "d4ac4e250e6500069e32b57a122d074140fbd72b",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11425",
       "triggerID" : "d4ac4e250e6500069e32b57a122d074140fbd72b",
       "triggerType" : "PUSH"
     }, {
       "hash" : "53a0357ef93bbe71879b86af4cdc988a1047b81a",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11428",
       "triggerID" : "53a0357ef93bbe71879b86af4cdc988a1047b81a",
       "triggerType" : "PUSH"
     }, {
       "hash" : "97b7de072db8c77c6de19d57522d40220d7d811e",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11430",
       "triggerID" : "97b7de072db8c77c6de19d57522d40220d7d811e",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * a1ed151b5c6f30583d84281ae08518e336eb6585 UNKNOWN
   * 53a0357ef93bbe71879b86af4cdc988a1047b81a Azure: [FAILURE](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11428) 
   * 97b7de072db8c77c6de19d57522d40220d7d811e Azure: [PENDING](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11430) 
   
   <details>
   <summary>Bot commands</summary>
     @hudi-bot supports the following commands:
   
    - `@hudi-bot run azure` re-run the last Azure build
   </details>


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "hudi-bot (via GitHub)" <gi...@apache.org>.
hudi-bot commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3808356886

   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373",
       "triggerID" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11383",
       "triggerID" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11390",
       "triggerID" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "triggerType" : "PUSH"
     }, {
       "hash" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11393",
       "triggerID" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "triggerType" : "PUSH"
     }, {
       "hash" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11402",
       "triggerID" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "triggerType" : "PUSH"
     }, {
       "hash" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11403",
       "triggerID" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "triggerType" : "PUSH"
     }, {
       "hash" : "d1bb1ab5a1297bb133770dde0ad2a8c18343676f",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11422",
       "triggerID" : "d1bb1ab5a1297bb133770dde0ad2a8c18343676f",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a1ed151b5c6f30583d84281ae08518e336eb6585",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "a1ed151b5c6f30583d84281ae08518e336eb6585",
       "triggerType" : "PUSH"
     }, {
       "hash" : "d4ac4e250e6500069e32b57a122d074140fbd72b",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11425",
       "triggerID" : "d4ac4e250e6500069e32b57a122d074140fbd72b",
       "triggerType" : "PUSH"
     }, {
       "hash" : "53a0357ef93bbe71879b86af4cdc988a1047b81a",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11428",
       "triggerID" : "53a0357ef93bbe71879b86af4cdc988a1047b81a",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 60ae7fc5d292db1005c62189b05e64c928bf5930 Azure: [SUCCESS](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11403) 
   * d1bb1ab5a1297bb133770dde0ad2a8c18343676f Azure: [PENDING](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11422) 
   * a1ed151b5c6f30583d84281ae08518e336eb6585 UNKNOWN
   * d4ac4e250e6500069e32b57a122d074140fbd72b Azure: [PENDING](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11425) 
   * 53a0357ef93bbe71879b86af4cdc988a1047b81a Azure: [PENDING](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11428) 
   
   <details>
   <summary>Bot commands</summary>
     @hudi-bot supports the following commands:
   
    - `@hudi-bot run azure` re-run the last Azure build
   </details>


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "hudi-bot (via GitHub)" <gi...@apache.org>.
hudi-bot commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3807912842

   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373",
       "triggerID" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11383",
       "triggerID" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11390",
       "triggerID" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "triggerType" : "PUSH"
     }, {
       "hash" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11393",
       "triggerID" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "triggerType" : "PUSH"
     }, {
       "hash" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11402",
       "triggerID" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "triggerType" : "PUSH"
     }, {
       "hash" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11403",
       "triggerID" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "triggerType" : "PUSH"
     }, {
       "hash" : "d1bb1ab5a1297bb133770dde0ad2a8c18343676f",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "d1bb1ab5a1297bb133770dde0ad2a8c18343676f",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 60ae7fc5d292db1005c62189b05e64c928bf5930 Azure: [SUCCESS](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11403) 
   * d1bb1ab5a1297bb133770dde0ad2a8c18343676f UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     @hudi-bot supports the following commands:
   
    - `@hudi-bot run azure` re-run the last Azure build
   </details>


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "hudi-bot (via GitHub)" <gi...@apache.org>.
hudi-bot commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3803311386

   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373",
       "triggerID" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 20bd117b210a73fac92be13ef7eb11be085eabc1 Azure: [SUCCESS](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373) 
   * a72406d29128e4c78c2816a83a2ebde5c40cdcd9 UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     @hudi-bot supports the following commands:
   
    - `@hudi-bot run azure` re-run the last Azure build
   </details>


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "xushiyan (via GitHub)" <gi...@apache.org>.
xushiyan commented on code in PR #18009:
URL: https://github.com/apache/hudi/pull/18009#discussion_r2734269935


##########
hudi-flink-datasource/hudi-flink/src/main/java/org/apache/hudi/source/split/HoodieSourceSplitComparator.java:
##########
@@ -0,0 +1,51 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.hudi.source.split;
+
+import org.apache.hudi.common.util.StringUtils;
+import org.apache.hudi.common.util.ValidationUtils;
+
+import static org.apache.hudi.common.fs.FSUtils.getCommitTime;
+
+/**
+ * Commit time based Hoodie source split comparator.
+ * <p>
+ * This comparator orders splits by their latest commit time in ascending order.
+ * When two splits have the same latest commit time, they are ordered by the commit
+ * time extracted from their base file path.
+ */
+public class HoodieSourceSplitComparator implements SerializableComparator<HoodieSourceSplit> {
+
+  @Override
+  public int compare(HoodieSourceSplit o1, HoodieSourceSplit o2) {
+    ValidationUtils.checkArgument(
+        !StringUtils.isNullOrEmpty(o1.getLatestCommit()),
+        "The latest commit field of split can't be null or empty: " + o1);
+
+    ValidationUtils.checkArgument(
+        !StringUtils.isNullOrEmpty(o2.getLatestCommit()),
+        "The latest commit field of split can't be null or empty: " + o2);
+
+    int commitComparison = CharSequence.compare(o1.getLatestCommit(), o2.getLatestCommit());
+    if (commitComparison == 0) {
+      return CharSequence.compare(getCommitTime(o1.getBasePath().orElse("")), getCommitTime(o2.getBasePath().orElse("")));

Review Comment:
   pls note that down in follow up issue or pr so we don't lose this



-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "hudi-bot (via GitHub)" <gi...@apache.org>.
hudi-bot commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3802932871

   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373",
       "triggerID" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 20bd117b210a73fac92be13ef7eb11be085eabc1 Azure: [SUCCESS](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373) 
   
   <details>
   <summary>Bot commands</summary>
     @hudi-bot supports the following commands:
   
    - `@hudi-bot run azure` re-run the last Azure build
   </details>


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "xushiyan (via GitHub)" <gi...@apache.org>.
xushiyan merged PR #18009:
URL: https://github.com/apache/hudi/pull/18009


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "hudi-bot (via GitHub)" <gi...@apache.org>.
hudi-bot commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3806254922

   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373",
       "triggerID" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11383",
       "triggerID" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11390",
       "triggerID" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "triggerType" : "PUSH"
     }, {
       "hash" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11393",
       "triggerID" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "triggerType" : "PUSH"
     }, {
       "hash" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11402",
       "triggerID" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "triggerType" : "PUSH"
     }, {
       "hash" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * fad60b2d791d09d7237c1ca043f8dc46a9935082 Azure: [FAILURE](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11402) 
   * 60ae7fc5d292db1005c62189b05e64c928bf5930 UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     @hudi-bot supports the following commands:
   
    - `@hudi-bot run azure` re-run the last Azure build
   </details>


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "hudi-bot (via GitHub)" <gi...@apache.org>.
hudi-bot commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3803319126

   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373",
       "triggerID" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11383",
       "triggerID" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 20bd117b210a73fac92be13ef7eb11be085eabc1 Azure: [SUCCESS](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373) 
   * a72406d29128e4c78c2816a83a2ebde5c40cdcd9 Azure: [PENDING](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11383) 
   
   <details>
   <summary>Bot commands</summary>
     @hudi-bot supports the following commands:
   
    - `@hudi-bot run azure` re-run the last Azure build
   </details>


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "hudi-bot (via GitHub)" <gi...@apache.org>.
hudi-bot commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3802737679

   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 20bd117b210a73fac92be13ef7eb11be085eabc1 UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     @hudi-bot supports the following commands:
   
    - `@hudi-bot run azure` re-run the last Azure build
   </details>


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "HuangZhenQiu (via GitHub)" <gi...@apache.org>.
HuangZhenQiu commented on code in PR #18009:
URL: https://github.com/apache/hudi/pull/18009#discussion_r2734310429


##########
hudi-flink-datasource/hudi-flink/src/main/java/org/apache/hudi/source/split/HoodieSourceSplitComparator.java:
##########
@@ -0,0 +1,51 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.hudi.source.split;
+
+import org.apache.hudi.common.util.StringUtils;
+import org.apache.hudi.common.util.ValidationUtils;
+
+import static org.apache.hudi.common.fs.FSUtils.getCommitTime;
+
+/**
+ * Commit time based Hoodie source split comparator.
+ * <p>
+ * This comparator orders splits by their latest commit time in ascending order.
+ * When two splits have the same latest commit time, they are ordered by the commit
+ * time extracted from their base file path.
+ */
+public class HoodieSourceSplitComparator implements SerializableComparator<HoodieSourceSplit> {
+
+  @Override
+  public int compare(HoodieSourceSplit o1, HoodieSourceSplit o2) {
+    ValidationUtils.checkArgument(
+        !StringUtils.isNullOrEmpty(o1.getLatestCommit()),
+        "The latest commit field of split can't be null or empty: " + o1);
+
+    ValidationUtils.checkArgument(
+        !StringUtils.isNullOrEmpty(o2.getLatestCommit()),
+        "The latest commit field of split can't be null or empty: " + o2);
+
+    int commitComparison = CharSequence.compare(o1.getLatestCommit(), o2.getLatestCommit());
+    if (commitComparison == 0) {
+      return CharSequence.compare(getCommitTime(o1.getBasePath().orElse("")), getCommitTime(o2.getBasePath().orElse("")));

Review Comment:
   Ack. Updated Summary and Changelog
   



-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "xushiyan (via GitHub)" <gi...@apache.org>.
xushiyan commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3809129524

   @HuangZhenQiu pls link issues properly


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "hudi-bot (via GitHub)" <gi...@apache.org>.
hudi-bot commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3803895105

   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373",
       "triggerID" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11383",
       "triggerID" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11390",
       "triggerID" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * a135519b45aabc68fb835fc246c3b1dc4ffc39f6 Azure: [FAILURE](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11390) 
   
   <details>
   <summary>Bot commands</summary>
     @hudi-bot supports the following commands:
   
    - `@hudi-bot run azure` re-run the last Azure build
   </details>


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "hudi-bot (via GitHub)" <gi...@apache.org>.
hudi-bot commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3805996218

   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373",
       "triggerID" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11383",
       "triggerID" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11390",
       "triggerID" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "triggerType" : "PUSH"
     }, {
       "hash" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11393",
       "triggerID" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "triggerType" : "PUSH"
     }, {
       "hash" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 07c539bd012ddd3254bf2df4c35a046e5bb56e5f Azure: [FAILURE](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11393) 
   * fad60b2d791d09d7237c1ca043f8dc46a9935082 UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     @hudi-bot supports the following commands:
   
    - `@hudi-bot run azure` re-run the last Azure build
   </details>


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "xushiyan (via GitHub)" <gi...@apache.org>.
xushiyan commented on code in PR #18009:
URL: https://github.com/apache/hudi/pull/18009#discussion_r2734954848


##########
hudi-flink-datasource/hudi-flink/src/test/java/org/apache/hudi/source/split/TestHoodieSourceSplitSerializer.java:
##########
@@ -49,6 +49,7 @@ public void testSerializeAndDeserializeBasicSplit() throws IOException {
         "/table/path",
         "/partition/path",
         "read_optimized",
+        "",

Review Comment:
   source split comparator rejects empty `""`, but test cases are using it. it looks confusing as it's seen as an invalid commit time, though it may not affect the tests that aren't for comparison. use a valid commit time to avoid confusion and keep it consistent, you can use something like `19700101000000000` or `0`



-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "hudi-bot (via GitHub)" <gi...@apache.org>.
hudi-bot commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3807930433

   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373",
       "triggerID" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11383",
       "triggerID" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11390",
       "triggerID" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "triggerType" : "PUSH"
     }, {
       "hash" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11393",
       "triggerID" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "triggerType" : "PUSH"
     }, {
       "hash" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11402",
       "triggerID" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "triggerType" : "PUSH"
     }, {
       "hash" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11403",
       "triggerID" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "triggerType" : "PUSH"
     }, {
       "hash" : "d1bb1ab5a1297bb133770dde0ad2a8c18343676f",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11422",
       "triggerID" : "d1bb1ab5a1297bb133770dde0ad2a8c18343676f",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a1ed151b5c6f30583d84281ae08518e336eb6585",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "a1ed151b5c6f30583d84281ae08518e336eb6585",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 60ae7fc5d292db1005c62189b05e64c928bf5930 Azure: [SUCCESS](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11403) 
   * d1bb1ab5a1297bb133770dde0ad2a8c18343676f Azure: [PENDING](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11422) 
   * a1ed151b5c6f30583d84281ae08518e336eb6585 UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     @hudi-bot supports the following commands:
   
    - `@hudi-bot run azure` re-run the last Azure build
   </details>


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "hudi-bot (via GitHub)" <gi...@apache.org>.
hudi-bot commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3808444650

   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373",
       "triggerID" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11383",
       "triggerID" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11390",
       "triggerID" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "triggerType" : "PUSH"
     }, {
       "hash" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11393",
       "triggerID" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "triggerType" : "PUSH"
     }, {
       "hash" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11402",
       "triggerID" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "triggerType" : "PUSH"
     }, {
       "hash" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11403",
       "triggerID" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "triggerType" : "PUSH"
     }, {
       "hash" : "d1bb1ab5a1297bb133770dde0ad2a8c18343676f",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11422",
       "triggerID" : "d1bb1ab5a1297bb133770dde0ad2a8c18343676f",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a1ed151b5c6f30583d84281ae08518e336eb6585",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "a1ed151b5c6f30583d84281ae08518e336eb6585",
       "triggerType" : "PUSH"
     }, {
       "hash" : "d4ac4e250e6500069e32b57a122d074140fbd72b",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11425",
       "triggerID" : "d4ac4e250e6500069e32b57a122d074140fbd72b",
       "triggerType" : "PUSH"
     }, {
       "hash" : "53a0357ef93bbe71879b86af4cdc988a1047b81a",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11428",
       "triggerID" : "53a0357ef93bbe71879b86af4cdc988a1047b81a",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * d1bb1ab5a1297bb133770dde0ad2a8c18343676f Azure: [PENDING](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11422) 
   * a1ed151b5c6f30583d84281ae08518e336eb6585 UNKNOWN
   * d4ac4e250e6500069e32b57a122d074140fbd72b Azure: [FAILURE](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11425) 
   * 53a0357ef93bbe71879b86af4cdc988a1047b81a Azure: [PENDING](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11428) 
   
   <details>
   <summary>Bot commands</summary>
     @hudi-bot supports the following commands:
   
    - `@hudi-bot run azure` re-run the last Azure build
   </details>


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "hudi-bot (via GitHub)" <gi...@apache.org>.
hudi-bot commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3808523107

   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373",
       "triggerID" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11383",
       "triggerID" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11390",
       "triggerID" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "triggerType" : "PUSH"
     }, {
       "hash" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11393",
       "triggerID" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "triggerType" : "PUSH"
     }, {
       "hash" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11402",
       "triggerID" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "triggerType" : "PUSH"
     }, {
       "hash" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11403",
       "triggerID" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "triggerType" : "PUSH"
     }, {
       "hash" : "d1bb1ab5a1297bb133770dde0ad2a8c18343676f",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11422",
       "triggerID" : "d1bb1ab5a1297bb133770dde0ad2a8c18343676f",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a1ed151b5c6f30583d84281ae08518e336eb6585",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "a1ed151b5c6f30583d84281ae08518e336eb6585",
       "triggerType" : "PUSH"
     }, {
       "hash" : "d4ac4e250e6500069e32b57a122d074140fbd72b",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11425",
       "triggerID" : "d4ac4e250e6500069e32b57a122d074140fbd72b",
       "triggerType" : "PUSH"
     }, {
       "hash" : "53a0357ef93bbe71879b86af4cdc988a1047b81a",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11428",
       "triggerID" : "53a0357ef93bbe71879b86af4cdc988a1047b81a",
       "triggerType" : "PUSH"
     }, {
       "hash" : "97b7de072db8c77c6de19d57522d40220d7d811e",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11430",
       "triggerID" : "97b7de072db8c77c6de19d57522d40220d7d811e",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * a1ed151b5c6f30583d84281ae08518e336eb6585 UNKNOWN
   * d4ac4e250e6500069e32b57a122d074140fbd72b Azure: [FAILURE](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11425) 
   * 53a0357ef93bbe71879b86af4cdc988a1047b81a Azure: [PENDING](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11428) 
   * 97b7de072db8c77c6de19d57522d40220d7d811e Azure: [PENDING](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11430) 
   
   <details>
   <summary>Bot commands</summary>
     @hudi-bot supports the following commands:
   
    - `@hudi-bot run azure` re-run the last Azure build
   </details>


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "HuangZhenQiu (via GitHub)" <gi...@apache.org>.
HuangZhenQiu commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3810053395

   resolves #18019 


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "hudi-bot (via GitHub)" <gi...@apache.org>.
hudi-bot commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3806756209

   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373",
       "triggerID" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11383",
       "triggerID" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11390",
       "triggerID" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "triggerType" : "PUSH"
     }, {
       "hash" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11393",
       "triggerID" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "triggerType" : "PUSH"
     }, {
       "hash" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11402",
       "triggerID" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "triggerType" : "PUSH"
     }, {
       "hash" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11403",
       "triggerID" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 60ae7fc5d292db1005c62189b05e64c928bf5930 Azure: [SUCCESS](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11403) 
   
   <details>
   <summary>Bot commands</summary>
     @hudi-bot supports the following commands:
   
    - `@hudi-bot run azure` re-run the last Azure build
   </details>


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "HuangZhenQiu (via GitHub)" <gi...@apache.org>.
HuangZhenQiu commented on code in PR #18009:
URL: https://github.com/apache/hudi/pull/18009#discussion_r2735819026


##########
hudi-flink-datasource/hudi-flink/src/test/java/org/apache/hudi/source/split/TestHoodieSourceSplitSerializer.java:
##########
@@ -49,6 +49,7 @@ public void testSerializeAndDeserializeBasicSplit() throws IOException {
         "/table/path",
         "/partition/path",
         "read_optimized",
+        "",

Review Comment:
   It is a good call. Replaced "" with 19700101000000000 in tests.



-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "hudi-bot (via GitHub)" <gi...@apache.org>.
hudi-bot commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3803352693

   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373",
       "triggerID" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11383",
       "triggerID" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 20bd117b210a73fac92be13ef7eb11be085eabc1 Azure: [SUCCESS](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373) 
   * a72406d29128e4c78c2816a83a2ebde5c40cdcd9 Azure: [PENDING](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11383) 
   * a135519b45aabc68fb835fc246c3b1dc4ffc39f6 UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     @hudi-bot supports the following commands:
   
    - `@hudi-bot run azure` re-run the last Azure build
   </details>


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "HuangZhenQiu (via GitHub)" <gi...@apache.org>.
HuangZhenQiu commented on code in PR #18009:
URL: https://github.com/apache/hudi/pull/18009#discussion_r2730445155


##########
hudi-flink-datasource/hudi-flink/src/main/java/org/apache/hudi/util/StreamerUtil.java:
##########
@@ -711,4 +718,39 @@ public static void validateWriteStatus(
       });
     }
   }
+
+  /**
+   * Extracts the commit time from a Hudi data file path.
+   * <p>
+   * Example: path .../2026/01/26/09983c46-6160-48e7-a8ec-4e69f742b4ce-0_83-512-1_20260126034716930.parquet
+   * extracts "20260126034716930"
+   *
+   * @param filePath the file path to extract commit time from
+   * @return the commit time string, or empty string if filePath is empty
+   * @throws HoodieException if the file path is not a valid Hudi data file
+   */
+  public static String getFileCommitTime(Option<String> filePath) {

Review Comment:
   Make sense. Replaced with FSUtils.getCommitTime



-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "HuangZhenQiu (via GitHub)" <gi...@apache.org>.
HuangZhenQiu commented on code in PR #18009:
URL: https://github.com/apache/hudi/pull/18009#discussion_r2734113076


##########
hudi-flink-datasource/hudi-flink/src/main/java/org/apache/hudi/source/split/HoodieSourceSplitComparator.java:
##########
@@ -0,0 +1,51 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.hudi.source.split;
+
+import org.apache.hudi.common.util.StringUtils;
+import org.apache.hudi.common.util.ValidationUtils;
+
+import static org.apache.hudi.common.fs.FSUtils.getCommitTime;
+
+/**
+ * Commit time based Hoodie source split comparator.
+ * <p>
+ * This comparator orders splits by their latest commit time in ascending order.
+ * When two splits have the same latest commit time, they are ordered by the commit
+ * time extracted from their base file path.
+ */
+public class HoodieSourceSplitComparator implements SerializableComparator<HoodieSourceSplit> {
+
+  @Override
+  public int compare(HoodieSourceSplit o1, HoodieSourceSplit o2) {
+    ValidationUtils.checkArgument(
+        !StringUtils.isNullOrEmpty(o1.getLatestCommit()),
+        "The latest commit field of split can't be null or empty: " + o1);
+
+    ValidationUtils.checkArgument(
+        !StringUtils.isNullOrEmpty(o2.getLatestCommit()),
+        "The latest commit field of split can't be null or empty: " + o2);
+
+    int commitComparison = CharSequence.compare(o1.getLatestCommit(), o2.getLatestCommit());
+    if (commitComparison == 0) {
+      return CharSequence.compare(getCommitTime(o1.getBasePath().orElse("")), getCommitTime(o2.getBasePath().orElse("")));

Review Comment:
   The CDC split will be handled in a follow up PR.



-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "hudi-bot (via GitHub)" <gi...@apache.org>.
hudi-bot commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3808280500

   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373",
       "triggerID" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11383",
       "triggerID" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11390",
       "triggerID" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "triggerType" : "PUSH"
     }, {
       "hash" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11393",
       "triggerID" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "triggerType" : "PUSH"
     }, {
       "hash" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11402",
       "triggerID" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "triggerType" : "PUSH"
     }, {
       "hash" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11403",
       "triggerID" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "triggerType" : "PUSH"
     }, {
       "hash" : "d1bb1ab5a1297bb133770dde0ad2a8c18343676f",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11422",
       "triggerID" : "d1bb1ab5a1297bb133770dde0ad2a8c18343676f",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a1ed151b5c6f30583d84281ae08518e336eb6585",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "a1ed151b5c6f30583d84281ae08518e336eb6585",
       "triggerType" : "PUSH"
     }, {
       "hash" : "d4ac4e250e6500069e32b57a122d074140fbd72b",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11425",
       "triggerID" : "d4ac4e250e6500069e32b57a122d074140fbd72b",
       "triggerType" : "PUSH"
     }, {
       "hash" : "53a0357ef93bbe71879b86af4cdc988a1047b81a",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "53a0357ef93bbe71879b86af4cdc988a1047b81a",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 60ae7fc5d292db1005c62189b05e64c928bf5930 Azure: [SUCCESS](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11403) 
   * d1bb1ab5a1297bb133770dde0ad2a8c18343676f Azure: [PENDING](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11422) 
   * a1ed151b5c6f30583d84281ae08518e336eb6585 UNKNOWN
   * d4ac4e250e6500069e32b57a122d074140fbd72b Azure: [PENDING](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11425) 
   * 53a0357ef93bbe71879b86af4cdc988a1047b81a UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     @hudi-bot supports the following commands:
   
    - `@hudi-bot run azure` re-run the last Azure build
   </details>


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "danny0405 (via GitHub)" <gi...@apache.org>.
danny0405 commented on code in PR #18009:
URL: https://github.com/apache/hudi/pull/18009#discussion_r2730278836


##########
hudi-flink-datasource/hudi-flink/src/main/java/org/apache/hudi/util/StreamerUtil.java:
##########
@@ -711,4 +718,39 @@ public static void validateWriteStatus(
       });
     }
   }
+
+  /**
+   * Extracts the commit time from a Hudi data file path.
+   * <p>
+   * Example: path .../2026/01/26/09983c46-6160-48e7-a8ec-4e69f742b4ce-0_83-512-1_20260126034716930.parquet
+   * extracts "20260126034716930"
+   *
+   * @param filePath the file path to extract commit time from
+   * @return the commit time string, or empty string if filePath is empty
+   * @throws HoodieException if the file path is not a valid Hudi data file
+   */
+  public static String getFileCommitTime(Option<String> filePath) {

Review Comment:
   we have some utils in `FSUtils` to parse the instant time.



-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "hudi-bot (via GitHub)" <gi...@apache.org>.
hudi-bot commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3803520825

   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373",
       "triggerID" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11383",
       "triggerID" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11390",
       "triggerID" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 20bd117b210a73fac92be13ef7eb11be085eabc1 Azure: [SUCCESS](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373) 
   * a72406d29128e4c78c2816a83a2ebde5c40cdcd9 Azure: [PENDING](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11383) 
   * a135519b45aabc68fb835fc246c3b1dc4ffc39f6 Azure: [PENDING](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11390) 
   
   <details>
   <summary>Bot commands</summary>
     @hudi-bot supports the following commands:
   
    - `@hudi-bot run azure` re-run the last Azure build
   </details>


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "hudi-bot (via GitHub)" <gi...@apache.org>.
hudi-bot commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3806215266

   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373",
       "triggerID" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11383",
       "triggerID" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11390",
       "triggerID" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "triggerType" : "PUSH"
     }, {
       "hash" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11393",
       "triggerID" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "triggerType" : "PUSH"
     }, {
       "hash" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11402",
       "triggerID" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * fad60b2d791d09d7237c1ca043f8dc46a9935082 Azure: [FAILURE](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11402) 
   
   <details>
   <summary>Bot commands</summary>
     @hudi-bot supports the following commands:
   
    - `@hudi-bot run azure` re-run the last Azure build
   </details>


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "hudi-bot (via GitHub)" <gi...@apache.org>.
hudi-bot commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3802743838

   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373",
       "triggerID" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 20bd117b210a73fac92be13ef7eb11be085eabc1 Azure: [PENDING](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373) 
   
   <details>
   <summary>Bot commands</summary>
     @hudi-bot supports the following commands:
   
    - `@hudi-bot run azure` re-run the last Azure build
   </details>


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "hudi-bot (via GitHub)" <gi...@apache.org>.
hudi-bot commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3806015107

   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373",
       "triggerID" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11383",
       "triggerID" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11390",
       "triggerID" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "triggerType" : "PUSH"
     }, {
       "hash" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11393",
       "triggerID" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "triggerType" : "PUSH"
     }, {
       "hash" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11402",
       "triggerID" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 07c539bd012ddd3254bf2df4c35a046e5bb56e5f Azure: [FAILURE](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11393) 
   * fad60b2d791d09d7237c1ca043f8dc46a9935082 Azure: [PENDING](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11402) 
   
   <details>
   <summary>Bot commands</summary>
     @hudi-bot supports the following commands:
   
    - `@hudi-bot run azure` re-run the last Azure build
   </details>


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "hudi-bot (via GitHub)" <gi...@apache.org>.
hudi-bot commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3806355602

   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373",
       "triggerID" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11383",
       "triggerID" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11390",
       "triggerID" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "triggerType" : "PUSH"
     }, {
       "hash" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11393",
       "triggerID" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "triggerType" : "PUSH"
     }, {
       "hash" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11402",
       "triggerID" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "triggerType" : "PUSH"
     }, {
       "hash" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11403",
       "triggerID" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * fad60b2d791d09d7237c1ca043f8dc46a9935082 Azure: [FAILURE](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11402) 
   * 60ae7fc5d292db1005c62189b05e64c928bf5930 Azure: [PENDING](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11403) 
   
   <details>
   <summary>Bot commands</summary>
     @hudi-bot supports the following commands:
   
    - `@hudi-bot run azure` re-run the last Azure build
   </details>


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "HuangZhenQiu (via GitHub)" <gi...@apache.org>.
HuangZhenQiu commented on code in PR #18009:
URL: https://github.com/apache/hudi/pull/18009#discussion_r2734087010


##########
hudi-flink-datasource/hudi-flink/src/main/java/org/apache/hudi/source/split/HoodieSourceSplitComparator.java:
##########
@@ -0,0 +1,51 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.hudi.source.split;
+
+import org.apache.hudi.common.util.StringUtils;
+import org.apache.hudi.common.util.ValidationUtils;
+
+import static org.apache.hudi.common.fs.FSUtils.getCommitTime;
+
+/**
+ * Commit time based Hoodie source split comparator.
+ * <p>
+ * This comparator orders splits by their latest commit time in ascending order.
+ * When two splits have the same latest commit time, they are ordered by the commit
+ * time extracted from their base file path.
+ */
+public class HoodieSourceSplitComparator implements SerializableComparator<HoodieSourceSplit> {
+
+  @Override
+  public int compare(HoodieSourceSplit o1, HoodieSourceSplit o2) {
+    ValidationUtils.checkArgument(
+        !StringUtils.isNullOrEmpty(o1.getLatestCommit()),
+        "The latest commit field of split can't be null or empty: " + o1);
+
+    ValidationUtils.checkArgument(
+        !StringUtils.isNullOrEmpty(o2.getLatestCommit()),
+        "The latest commit field of split can't be null or empty: " + o2);
+
+    int commitComparison = CharSequence.compare(o1.getLatestCommit(), o2.getLatestCommit());
+    if (commitComparison == 0) {
+      return CharSequence.compare(getCommitTime(o1.getBasePath().orElse("")), getCommitTime(o2.getBasePath().orElse("")));

Review Comment:
   For both MOR and COR tables, the base path shouldn't be null. If yes, the getCommitTime will throw exception. 



-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "hudi-bot (via GitHub)" <gi...@apache.org>.
hudi-bot commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3808166800

   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373",
       "triggerID" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11383",
       "triggerID" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11390",
       "triggerID" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "triggerType" : "PUSH"
     }, {
       "hash" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11393",
       "triggerID" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "triggerType" : "PUSH"
     }, {
       "hash" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11402",
       "triggerID" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "triggerType" : "PUSH"
     }, {
       "hash" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11403",
       "triggerID" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "triggerType" : "PUSH"
     }, {
       "hash" : "d1bb1ab5a1297bb133770dde0ad2a8c18343676f",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11422",
       "triggerID" : "d1bb1ab5a1297bb133770dde0ad2a8c18343676f",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a1ed151b5c6f30583d84281ae08518e336eb6585",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "a1ed151b5c6f30583d84281ae08518e336eb6585",
       "triggerType" : "PUSH"
     }, {
       "hash" : "d4ac4e250e6500069e32b57a122d074140fbd72b",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11425",
       "triggerID" : "d4ac4e250e6500069e32b57a122d074140fbd72b",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * 60ae7fc5d292db1005c62189b05e64c928bf5930 Azure: [SUCCESS](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11403) 
   * d1bb1ab5a1297bb133770dde0ad2a8c18343676f Azure: [PENDING](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11422) 
   * a1ed151b5c6f30583d84281ae08518e336eb6585 UNKNOWN
   * d4ac4e250e6500069e32b57a122d074140fbd72b Azure: [PENDING](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11425) 
   
   <details>
   <summary>Bot commands</summary>
     @hudi-bot supports the following commands:
   
    - `@hudi-bot run azure` re-run the last Azure build
   </details>


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "hudi-bot (via GitHub)" <gi...@apache.org>.
hudi-bot commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3808511938

   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373",
       "triggerID" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11383",
       "triggerID" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11390",
       "triggerID" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "triggerType" : "PUSH"
     }, {
       "hash" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11393",
       "triggerID" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "triggerType" : "PUSH"
     }, {
       "hash" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11402",
       "triggerID" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "triggerType" : "PUSH"
     }, {
       "hash" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11403",
       "triggerID" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "triggerType" : "PUSH"
     }, {
       "hash" : "d1bb1ab5a1297bb133770dde0ad2a8c18343676f",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11422",
       "triggerID" : "d1bb1ab5a1297bb133770dde0ad2a8c18343676f",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a1ed151b5c6f30583d84281ae08518e336eb6585",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "a1ed151b5c6f30583d84281ae08518e336eb6585",
       "triggerType" : "PUSH"
     }, {
       "hash" : "d4ac4e250e6500069e32b57a122d074140fbd72b",
       "status" : "FAILURE",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11425",
       "triggerID" : "d4ac4e250e6500069e32b57a122d074140fbd72b",
       "triggerType" : "PUSH"
     }, {
       "hash" : "53a0357ef93bbe71879b86af4cdc988a1047b81a",
       "status" : "PENDING",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11428",
       "triggerID" : "53a0357ef93bbe71879b86af4cdc988a1047b81a",
       "triggerType" : "PUSH"
     }, {
       "hash" : "97b7de072db8c77c6de19d57522d40220d7d811e",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "97b7de072db8c77c6de19d57522d40220d7d811e",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * a1ed151b5c6f30583d84281ae08518e336eb6585 UNKNOWN
   * d4ac4e250e6500069e32b57a122d074140fbd72b Azure: [FAILURE](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11425) 
   * 53a0357ef93bbe71879b86af4cdc988a1047b81a Azure: [PENDING](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11428) 
   * 97b7de072db8c77c6de19d57522d40220d7d811e UNKNOWN
   
   <details>
   <summary>Bot commands</summary>
     @hudi-bot supports the following commands:
   
    - `@hudi-bot run azure` re-run the last Azure build
   </details>


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "hudi-bot (via GitHub)" <gi...@apache.org>.
hudi-bot commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3808739009

   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373",
       "triggerID" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11383",
       "triggerID" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11390",
       "triggerID" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "triggerType" : "PUSH"
     }, {
       "hash" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11393",
       "triggerID" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "triggerType" : "PUSH"
     }, {
       "hash" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11402",
       "triggerID" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "triggerType" : "PUSH"
     }, {
       "hash" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11403",
       "triggerID" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "triggerType" : "PUSH"
     }, {
       "hash" : "d1bb1ab5a1297bb133770dde0ad2a8c18343676f",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11422",
       "triggerID" : "d1bb1ab5a1297bb133770dde0ad2a8c18343676f",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a1ed151b5c6f30583d84281ae08518e336eb6585",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "a1ed151b5c6f30583d84281ae08518e336eb6585",
       "triggerType" : "PUSH"
     }, {
       "hash" : "d4ac4e250e6500069e32b57a122d074140fbd72b",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11425",
       "triggerID" : "d4ac4e250e6500069e32b57a122d074140fbd72b",
       "triggerType" : "PUSH"
     }, {
       "hash" : "53a0357ef93bbe71879b86af4cdc988a1047b81a",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11428",
       "triggerID" : "53a0357ef93bbe71879b86af4cdc988a1047b81a",
       "triggerType" : "PUSH"
     }, {
       "hash" : "97b7de072db8c77c6de19d57522d40220d7d811e",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11430",
       "triggerID" : "97b7de072db8c77c6de19d57522d40220d7d811e",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * a1ed151b5c6f30583d84281ae08518e336eb6585 UNKNOWN
   * 97b7de072db8c77c6de19d57522d40220d7d811e Azure: [SUCCESS](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11430) 
   
   <details>
   <summary>Bot commands</summary>
     @hudi-bot supports the following commands:
   
    - `@hudi-bot run azure` re-run the last Azure build
   </details>


-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "xushiyan (via GitHub)" <gi...@apache.org>.
xushiyan commented on code in PR #18009:
URL: https://github.com/apache/hudi/pull/18009#discussion_r2734956670


##########
hudi-flink-datasource/hudi-flink/src/main/java/org/apache/hudi/source/split/HoodieSourceSplitComparator.java:
##########
@@ -0,0 +1,51 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.hudi.source.split;
+
+import org.apache.hudi.common.util.StringUtils;
+import org.apache.hudi.common.util.ValidationUtils;
+
+import static org.apache.hudi.common.fs.FSUtils.getCommitTime;
+
+/**
+ * Commit time based Hoodie source split comparator.
+ * <p>
+ * This comparator orders splits by their latest commit time in ascending order.
+ * When two splits have the same latest commit time, they are ordered by the commit
+ * time extracted from their base file path.
+ */
+public class HoodieSourceSplitComparator implements SerializableComparator<HoodieSourceSplit> {
+
+  @Override
+  public int compare(HoodieSourceSplit o1, HoodieSourceSplit o2) {
+    ValidationUtils.checkArgument(
+        !StringUtils.isNullOrEmpty(o1.getLatestCommit()),
+        "The latest commit field of split can't be null or empty: " + o1);
+
+    ValidationUtils.checkArgument(
+        !StringUtils.isNullOrEmpty(o2.getLatestCommit()),
+        "The latest commit field of split can't be null or empty: " + o2);
+
+    int commitComparison = CharSequence.compare(o1.getLatestCommit(), o2.getLatestCommit());
+    if (commitComparison == 0) {
+      return CharSequence.compare(getCommitTime(o1.getBasePath().orElse("")), getCommitTime(o2.getBasePath().orElse("")));

Review Comment:
   @HuangZhenQiu can you also take note of this in follow-up? https://github.com/apache/hudi/pull/18009#discussion_r2734954848



-- 
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: commits-unsubscribe@hudi.apache.org

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


Re: [PR] feat: add flink HoodieSourceSplitComparator [hudi]

Posted by "hudi-bot (via GitHub)" <gi...@apache.org>.
hudi-bot commented on PR #18009:
URL: https://github.com/apache/hudi/pull/18009#issuecomment-3810774524

   <!--
   Meta data
   {
     "version" : 1,
     "metaDataEntries" : [ {
       "hash" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11373",
       "triggerID" : "20bd117b210a73fac92be13ef7eb11be085eabc1",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11383",
       "triggerID" : "a72406d29128e4c78c2816a83a2ebde5c40cdcd9",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11390",
       "triggerID" : "a135519b45aabc68fb835fc246c3b1dc4ffc39f6",
       "triggerType" : "PUSH"
     }, {
       "hash" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11393",
       "triggerID" : "07c539bd012ddd3254bf2df4c35a046e5bb56e5f",
       "triggerType" : "PUSH"
     }, {
       "hash" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11402",
       "triggerID" : "fad60b2d791d09d7237c1ca043f8dc46a9935082",
       "triggerType" : "PUSH"
     }, {
       "hash" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11403",
       "triggerID" : "60ae7fc5d292db1005c62189b05e64c928bf5930",
       "triggerType" : "PUSH"
     }, {
       "hash" : "d1bb1ab5a1297bb133770dde0ad2a8c18343676f",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11422",
       "triggerID" : "d1bb1ab5a1297bb133770dde0ad2a8c18343676f",
       "triggerType" : "PUSH"
     }, {
       "hash" : "a1ed151b5c6f30583d84281ae08518e336eb6585",
       "status" : "UNKNOWN",
       "url" : "TBD",
       "triggerID" : "a1ed151b5c6f30583d84281ae08518e336eb6585",
       "triggerType" : "PUSH"
     }, {
       "hash" : "d4ac4e250e6500069e32b57a122d074140fbd72b",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11425",
       "triggerID" : "d4ac4e250e6500069e32b57a122d074140fbd72b",
       "triggerType" : "PUSH"
     }, {
       "hash" : "53a0357ef93bbe71879b86af4cdc988a1047b81a",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11428",
       "triggerID" : "53a0357ef93bbe71879b86af4cdc988a1047b81a",
       "triggerType" : "PUSH"
     }, {
       "hash" : "97b7de072db8c77c6de19d57522d40220d7d811e",
       "status" : "DELETED",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11430",
       "triggerID" : "97b7de072db8c77c6de19d57522d40220d7d811e",
       "triggerType" : "PUSH"
     }, {
       "hash" : "6f53e74cab531cf8985584a07afc1185feb48804",
       "status" : "SUCCESS",
       "url" : "https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11442",
       "triggerID" : "6f53e74cab531cf8985584a07afc1185feb48804",
       "triggerType" : "PUSH"
     } ]
   }-->
   ## CI report:
   
   * a1ed151b5c6f30583d84281ae08518e336eb6585 UNKNOWN
   * 6f53e74cab531cf8985584a07afc1185feb48804 Azure: [SUCCESS](https://dev.azure.com/apachehudi/a1a51da7-8592-47d4-88dc-fd67bed336bb/_build/results?buildId=11442) 
   
   <details>
   <summary>Bot commands</summary>
     @hudi-bot supports the following commands:
   
    - `@hudi-bot run azure` re-run the last Azure build
   </details>


-- 
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: commits-unsubscribe@hudi.apache.org

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