apache / apache/pulsar-client-node

[Error: Failed to create producer: TimeOut]

オープン
#394 コメント 0 件 リアクション 4 件 担当者 0 名 GitHub で見る
主要言語
C++
スター
164
フォーク
98
PR マージ指標
30日以内にマージされた PR はありません

説明

I'm not able to create producer or consumer. I only get the error [Error: Failed to create producer: TimeOut]. I see opening and closing connection in broker log. I'm able to connect pulsar broker with Pulsar-Manager (the same netrwork, docker-compose).

used docker-compose:
```
services:
pulsar:
image: apachepulsar/pulsar:3.3.1
command: sh -c "bin/apply-config-from-env.py conf/standalone.conf && bin/pulsar standalone"
hostname: pulsar-local
ports:
- "8080:8080"
- "6650:6650"
restart: unless-stopped
volumes:
- "./conf:/pulsar/conf"
dashboard:
image: apachepulsar/pulsar-manager:v0.4.0
ports:
- "9527:9527"
- "7750:7750"
depends_on:
- pulsar
links:
- pulsar
environment:
SPRING_CONFIGURATION_FILE: /pulsar-manager/pulsar-manager/application.properties
```
used nodejs client app:
```
const Pulsar = require("pulsar-client");

async function produceTest(timeout) {
const client = new Pulsar.Client({
serviceUrl: "pulsar://host.docker.internal:6650"
});

console.log('Create producer....');

try {

const producer = await client.createProducer({
topic: "persistent://public/default/test1",
sendTimeoutMs: 30000
});

console.log('before');

await new Promise((resolve, reject) => {
setTimeout(() => {
producer.send({
data: Buffer.from("My Message")
});
resolve();
}, timeout);
});

} catch(e) {

console.error(e);
}

console.log('after');

await client.close();
}

produceTest(1000);

```

Pulsar broker log:
```
2024-09-17 12:47:18 2024-09-17T10:47:18,331+0000 [pulsar-io-18-15] INFO org.apache.pulsar.broker.service.ServerCnx - [/172.22.0.1:37994] connected with clientVersion=Pulsar-CPP-v3.5.1, clientProtocolVersion=20, proxyVersion=null
2024-09-17 12:47:18 2024-09-17T10:47:18,333+0000 [pulsar-io-18-15] INFO org.apache.pulsar.broker.service.ServerCnx - Closed connection from /172.22.0.1:37994
```

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

調査の方向性

提供された docker-compose サービスと Node.js クライアントを pulsar://host.docker.internal:6650 で使用して問題を再現します。まず、createProducer 呼び出しと併せてブローカーの接続ログを確認します。ブローカーが接続を閉じる理由を特定し、検証済みの修正または設定変更を記録できれば完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
docker, docker-compose, javascript, node.js
領域
api, backend, networking
issue の種類
バグ
難易度
4/5
見積もり時間
3〜5日
活発さ
停滞
明瞭さ
説明が足りない
初心者へのやさしさ
25/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。