Merge pull request #15048 from kpayson64/use_c_core_for_interop

Use c core for interop
pull/15150/head
kpayson64 7 years ago committed by GitHub
commit 6abc0aef5d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 3
      src/core/lib/iomgr/tcp_uv.cc
  2. 3
      src/core/lib/iomgr/timer_uv.cc
  3. 11
      tools/dockerfile/interoptest/grpc_interop_node/build_interop.sh

@ -204,6 +204,9 @@ static grpc_error* uv_socket_init_helper(uv_socket_t* uv_socket, int domain) {
uv_socket->write_buffers = nullptr; uv_socket->write_buffers = nullptr;
uv_socket->read_len = 0; uv_socket->read_len = 0;
uv_tcp_nodelay(uv_socket->handle, 1); uv_tcp_nodelay(uv_socket->handle, 1);
// Node uses a garbage collector to call destructors, so we don't
// want to hold the uv loop open with active gRPC objects.
uv_unref((uv_handle_t*)uv_socket->handle);
uv_socket->pending_connection = false; uv_socket->pending_connection = false;
uv_socket->accept_socket = nullptr; uv_socket->accept_socket = nullptr;
uv_socket->accept_error = GRPC_ERROR_NONE; uv_socket->accept_error = GRPC_ERROR_NONE;

@ -52,6 +52,9 @@ static void timer_start(grpc_custom_timer* t) {
uv_timer->data = t; uv_timer->data = t;
t->timer = (void*)uv_timer; t->timer = (void*)uv_timer;
uv_timer_start(uv_timer, run_expired_timer, t->timeout_ms, 0); uv_timer_start(uv_timer, run_expired_timer, t->timeout_ms, 0);
// Node uses a garbage collector to call destructors, so we don't
// want to hold the uv loop open with active gRPC objects.
uv_unref((uv_handle_t*)uv_timer);
} }
static void timer_stop(grpc_custom_timer* t) { static void timer_stop(grpc_custom_timer* t) {

@ -17,12 +17,23 @@
set -e set -e
mkdir -p /var/local/git mkdir -p /var/local/git
git clone /var/local/jenkins/grpc-node /var/local/git/grpc-node git clone /var/local/jenkins/grpc-node /var/local/git/grpc-node
# clone gRPC submodules, use data from locally cloned submodules where possible # clone gRPC submodules, use data from locally cloned submodules where possible
(cd /var/local/jenkins/grpc-node/ && git submodule foreach 'cd /var/local/git/grpc-node \ (cd /var/local/jenkins/grpc-node/ && git submodule foreach 'cd /var/local/git/grpc-node \
&& git submodule update --init --recursive --reference /var/local/jenkins/grpc-node/${name} \ && git submodule update --init --recursive --reference /var/local/jenkins/grpc-node/${name} \
${name}') ${name}')
# Use the pending c-core changes if possible
if [ -d "/var/local/jenkins/grpc" ]; then
cd /var/local/jenkins/grpc
CURRENT_COMMIT="$(git rev-parse --verify HEAD)"
cd /var/local/git/grpc-node/packages/grpc-native-core/deps/grpc/
git fetch --tags --progress https://github.com/grpc/grpc.git +refs/pull/*:refs/remotes/origin/pr/*
git checkout $CURRENT_COMMIT
git submodule update --init --recursive --reference /var/local/jenkins/grpc
fi
# copy service account keys if available # copy service account keys if available
cp -r /var/local/jenkins/service_account $HOME || true cp -r /var/local/jenkins/service_account $HOME || true

Loading…
Cancel
Save