Re: [DISCUSS] PIP-247: Notifications for partitions update

2023-02-23 Thread houxiaoyu
Hi Joe, When we use PartitionedProducerImpl or MultiTopicsConsumerImpl, there is a poll task to fetch the metadata of the partitioned-topic regularly for the number of partitions updated. This PIP wants to use a notification mechanism to replace the metadata poll task. Just the way to implement

Re: TLS regression verification for Python client 3.1.0 and Node.js client 1.8.1

2023-02-23 Thread Yunze Xu
Hi Zixuan, This test is to verify if the specific client can avoid configuring the CA file explicitly. From the test results, the Python client works well without setting the file explicitly, while the Node.js client does not. Currently we have already figured out the reason why only the Python c

Re: [DISCUSS] ClientVersion conflict across multiple language client

2023-02-23 Thread Zike Yang
> I think it makes sense to make the format "pulsar--" for official clients. We could then recommend third party clients replace "pulsar" with a relevant org name. There isn't a way to enforce the version string though, so these would only be recommendations. +1 for this format. > F#: I'm not exa

Re: [DISCUSS] Release 2.9.5

2023-02-23 Thread mattisonchao
Hi, All I am sorry, Cong Zhao will takeover this release. Best, Mattison On Feb 21, 2023, 15:11 +0800, Haiting Jiang , wrote: > +1 > > Haiting > > On Tue, Feb 21, 2023 at 12:11 PM Hang Chen wrote: > > > > +1 > > > > Thanks, > > Hang > > > > Enrico Olivelli 于2023年2月20日周一 21:11写道: > > > > > > > >

Re: [DISCUSS] PIP-247: Notifications for partitions update

2023-02-23 Thread Joe F
Why is this needed when we have notifications on regex sub changes? Aren't the partition names a well-defined regex? Joe On Thu, Feb 23, 2023 at 8:52 PM houxiaoyu wrote: > Hi Asaf, > thanks for your reminder. > > ## Changing > I have updated the following changes to make sure the notification a

Re: [DISCUSS] PIP-247: Notifications for partitions update

2023-02-23 Thread houxiaoyu
Hi Asaf, thanks for your reminder. ## Changing I have updated the following changes to make sure the notification arrived successfully: 1. The watch success response `CommandWatchPartitionUpdateSuccess` will contain all the concerned topics of this watcher 2. The notification `CommandPartitionUpda

[DISCUSS] PIP-250: Add proxyVersion to CommandConnect

2023-02-23 Thread Michael Marshall
Hi Pulsar Community, In talking with Zike Yang on https://github.com/apache/pulsar/pull/19540, we identified that it would be helpful for the proxy to forward its own version when connecting to the broker. Here is a related PIP to improve the connection information available to operators. Issue:

Re: TLS regression verification for Python client 3.1.0 and Node.js client 1.8.1

