You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@ignite.apache.org by GitBox <gi...@apache.org> on 2021/11/01 08:59:16 UTC

[GitHub] [ignite-3] vldpyatkov commented on a change in pull request #418: IGNITE-15581 add proper handling of errors in user's state machines

vldpyatkov commented on a change in pull request #418:
URL: https://github.com/apache/ignite-3/pull/418#discussion_r740014482



##########
File path: modules/raft-client/src/main/java/org/apache/ignite/raft/client/service/CommandClosure.java
##########
@@ -37,5 +37,14 @@
      * Must be called after a command has been processed normally.
      * @param res Execution result.
      */
-    void result(@Nullable Serializable res);
+    void success(@Nullable Serializable res);
+
+    /**
+     * Must be called after a command has failed.
+     * @param th Throwable
+     * @param compacted True if {@code th} must be compacted before sending over network. Compaction means
+     * that throwable will be changed to a more compact structure, containing only message. Note, that
+     * in case of compaction, corresponding throwable must be in classpath on a client side.
+     */
+    void failure(Throwable th, boolean compacted);

Review comment:
       Parameter compacted seems doubt to me.
   Because it is a technical field it depends of some internal configuration (need stack on client of not, may be due to debug level). I do not wont to see this argument in the API.

##########
File path: modules/metastorage-client/src/integrationTest/java/org/apache/ignite/internal/metastorage/client/ITMetaStorageServiceTest.java
##########
@@ -602,6 +601,25 @@ public void testRangeNext() {
         assertEquals(EXPECTED_RESULT_ENTRY, cursor.iterator().next());
     }
 
+    /**
+     * Tests {@link MetaStorageService#range(ByteArray, ByteArray, long)}'s cursor exceptional case.
+     */
+    @Test
+    public void testRangeNextNoSuchElementException() {
+        when(mockStorage.range(EXPECTED_RESULT_ENTRY.key().bytes(), null)).thenAnswer(invocation -> {

Review comment:
       Why can't get NoSuchElementException honestly? (Iterate until a cursor finished)




-- 
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: notifications-unsubscribe@ignite.apache.org

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