File tree Expand file tree Collapse file tree
iotdb-client/service-rpc/src
main/java/org/apache/iotdb/rpc
test/java/org/apache/iotdb/rpc Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -151,16 +151,16 @@ public static void verifySuccessWithRedirectionForMultiDevices(
151151 }
152152
153153 public static void verifySuccess (List <TSStatus > statuses ) throws BatchExecutionException {
154- StringBuilder errMsgs =
155- new StringBuilder ().append (TSStatusCode .MULTIPLE_ERROR .getStatusCode ()).append (": " );
154+ StringBuilder errMsgs = new StringBuilder ();
156155 for (TSStatus status : statuses ) {
157156 if (status .getCode () != TSStatusCode .SUCCESS_STATUS .getStatusCode ()
158157 && status .getCode () != TSStatusCode .REDIRECTION_RECOMMEND .getStatusCode ()) {
159158 errMsgs .append (status .getMessage ()).append ("; " );
160159 }
161160 }
162161 if (errMsgs .length () > 0 ) {
163- throw new BatchExecutionException (statuses , errMsgs .toString ());
162+ throw new BatchExecutionException (
163+ statuses , TSStatusCode .MULTIPLE_ERROR .getStatusCode () + ": " + errMsgs );
164164 }
165165 }
166166
@@ -181,9 +181,9 @@ public static TSStatus getStatus(List<TSStatus> statusList) {
181181 for (TSStatus subStatus : statusList ) {
182182 if (subStatus .getCode () != TSStatusCode .SUCCESS_STATUS .getStatusCode ()
183183 && subStatus .getCode () != TSStatusCode .REDIRECTION_RECOMMEND .getStatusCode ()) {
184- if (!msgSet .contains (status )) {
185- errMsg .append (status ).append ("; " );
186- msgSet .add (status );
184+ if (!msgSet .contains (subStatus )) {
185+ errMsg .append (subStatus ).append ("; " );
186+ msgSet .add (subStatus );
187187 }
188188 }
189189 }
Original file line number Diff line number Diff line change 1919
2020package org .apache .iotdb .rpc ;
2121
22+ import org .apache .iotdb .common .rpc .thrift .TSStatus ;
23+
2224import org .junit .Assert ;
2325import org .junit .Test ;
2426
2527import java .time .ZoneId ;
2628import java .time .format .DateTimeFormatter ;
29+ import java .util .Arrays ;
30+ import java .util .Collections ;
2731
2832public class RpcUtilsTest {
2933
@@ -74,4 +78,25 @@ public void testIsSetSqlDialect() {
7478 Assert .assertFalse (RpcUtils .isSetSqlDialect ("setsql_dialect =table" ));
7579 Assert .assertFalse (RpcUtils .isSetSqlDialect ("set sql_dia" ));
7680 }
81+
82+ @ Test
83+ public void testVerifySuccessListAllowsSuccessfulStatuses () throws BatchExecutionException {
84+ RpcUtils .verifySuccess (
85+ Arrays .asList (
86+ RpcUtils .getStatus (TSStatusCode .SUCCESS_STATUS ),
87+ RpcUtils .getStatus (TSStatusCode .REDIRECTION_RECOMMEND )));
88+ }
89+
90+ @ Test
91+ public void testVerifySuccessListThrowsOnFailure () {
92+ TSStatus failedStatus = RpcUtils .getStatus (TSStatusCode .EXECUTE_STATEMENT_ERROR , "failed" );
93+
94+ try {
95+ RpcUtils .verifySuccess (Collections .singletonList (failedStatus ));
96+ Assert .fail ("Expected BatchExecutionException" );
97+ } catch (BatchExecutionException e ) {
98+ Assert .assertEquals (Collections .singletonList (failedStatus ), e .getStatusList ());
99+ Assert .assertTrue (e .getMessage ().contains ("failed" ));
100+ }
101+ }
77102}
You can’t perform that action at this time.
0 commit comments