From 64b0f173c81c817a97d9cf1bfdffee1539e159a2 Mon Sep 17 00:00:00 2001 From: Lingxuan Zuo Date: Thu, 23 Jul 2020 19:43:53 +0800 Subject: [PATCH] fix window jni unhappy compiler (#9635) --- .../lib/java/io_ray_runtime_metric_NativeMetric.cc | 10 +++++----- src/ray/core_worker/lib/java/jni_utils.h | 10 ++++++---- 2 files changed, 11 insertions(+), 9 deletions(-) diff --git a/src/ray/core_worker/lib/java/io_ray_runtime_metric_NativeMetric.cc b/src/ray/core_worker/lib/java/io_ray_runtime_metric_NativeMetric.cc index 038b494d5..bacb089c3 100644 --- a/src/ray/core_worker/lib/java/io_ray_runtime_metric_NativeMetric.cc +++ b/src/ray/core_worker/lib/java/io_ray_runtime_metric_NativeMetric.cc @@ -47,7 +47,7 @@ inline void MetricTransform(JNIEnv *env, jstring j_name, jstring j_description, // item when it already exists. std::transform(tag_key_str_list.begin(), tag_key_str_list.end(), std::back_inserter(tag_keys), - [](std::string tag_key) { return TagKeyType::Register(tag_key); }); + [](std::string &tag_key) { return TagKeyType::Register(tag_key); }); } #ifdef __cplusplus @@ -70,7 +70,7 @@ JNIEXPORT jlong JNICALL Java_io_ray_runtime_metric_NativeMetric_registerGaugeNat MetricTransform(env, j_name, j_description, j_unit, tag_key_list, &metric_name, &description, &unit, tag_keys); auto *gauge = new ray::stats::Gauge(metric_name, description, unit, tag_keys); - return reinterpret_cast(gauge); + return reinterpret_cast(gauge); } JNIEXPORT jlong JNICALL Java_io_ray_runtime_metric_NativeMetric_registerCountNative( @@ -83,7 +83,7 @@ JNIEXPORT jlong JNICALL Java_io_ray_runtime_metric_NativeMetric_registerCountNat MetricTransform(env, j_name, j_description, j_unit, tag_key_list, &metric_name, &description, &unit, tag_keys); auto *count = new ray::stats::Count(metric_name, description, unit, tag_keys); - return reinterpret_cast(count); + return reinterpret_cast(count); } JNIEXPORT jlong JNICALL Java_io_ray_runtime_metric_NativeMetric_registerSumNative( @@ -96,7 +96,7 @@ JNIEXPORT jlong JNICALL Java_io_ray_runtime_metric_NativeMetric_registerSumNativ MetricTransform(env, j_name, j_description, j_unit, tag_key_list, &metric_name, &description, &unit, tag_keys); auto *sum = new ray::stats::Sum(metric_name, description, unit, tag_keys); - return reinterpret_cast(sum); + return reinterpret_cast(sum); } JNIEXPORT jlong JNICALL Java_io_ray_runtime_metric_NativeMetric_registerHistogramNative( @@ -114,7 +114,7 @@ JNIEXPORT jlong JNICALL Java_io_ray_runtime_metric_NativeMetric_registerHistogra auto *histogram = new ray::stats::Histogram(metric_name, description, unit, boundaries, tag_keys); - return reinterpret_cast(histogram); + return reinterpret_cast(histogram); } JNIEXPORT void JNICALL Java_io_ray_runtime_metric_NativeMetric_unregisterMetricNative( diff --git a/src/ray/core_worker/lib/java/jni_utils.h b/src/ray/core_worker/lib/java/jni_utils.h index 8a2ebd65b..8663f8d0e 100644 --- a/src/ray/core_worker/lib/java/jni_utils.h +++ b/src/ray/core_worker/lib/java/jni_utils.h @@ -289,8 +289,9 @@ inline void JavaLongArrayToNativeLongVector(JNIEnv *env, jlongArray long_array, std::vector *native_vector) { jlong *long_array_ptr = env->GetLongArrayElements(long_array, nullptr); jsize vec_size = env->GetArrayLength(long_array); - native_vector->insert(native_vector->begin(), long_array_ptr, - long_array_ptr + vec_size); + for (int i = 0; i < vec_size; ++i) { + native_vector->push_back(static_cast(long_array_ptr[i])); + } env->ReleaseLongArrayElements(long_array, long_array_ptr, 0); } @@ -299,8 +300,9 @@ inline void JavaDoubleArrayToNativeDoubleVector(JNIEnv *env, jdoubleArray double std::vector *native_vector) { jdouble *double_array_ptr = env->GetDoubleArrayElements(double_array, nullptr); jsize vec_size = env->GetArrayLength(double_array); - native_vector->insert(native_vector->begin(), double_array_ptr, - double_array_ptr + vec_size); + for (int i = 0; i < vec_size; ++i) { + native_vector->push_back(static_cast(double_array_ptr[i])); + } env->ReleaseDoubleArrayElements(double_array, double_array_ptr, 0); }