You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pinot.apache.org by "gortiz (via GitHub)" <gi...@apache.org> on 2025/12/02 16:29:36 UTC

[PR] Improve error handling in MSE [pinot]

gortiz opened a new pull request, #17306:
URL: https://github.com/apache/pinot/pull/17306

   Improve error handling in MSE:
   - Receivers will log the server that created the block (previously this was only logged in the broker)
   - Sending mailboxes won't log errors when the mailbox returns ALREADY_TERMINATED
   
   


-- 
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@pinot.apache.org

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


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@pinot.apache.org
For additional commands, e-mail: commits-help@pinot.apache.org


Re: [PR] Improve error handling in MSE [pinot]

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


-- 
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@pinot.apache.org

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


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@pinot.apache.org
For additional commands, e-mail: commits-help@pinot.apache.org


Re: [PR] Improve error handling in MSE [pinot]

Posted by "yashmayya (via GitHub)" <gi...@apache.org>.
yashmayya commented on code in PR #17306:
URL: https://github.com/apache/pinot/pull/17306#discussion_r2582210950


##########
pinot-query-runtime/src/main/java/org/apache/pinot/query/runtime/blocks/ErrorMseBlock.java:
##########
@@ -137,4 +138,16 @@ public String toString() {
       return "{\"type\": \"error\", \"errorMessages\": \"not serializable\"}";
     }
   }
+
+  /// Returns the main error code of the block.
+  ///
+  /// Right now this just returns the first error code in the map or UNKNOWN if the map is empty,
+  /// but in the future we might want to have a more sophisticated

Review Comment:
   Incomplete sentence?



##########
pinot-query-runtime/src/main/java/org/apache/pinot/query/runtime/blocks/ErrorMseBlock.java:
##########
@@ -137,4 +138,16 @@ public String toString() {
       return "{\"type\": \"error\", \"errorMessages\": \"not serializable\"}";
     }
   }
