Nope @DudaNogueira , this is from server side not from client. This not happen to all batch_delete calls some cases only.
Traceback (most recent call last):
File "/home/xxx/xxx/lib/python3.9/site-packages/weaviate/collections/batch/grpc_batch_delete.py", line 33, in batch_delete
res, _ = self._connection.grpc_stub.BatchDelete.with_call(
File "/home/xxx/xxx/lib/python3.9/site-packages/grpc/_channel.py", line 1193, in with_call
return _end_unary_response_blocking(state, call, True, None)
File "/home/xxx/xxx/lib/python3.9/site-packages/grpc/_channel.py", line 1005, in _end_unary_response_blocking
raise _InactiveRpcError(state) # pytype: disable=not-instantiable
grpc._channel._InactiveRpcError: <_InactiveRpcError of RPC that terminated with:
status = StatusCode.UNKNOWN
details = "batch delete reply: failed to parse hex string to integer"
debug_error_string = "UNKNOWN:Error received from peer {grpc_message:"batch delete reply: failed to parse hex string to integer", grpc_status:2, created_time:"2025-12-17T07:00:38.049720466+00:00"}"
>
I myself added logging in server side using the below code in weaviate/adapters/handlers/grpc/v1/batch_delete.go
if verbose {
uuidStr := obj.UUID.String()
uuidHex := strings.ReplaceAll(uuidStr, "-", "")
hexInteger, success := new(big.Int).SetString(uuidHex, 16)
if !success {
errMsg := fmt.Sprintf("UUID %q (cleaned=%q len=%d)", uuidStr, uuidHex, len(uuidHex))
parseErrors = append(parseErrors, errMsg)
fmt.Printf("batchDeleteReplyFromObjects: failed to parse %s\n", errMsg)
// Create object with empty UUID for this failed parse
hexInteger = new(big.Int)
}
<! Remaining Code ---- >
// Throw error at the end if there were any parsing errors
if len(parseErrors) > 0 {
return reply, fmt.Errorf("batch delete completed with %d UUID parse errors: %v", len(parseErrors), parseErrors)
}
and get the below error response.
debug_error_string = "UNKNOWN:Error received from peer {created_time:"2025-12-24T07:16:15.566023889+00:00", grpc_status:2, grpc_message:"batch delete reply: batch delete completed with 12 UUID parse errors: [UUID \"\" (cleaned=\"\" len=0) UUID \"\" (cleaned=\"\" len=0) UUID \"\" (cleaned=\"\" len=0) UUID \"\" (cleaned=\"\" len=0) UUID \"\" (cleaned=\"\" len=0) UUID \"\" (cleaned=\"\" len=0) UUID \"\" (cleaned=\"\" len=0) UUID \"\" (cleaned=\"\" len=0) UUID \"\" (cleaned=\"\" len=0) UUID \"\" (cleaned=\"\" len=0) UUID \"\" (cleaned=\"\" len=0) UUID \"\" (cleaned=\"\" len=0)]"}"