2023-02-23 Thread Zixuan Liu
This is not very friendly to explicitly set the ca file. Can we dynamically search the system ca file? and then go to set the ca file to the libcurl. The following are ca files from golang codebase(this is what you mentioned): ``` // Possible certificate files; stop after finding one. var certFi

Re: [DISCUSS]Add an internal class to `TransactionBufferStats` to record the snapshot status uniformly.

2023-02-23 Thread Xiangying Meng
Hi Asaf, > How are those stats exposed to the user? IMO, these stats should be exposed to the user. The users can use it to check if the transaction snapshot is running correctly. Thanks, Xiangying On Wed, Feb 22, 2023 at 9:06 PM Asaf Mesika wrote: > How are those stats exposed to the user? > >

Re: [DISCUSS] PIP-249: Pulsar website redesign

2023-02-23 Thread Yu
Hi @asafm and @emidio-cardeira thanks for your great work! You've contributed new designs (with colors/elements/... that have not been used) for Pulsar, which is a big step for the community. Preiviously we've collected some rules at Pulsar Design Style Guide [1], which are used to create illustr

[DISCUSS] PIP-249: Pulsar website redesign

2023-02-23 Thread Asaf Mesika
Hi, PIP issue: https://github.com/apache/pulsar/issues/19611 One of the key elements that attracted me to Pulsar was how awesome it is - built in 2012 yet fits the new strategy of being cloud-native - simply incredible. It's not only that - it has so many outstanding features, making it a cutting

Re: [DISCUSS] ClientVersion conflict across multiple language client

2023-02-23 Thread Michael Marshall
> Go: > ClientVersionString = "Pulsar Go " + Version > https://github.com/apache/pulsar-client-go/blob/dedbdc45c63b06e6a12356785418cd906d6bab3c/pulsar/internal/version.go#L43 Because we filter out the official go client, I propose that we remove the filtering of certain client versions: https://gi

Re: [DISCUSS] ClientVersion conflict across multiple language client

2023-02-23 Thread Michael Marshall
I found another data point in favor of moving in this direction. Our protocol spec says the following about the client_version field: message CommandConnect { "client_version" : "Pulsar-Client-Java-v1.15.2", "auth_method_name" : "my-authentication-plugin", "auth_data" : "my-auth-data", "protocol_v

Re: TLS regression verification for Python client 3.1.0 and Node.js client 1.8.1

2023-02-23 Thread Yunze Xu
I've figured out why the Python client does not suffer from this issue. I use `strace` to print all system calls. Then I find the Python client reads another cert file: ``` openat(AT_FDCWD, "/usr/local/lib/python3.8/dist-packages/certifi/cacert.pem", O_RDONLY) = 6 ``` The correct cert comes from

Re: [DISCUSS] ClientVersion conflict across multiple language client

2023-02-23 Thread Michael Marshall
> A better solution is that we could allow the > user to specify the suffix of the client version. I don't think we need to make it configurable because the library owner, not the user, has full control when creating the Connect command. We can update our protocol spec to recommend appropriate us

TLS regression verification for Python client 3.1.0 and Node.js client 1.8.1

2023-02-23 Thread Yunze Xu
Hi all, Currently there are two ongoing releases: Python client 3.1.0 [1] and Node.js client 1.8.1 [2]. Both these two releases depend on the C++ client 3.1.2, which fixes an issue that when performing OAuth2 authentication with an issuer URL whose protocol is HTTPS, users can configure the tls ce

Re: [VOTE] Pulsar Client Python Release 3.1.0 Candidate 3

2023-02-23 Thread Enrico Olivelli
Thank you Yunze for double checking. I don't have time to test the release, so I am voting +0 (and not -1) Enrico Il giorno gio 23 feb 2023 alle ore 12:57 Yunze Xu ha scritto: > > Hi Enrico, > > I will test more operation systems and open a discussion soon. For > now, I just tested the TLS encr

Re: [VOTE] Pulsar Client Python Release 3.1.0 Candidate 3

2023-02-23 Thread Yunze Xu
Hi Enrico, I will test more operation systems and open a discussion soon. For now, I just tested the TLS encryption and token authentication, and I found this issue does not exist as expected for both Python and Node.js clients. - Windows: Only Python client works - Ubuntu: Both work - macOS: Not

Re: [VOTE] Pulsar Client Python Release 3.1.0 Candidate 3

2023-02-23 Thread Enrico Olivelli
Does this version have the same problems about TLS CA Certs as the NodeJS client ? In that case I would cast a -1 Enrico Il giorno gio 23 feb 2023 alle ore 01:21 Matteo Merli ha scritto: > > +1 bindind > -- > Matteo Merli > > > > On Fri, Feb 17, 2023 at 3:27 AM Yunze Xu > wrote: > > > This is

Re: [DISCUSS] ClientVersion conflict across multiple language client

2023-02-23 Thread Zike Yang
> But I'm wondering if it's possible to support configuring the client version string by users? I think it's possible. A better solution is that we could allow the user to specify the suffix of the client version. For example, by adding a new configuration like `clientVersionSuffix` to the ClientC

Re: [Vote] PIP-245: Make subscriptions of non-persistent topic non-durable

2023-02-23 Thread 太上玄元道君
Hi Rajan, Even we don't persistent NonPersistentSubscription's state, but it has a `isDurable` field ``` public NonPersistentSubscription(NonPersistentTopic topic, String subscriptionName, boolean isDurable, Map properties) { this.topic = topic;