Skip to content

Commit 2eb9a4c

Browse files
committed
add error code for rerouting-exception
1 parent 7765ad1 commit 2eb9a4c

File tree

3 files changed

+7
-9
lines changed

3 files changed

+7
-9
lines changed

src/main/java/com/alipay/oceanbase/rpc/bolt/transport/ObTableRemoting.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -127,26 +127,26 @@ public ObPayload invokeSync(final ObTableConnection conn, final ObPayload reques
127127
"routed to the wrong server: " + response.getMessage());
128128
logger.warn(errMessage);
129129
if (needFetchAll(resultCode.getRcode(), resultCode.getPcode())) {
130-
throw new ObTableNeedFetchAllException(errMessage);
130+
throw new ObTableNeedFetchAllException(errMessage, resultCode.getRcode());
131131
} else if (needFetchPartial(resultCode.getRcode())) {
132-
throw new ObTableRoutingWrongException(errMessage);
132+
throw new ObTableRoutingWrongException(errMessage, resultCode.getRcode());
133133
} else {
134134
// Encountered an unexpected RoutingWrong error code,
135135
// possibly due to the client error code version being behind the observer's version.
136136
// Attempting a full refresh here
137137
// and delegating to the upper-level call to determine whether to throw the exception to the user based on the retry result.
138138
logger.warn("get unexpected error code: {}", response.getMessage());
139-
throw new ObTableNeedFetchAllException(errMessage);
139+
throw new ObTableNeedFetchAllException(errMessage, resultCode.getRcode());
140140
}
141141
}
142142
if (resultCode.getRcode() != 0 && response.getHeader().getPcode() != Pcodes.OB_TABLE_API_MOVE) {
143143
String errMessage = TraceUtil.formatTraceMessage(conn, request,
144144
"routed to the wrong server: " + response.getMessage());
145145
logger.warn(errMessage);
146146
if (needFetchAll(resultCode.getRcode(), resultCode.getPcode())) {
147-
throw new ObTableNeedFetchAllException(errMessage);
147+
throw new ObTableNeedFetchAllException(errMessage, resultCode.getRcode());
148148
} else if (needFetchPartial(resultCode.getRcode())) {
149-
throw new ObTableRoutingWrongException(errMessage);
149+
throw new ObTableRoutingWrongException(errMessage, resultCode.getRcode());
150150
} else {
151151
ExceptionUtil.throwObTableException(conn.getObTable().getIp(), conn
152152
.getObTable().getPort(), response.getHeader().getTraceId1(), response

src/main/java/com/alipay/oceanbase/rpc/table/ObTableClientBatchOpsImpl.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -509,8 +509,7 @@ private boolean shouldRetry(Throwable throwable) {
509509
private void executeWithRetries(ObTableOperationResult[] results, Map.Entry<Long, ObPair<ObTableParam, List<ObPair<Integer, ObTableOperation>>>> entry, int maxRetries) throws Exception {
510510
int retryCount = 0;
511511
boolean success = false;
512-
513-
// 初始分区
512+
514513
Map<Long, ObPair<ObTableParam, List<ObPair<Integer, ObTableOperation>>>> currentPartitions = new HashMap<>();
515514
currentPartitions.put(entry.getKey(), entry.getValue());
516515

src/main/java/com/alipay/oceanbase/rpc/table/ObTableClientLSBatchOpsImpl.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -624,8 +624,7 @@ private void executeWithRetries(
624624

625625
int retryCount = 0;
626626
boolean success = false;
627-
628-
// 初始分区
627+
629628
Map<Long, Map<Long, ObPair<ObTableParam, List<ObPair<Integer, ObTableSingleOp>>>>> currentPartitions = new HashMap<>();
630629
currentPartitions.put(entry.getKey(), entry.getValue());
631630

0 commit comments

Comments
 (0)