apache / pulsar-client-node

Apache Pulsar NodeJS Client
https://pulsar.apache.org/
Apache License 2.0
148 stars 86 forks source link

Issue with version 1.10 and onwards on windows #381

Open suneab opened 6 months ago

suneab commented 6 months ago

Hi! I'm building an application using pulsar and everything works fine on the latest version on macos. After some trial and error on my windows pc. it seems there is an issue with version 1.10 and 1.11 on windows. if i change the version to 1.9 it works again.

I used slightly modified version of the example from readme to test this. Only difference is i added authentication, so it might just be a problem with that.

I get this error:

node:internal/process/promises:289
            triggerUncaughtException(err, true /* fromPromise */);
            ^

[Error: Failed to create producer: AuthenticationError]

Full code example:

const Pulsar = require('pulsar-client');

const DEV_DEFAULTS = {
    serviceUrl: "SECRET",
    type: "client_credentials",
    issuer_url: "SECRET",
    audience: "SECRET",
    scope: "SECRET",
};
const clientConfig = {
    name: "SECRET",
    clientId: "SECRET",
    clientSecret: "SECRET",
};
(async () => {
    // Create a client
    const client = new Pulsar.Client({
        serviceUrl: DEV_DEFAULTS.serviceUrl,
        authentication: new Pulsar.AuthenticationOauth2({
            ...DEV_DEFAULTS,
            client_id: clientConfig.clientId,
            client_secret: clientConfig.clientSecret,
        })
    });

    // Create a producer
    const producer = await client.createProducer({
        topic: 'SECRET',
    });

    // Create a consumer
    const consumer = await client.subscribe({
        topic: 'SECRET',
        subscription: 'SECRET'
    });

    // Send a message
    producer.send({
        data: Buffer.from("hello")
    });

    // Receive the message
    const msg = await consumer.receive();
    console.log(msg.getData().toString());
    consumer.acknowledge(msg);

    await producer.close();
    await consumer.close();
    await client.close();
})();
JimmyBjorklund commented 6 months ago

We get similar issue; we get instant timeout when creating producer.

JimmyBjorklund commented 5 months ago

Any update ?