+
+  /// Returns the main error code of the block.
+  ///
+  /// Right now this just returns the first error code in the map or UNKNOWN if the map is empty,
+  /// but in the future we might want to have a more sophisticated
+  public QueryErrorCode getMainErrorCode() {
+    Iterator<QueryErrorCode> iterator = _errorMessages.keySet().iterator();
+    if (!iterator.hasNext()) {
+      return QueryErrorCode.UNKNOWN;
+    }
+    return iterator.next();

Review Comment:
   I'm probably missing some context here - what scenarios would have multiple errors per block? And why do we need to change the code to throw / log only the first error?



-- 
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@pinot.apache.org

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


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@pinot.apache.org
For additional commands, e-mail: commits-help@pinot.apache.org


Re: [PR] Improve error handling in MSE [pinot]

Posted by "codecov-commenter (via GitHub)" <gi...@apache.org>.
codecov-commenter commented on PR #17306:
URL: https://github.com/apache/pinot/pull/17306#issuecomment-3603139269

   ## [Codecov](https://app.codecov.io/gh/apache/pinot/pull/17306?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) Report
   :x: Patch coverage is `87.50000%` with `2 lines` in your changes missing coverage. Please review.
   :white_check_mark: Project coverage is 55.63%. Comparing base ([`a03a870`](https://app.codecov.io/gh/apache/pinot/commit/a03a8701fa3a1da78f53ec50a7297abeea244d5b?dropdown=coverage&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)) to head ([`4b2ab3c`](https://app.codecov.io/gh/apache/pinot/commit/4b2ab3c46e96f6d73664fa45adc66fecca4b3efe?dropdown=coverage&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache)).
   
   | [Files with missing lines](https://app.codecov.io/gh/apache/pinot/pull/17306?dropdown=coverage&src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | Patch % | Lines |
   |---|---|---|
   | [...ache/pinot/query/runtime/blocks/ErrorMseBlock.java](https://app.codecov.io/gh/apache/pinot/pull/17306?src=pr&el=tree&filepath=pinot-query-runtime%2Fsrc%2Fmain%2Fjava%2Forg%2Fapache%2Fpinot%2Fquery%2Fruntime%2Fblocks%2FErrorMseBlock.java&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#diff-cGlub3QtcXVlcnktcnVudGltZS9zcmMvbWFpbi9qYXZhL29yZy9hcGFjaGUvcGlub3QvcXVlcnkvcnVudGltZS9ibG9ja3MvRXJyb3JNc2VCbG9jay5qYXZh) | 50.00% | [1 Missing and 1 partial :warning: ](https://app.codecov.io/gh/apache/pinot/pull/17306?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) |
   > :exclamation:  There is a different number of reports uploaded between BASE (a03a870) and HEAD (4b2ab3c). Click for more details.
   > 
   > <details><summary>HEAD has 36 uploads less than BASE</summary>
   >
   >| Flag | BASE (a03a870) | HEAD (4b2ab3c) |
   >|------|------|------|
   >|java-21|5|1|
   >|unittests1|2|1|
   >|unittests|4|1|
   >|temurin|10|1|
   >|java-11|5|0|
   >|unittests2|2|0|
   >|integration|6|0|
   >|integration2|2|0|
   >|integration1|2|0|
   >|custom-integration1|2|0|
   ></details>
   
   <details><summary>Additional details and impacted files</summary>
   
   
   
   ```diff
   @@             Coverage Diff              @@
   ##             master   #17306      +/-   ##
   ============================================
   - Coverage     63.26%   55.63%   -7.63%     
   + Complexity     1433      702     -731     
   ============================================
     Files          3133     2446     -687     
     Lines        186150   137795   -48355     
     Branches      28412    21897    -6515     
   ============================================
   - Hits         117762    76666   -41096     
   + Misses        59333    54706    -4627     
   + Partials       9055     6423    -2632     
   ```
   
   | [Flag](https://app.codecov.io/gh/apache/pinot/pull/17306/flags?src=pr&el=flags&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | Coverage Δ | |
   |---|---|---|
   | [custom-integration1](https://app.codecov.io/gh/apache/pinot/pull/17306/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | `?` | |
   | [integration](https://app.codecov.io/gh/apache/pinot/pull/17306/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | `?` | |
   | [integration1](https://app.codecov.io/gh/apache/pinot/pull/17306/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | `?` | |
   | [integration2](https://app.codecov.io/gh/apache/pinot/pull/17306/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | `?` | |
   | [java-11](https://app.codecov.io/gh/apache/pinot/pull/17306/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | `?` | |
   | [java-21](https://app.codecov.io/gh/apache/pinot/pull/17306/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | `55.63% <87.50%> (-7.60%)` | :arrow_down: |
   | [temurin](https://app.codecov.io/gh/apache/pinot/pull/17306/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | `55.63% <87.50%> (-7.63%)` | :arrow_down: |
   | [unittests](https://app.codecov.io/gh/apache/pinot/pull/17306/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | `55.63% <87.50%> (-7.63%)` | :arrow_down: |
   | [unittests1](https://app.codecov.io/gh/apache/pinot/pull/17306/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | `55.63% <87.50%> (-0.05%)` | :arrow_down: |
   | [unittests2](https://app.codecov.io/gh/apache/pinot/pull/17306/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache) | `?` | |
   
   Flags with carried forward coverage won't be shown. [Click here](https://docs.codecov.io/docs/carryforward-flags?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache#carryforward-flags-in-the-pull-request-comment) to find out more.
   </details>
   
   [:umbrella: View full report in Codecov by Sentry](https://app.codecov.io/gh/apache/pinot/pull/17306?dropdown=coverage&src=pr&el=continue&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache).   
   :loudspeaker: Have feedback on the report? [Share it here](https://about.codecov.io/codecov-pr-comment-feedback/?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=apache).
   <details><summary> :rocket: New features to boost your workflow: </summary>
   
   - :package: [JS Bundle Analysis](https://docs.codecov.com/docs/javascript-bundle-analysis): Save yourself from yourself by tracking and limiting bundle sizes in JS merges.
   </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@pinot.apache.org

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


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@pinot.apache.org
For additional commands, e-mail: commits-help@pinot.apache.org


Re: [PR] Improve error handling in MSE [pinot]

Posted by "gortiz (via GitHub)" <gi...@apache.org>.
gortiz commented on code in PR #17306:
URL: https://github.com/apache/pinot/pull/17306#discussion_r2622173885


##########
pinot-query-runtime/src/main/java/org/apache/pinot/query/runtime/blocks/ErrorMseBlock.java:
##########
@@ -137,4 +138,16 @@ public String toString() {
       return "{\"type\": \"error\", \"errorMessages\": \"not serializable\"}";
     }
   }
+
+  /// Returns the main error code of the block.
+  ///
+  /// Right now this just returns the first error code in the map or UNKNOWN if the map is empty,
+  /// but in the future we might want to have a more sophisticated
+  public QueryErrorCode getMainErrorCode() {
+    Iterator<QueryErrorCode> iterator = _errorMessages.keySet().iterator();
+    if (!iterator.hasNext()) {
+      return QueryErrorCode.UNKNOWN;
+    }
+    return iterator.next();

Review Comment:
   TBH, I don't know. This is something I asked myself several times and requires repetitive boilerplate code. We may decide to remove that in the future.



-- 
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@pinot.apache.org

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


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@pinot.apache.org
For additional commands, e-mail: commits-help@pinot.apache.org