This is an automated email from the ASF dual-hosted git repository.

CritasWang pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/iotdb-client-rust.git


The following commit(s) were added to refs/heads/main by this push:
     new 6445ccd  CI: wait for DataNode startup banner in container logs 
instead of a TCP probe (docker port proxy accepts before DataNode listens, 
causing connection resets on slower startups)
6445ccd is described below

commit 6445ccdd24d8fa46927a667c4e64842a11ccd205
Author: CritasWang <[email protected]>
AuthorDate: Mon Jul 20 11:12:48 2026 +0800

    CI: wait for DataNode startup banner in container logs instead of a TCP 
probe (docker port proxy accepts before DataNode listens, causing connection 
resets on slower startups)
---
 .github/workflows/ci.yml | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 0a034e0..f731269 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -85,17 +85,20 @@ jobs:
 
       - uses: Swatinem/rust-cache@e18b497796c12c097a38f9edb9d0641fb99eee32 # v2
 
+      # A bare TCP probe is unreliable: docker's port proxy accepts connections
+      # before the DataNode listens (then resets them), so wait for the
+      # startup banner in the container log instead.
       - name: Wait for IoTDB
         run: |
-          for i in $(seq 1 60); do
-            if (exec 3<>/dev/tcp/127.0.0.1/6667) 2>/dev/null; then
-              exec 3>&- 3<&-
+          for i in $(seq 1 120); do
+            if docker logs "${{ job.services.iotdb.id }}" 2>&1 | grep -q "set 
up successfully"; then
               echo "IoTDB is up after ${i}s"
               exit 0
             fi
             sleep 1
           done
-          echo "IoTDB did not become ready in 60s" >&2
+          echo "IoTDB did not become ready in 120s" >&2
+          docker logs "${{ job.services.iotdb.id }}" 2>&1 | tail -50
           exit 1
 
       # Includes the live-server tests now that IoTDB is reachable.

Reply via email to