opened 09:08AM - 18 Mar 23 UTC
closed 06:44AM - 20 Mar 23 UTC
documentation
**Describe the bug**
A clear and concise description of what the bug is.
hstre…amdb-java cannot connect to remote hstream server,the ip is converted to the Hstream Server intranet address
**To Reproduce**
Steps to reproduce the behavior:
quick-start.yaml:
```
version: "3.5"
services:
hserver:
image: hstreamdb/hstream:latest
depends_on:
- zookeeper
- hstore
ports:
- "6570:6570"
expose:
- 6570
networks:
- hstream-quickstart
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /tmp:/tmp
- data_store:/data/store
command:
- bash
- "-c"
- |
set -e
/usr/local/script/wait-for-storage.sh hstore 6440 zookeeper 2181 600 \
/usr/local/bin/hstream-server \
--bind-address 0.0.0.0 --port 6570 \
--internal-port 6571 \
--server-id 100 \
--seed-nodes "$$(hostname -I | awk '{print $$1}'):6571" \
--advertised-address $$(hostname -I | awk '{print $$1}') \
--metastore-uri zk://zookeeper:2181 \
--store-config /data/store/logdevice.conf \
--store-admin-host hstore --store-admin-port 6440 \
--store-log-level warning \
--io-tasks-path /tmp/io/tasks \
--io-tasks-network hstream-quickstart
hstore:
image: hstreamdb/hstream:latest
networks:
- hstream-quickstart
volumes:
- data_store:/data/store
command:
- bash
- "-c"
- |
set -ex
# N.B. "enable-dscp-reflection=false" is required for linux kernel which
# doesn't support dscp reflection, e.g. centos7.
/usr/local/bin/ld-dev-cluster --root /data/store \
--use-tcp --tcp-host $$(hostname -I | awk '{print $$1}') \
--user-admin-port 6440 \
--param enable-dscp-reflection=false \
--no-interactive \
zookeeper:
image: zookeeper
expose:
- 2181
networks:
- hstream-quickstart
volumes:
- data_zk_data:/data
- data_zk_datalog:/datalog
networks:
hstream-quickstart:
name: hstream-quickstart
volumes:
data_store:
name: quickstart_data_store
data_zk_data:
name: quickstart_data_zk_data
data_zk_datalog:
name: quickstart_data_zk_datalog
```
```
17:04:36.949 [main] INFO io.hstream.impl.HStreamClientKtImpl - client init with bootstrapServerUrls [[******:6570]]
17:04:38.193 [main] INFO io.hstream.impl.HStreamClientKtImpl - update clusterServerUrls to [[172.18.0.4:6570]]
17:04:43.210 [grpc-nio-worker-ELG-1-6] ERROR io.hstream.impl.Utils - unary rpc error with url [172.18.0.4:6570]
io.grpc.StatusException: DEADLINE_EXCEEDED: deadline exceeded after 4.990276100s. [buffered_nanos=4992547700, waiting_for_connection]
at io.grpc.Status.asException(Status.java:554) ~[grpc-api-1.50.2.jar:1.50.2]
at io.grpc.kotlin.ClientCalls$rpcImpl$1$1$1.onClose(ClientCalls.kt:296) ~[grpc-kotlin-stub-1.3.0.jar:?]
at io.grpc.internal.DelayedClientCall$DelayedListener$3.run(DelayedClientCall.java:471) ~[grpc-core-1.50.2.jar:1.50.2]
at io.grpc.internal.DelayedClientCall$DelayedListener.delayOrExecute(DelayedClientCall.java:435) ~[grpc-core-1.50.2.jar:1.50.2]
at io.grpc.internal.DelayedClientCall$DelayedListener.onClose(DelayedClientCall.java:468) ~[grpc-core-1.50.2.jar:1.50.2]
at io.grpc.internal.ClientCallImpl.closeObserver(ClientCallImpl.java:563) ~[grpc-core-1.50.2.jar:1.50.2]
at io.grpc.internal.ClientCallImpl.access$300(ClientCallImpl.java:70) ~[grpc-core-1.50.2.jar:1.50.2]
at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1StreamClosed.runInternal(ClientCallImpl.java:744) ~[grpc-core-1.50.2.jar:1.50.2]
at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1StreamClosed.runInContext(ClientCallImpl.java:723) ~[grpc-core-1.50.2.jar:1.50.2]
at io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37) ~[grpc-core-1.50.2.jar:1.50.2]
at io.grpc.internal.SerializeReentrantCallsDirectExecutor.execute(SerializeReentrantCallsDirectExecutor.java:49) ~[grpc-core-1.50.2.jar:1.50.2]
at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl.closedInternal(ClientCallImpl.java:752) ~[grpc-core-1.50.2.jar:1.50.2]
at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl.closed(ClientCallImpl.java:688) ~[grpc-core-1.50.2.jar:1.50.2]
at io.grpc.internal.DelayedStream$DelayedStreamListener$4.run(DelayedStream.java:510) ~[grpc-core-1.50.2.jar:1.50.2]
at io.grpc.internal.DelayedStream$DelayedStreamListener.delayOrExecute(DelayedStream.java:462) ~[grpc-core-1.50.2.jar:1.50.2]
at io.grpc.internal.DelayedStream$DelayedStreamListener.closed(DelayedStream.java:507) ~[grpc-core-1.50.2.jar:1.50.2]
at io.grpc.internal.DelayedStream.cancel(DelayedStream.java:329) ~[grpc-core-1.50.2.jar:1.50.2]
at io.grpc.internal.DelayedClientTransport$PendingStream.cancel(DelayedClientTransport.java:377) ~[grpc-core-1.50.2.jar:1.50.2]
at io.grpc.internal.ClientCallImpl$DeadlineTimer.run(ClientCallImpl.java:406) ~[grpc-core-1.50.2.jar:1.50.2]
at io.grpc.internal.LogExceptionRunnable.run(LogExceptionRunnable.java:43) ~[grpc-core-1.50.2.jar:1.50.2]
at io.grpc.netty.shaded.io.netty.util.concurrent.PromiseTask.runTask(PromiseTask.java:98) ~[grpc-netty-shaded-1.50.2.jar:1.50.2]
at io.grpc.netty.shaded.io.netty.util.concurrent.ScheduledFutureTask.run(ScheduledFutureTask.java:153) ~[grpc-netty-shaded-1.50.2.jar:1.50.2]
at io.grpc.netty.shaded.io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:174) ~[grpc-netty-shaded-1.50.2.jar:1.50.2]
at io.grpc.netty.shaded.io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:167) ~[grpc-netty-shaded-1.50.2.jar:1.50.2]
at io.grpc.netty.shaded.io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470) ~[grpc-netty-shaded-1.50.2.jar:1.50.2]
at io.grpc.netty.shaded.io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:503) ~[grpc-netty-shaded-1.50.2.jar:1.50.2]
at io.grpc.netty.shaded.io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997) ~[grpc-netty-shaded-1.50.2.jar:1.50.2]
at io.grpc.netty.shaded.io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[grpc-netty-shaded-1.50.2.jar:1.50.2]
at io.grpc.netty.shaded.io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) ~[grpc-netty-shaded-1.50.2.jar:1.50.2]
at java.lang.Thread.run(Thread.java:833) ~[?:?]
```
**Expected behavior**
A clear and concise description of what you expected to happen.
hstreamdb-java should connect to remote hstream server
**Additional context**
Add any other context about the problem here.