diff --git a/java/api/src/main/java/io/ray/api/id/JobId.java b/java/api/src/main/java/io/ray/api/id/JobId.java index eba593fe4..48aa61e77 100644 --- a/java/api/src/main/java/io/ray/api/id/JobId.java +++ b/java/api/src/main/java/io/ray/api/id/JobId.java @@ -10,7 +10,7 @@ import java.util.Arrays; */ public class JobId extends BaseId implements Serializable { - public static final int LENGTH = 2; + public static final int LENGTH = 4; public static final JobId NIL = genNil(); diff --git a/src/ray/core_worker/lib/java/jni_utils.h b/src/ray/core_worker/lib/java/jni_utils.h index f7bb7e2d3..972b43f71 100644 --- a/src/ray/core_worker/lib/java/jni_utils.h +++ b/src/ray/core_worker/lib/java/jni_utils.h @@ -256,6 +256,8 @@ inline ID JavaByteArrayToId(JNIEnv *env, const jbyteArray &bytes) { std::string id_str(ID::Size(), 0); env->GetByteArrayRegion(bytes, 0, ID::Size(), reinterpret_cast(&id_str.front())); + auto arr_size = env->GetArrayLength(bytes) + RAY_CHECK(arr_size == ID::Size()) << "ID length should be " ID::Size() << " instead of " << arr_size; return ID::FromBinary(id_str); }