[GitHub] [pulsar-site] Anonymitaet merged pull request #68: increase docs font sizes
Anonymitaet merged PR #68: URL: https://github.com/apache/pulsar-site/pull/68 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: dev-unsubscr...@pulsar.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[CLOSE] [PIP-154] Max active transaction limitation for transaction coordinator
Hi Pulsar community, This PIP has been voted, and has three bindings. voting list : https://lists.apache.org/thread/ql6ksch1dszqcqnw3yhhwxcj5cxjw2gx so close this PIP Thanks, Bo
[GitHub] [pulsar-client-node] nkurihar merged pull request #213: Add installation instructions on linux
nkurihar merged PR #213: URL: https://github.com/apache/pulsar-client-node/pull/213 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: dev-unsubscr...@pulsar.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [pulsar-client-node] Matt-Esch commented on issue #214: Client configuration is missing the listenerName parameter
Matt-Esch commented on issue #214: URL: https://github.com/apache/pulsar-client-node/issues/214#issuecomment-1120560916 I'm not sure what your full use case is but you might want to look at https://github.com/ayeo-flex-org/pulsar-flex - I haven't looked at it properly yet because it doesn't seem complete but it might be easier to extend or complete enough for your use case. I'm generally very dissatisfied with the c++ library let alone the node binding. I'm currently chasing down an issue with a race condition on close that causes a segfault. That should stir some level of caution around using this library and it clearly needs a lot of work. I think the reason for using the c api is that it's more stable between versions, so that also means not having the latest features. I did briefly look at using the C++ api because there are features missing for the async interface (that and the memory management is exceptionally painful). -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: dev-unsubscr...@pulsar.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [pulsar-client-node] k2la commented on issue #161: Looks like the pulsar-client-node can not run with the current pulsar master code
k2la commented on issue #161: URL: https://github.com/apache/pulsar-client-node/issues/161#issuecomment-1120603947 @jskorlol Installation instructions for rpm or debian have been added at https://github.com/apache/pulsar-client-node/pull/213. Please see https://github.com/apache/pulsar-client-node#install-on-linux and try again. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: dev-unsubscr...@pulsar.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
[GitHub] [pulsar-client-node] k2la commented on issue #134: Getting error while installing
k2la commented on issue #134: URL: https://github.com/apache/pulsar-client-node/issues/134#issuecomment-1120604417 @jskorlol Installation instructions for rpm or debian have been added at https://github.com/apache/pulsar-client-node/pull/213. Please see https://github.com/apache/pulsar-client-node#install-on-linux and try again. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: dev-unsubscr...@pulsar.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org
Re: [DISCUSS] PIP-158: Split client TLS transport encryption from authentication
It totally LGTM. I have a suggestion that it might be better to configure a class like `TlsConfiguration` instead of multiple TLS related configs added to `ClientBuilder`. Thanks, Yunze > 2022年4月24日 14:15,Zixuan Liu 写道: > > Hi Pulsar community, > > I open a https://github.com/apache/pulsar/issues/15289 for Split client TLS > transport encryption from authentication. > > Let me know what you think. > > Thanks, > Zixuan > > -- > > Motivation > > The client supports TLS transport encryption and TLS authentication, this > code so like: > > PulsarClient client = PulsarClient.builder() >.serviceUrl("pulsar+ssl://localhost:6651") >.tlsTrustCertsFilePath("/path/to/cacert.pem") >.authentication(AuthenticationTls.class.getName(), authParams) >.build() > > This causes an issue that cannot use other authentication with TLS > transport encryption, and also made our confusion if we use TLS transport > encryption by setting authentication. > Goal > > Split client TLS transport encryption from authentication is used to > support TLS transport encryption with any authentication. > API Changes > > - Add new methods in org.apache.pulsar.client.api.ClientBuilder > > public interface ClientBuilder extends Serializable, Cloneable { >/** * Set the path to the TLS key file. * * @param > tlsKeyFilePath * @return the client builder instance */ >ClientBuilder tlsKeyFilePath(String tlsKeyFilePath); > >/** * Set the path to the TLS certificate file. * * > @param tlsCertificateFilePath * @return the client builder > instance */ >ClientBuilder tlsCertificateFilePath(String tlsCertificateFilePath); > } > > ImplementationTLS transport encryption > > We can call the tlsKeyFilePath(), tlsCertificateFilePath() and > tlsTrustCertsFilePath() to configurate the TLS transport encryption, the > code so like: > > PulsarClient client = PulsarClient.builder() >.serviceUrl("pulsar+ssl://my-host:6650") >.tlsTrustCertsFilePath("/path/to/cacert.pem") >.tlsKeyFilePath("/path/to/client-key.pem") >.tlsCertificateFilePath("/path/to/client-cert.pem") >.build(); > > TLS transport encryption with any authentication > > We can call the tlsKeyFilePath(), tlsCertificateFilePath(), > tlsTrustCertsFilePath() and authentication() to configurate the TLS > transport encryption with any authentication, the code so like: > > PulsarClient client = PulsarClient.builder() >.serviceUrl("pulsar+ssl://my-host:6650") >.tlsTrustCertsFilePath("/path/to/cacert.pem") >.tlsKeyFilePath("/path/to/client-key.pem") >.tlsCertificateFilePath("/path/to/client-cert.pem") >.authentication(AuthenticationTls.class.getName() /* > AuthenticationToken.class.getName()*/, authParams) >.builder() > > For AuthenticationTls, we need to do check the authParams, when the > authParams is empty, we need to read TLS config from ClientBuilder, > otherwise read from the authParams > Compatibility > > None.
Re: [DISCUSS] PIP-158: Split client TLS transport encryption from authentication
Hi Yunze, Thanks for your suggestion, your idea is great, but we have the `tlsProtocols()` and `tlsCiphers()` in `ClientBuilder`, so I use this style. Thanks, Zixuan Yunze Xu 于2022年5月9日周一 13:31写道: > It totally LGTM. I have a suggestion that it might be better to configure a > class like `TlsConfiguration` instead of multiple TLS related configs > added to > `ClientBuilder`. > > Thanks, > Yunze > > > > > > 2022年4月24日 14:15,Zixuan Liu 写道: > > > > Hi Pulsar community, > > > > I open a https://github.com/apache/pulsar/issues/15289 for Split client > TLS > > transport encryption from authentication. > > > > Let me know what you think. > > > > Thanks, > > Zixuan > > > > -- > > > > Motivation > > > > The client supports TLS transport encryption and TLS authentication, this > > code so like: > > > > PulsarClient client = PulsarClient.builder() > >.serviceUrl("pulsar+ssl://localhost:6651") > >.tlsTrustCertsFilePath("/path/to/cacert.pem") > >.authentication(AuthenticationTls.class.getName(), > authParams) > >.build() > > > > This causes an issue that cannot use other authentication with TLS > > transport encryption, and also made our confusion if we use TLS transport > > encryption by setting authentication. > > Goal > > > > Split client TLS transport encryption from authentication is used to > > support TLS transport encryption with any authentication. > > API Changes > > > > - Add new methods in org.apache.pulsar.client.api.ClientBuilder > > > > public interface ClientBuilder extends Serializable, Cloneable { > >/** * Set the path to the TLS key file. * * @param > > tlsKeyFilePath * @return the client builder instance */ > >ClientBuilder tlsKeyFilePath(String tlsKeyFilePath); > > > >/** * Set the path to the TLS certificate file. * * > > @param tlsCertificateFilePath * @return the client builder > > instance */ > >ClientBuilder tlsCertificateFilePath(String tlsCertificateFilePath); > > } > > > > ImplementationTLS transport encryption > > > > We can call the tlsKeyFilePath(), tlsCertificateFilePath() and > > tlsTrustCertsFilePath() to configurate the TLS transport encryption, the > > code so like: > > > > PulsarClient client = PulsarClient.builder() > >.serviceUrl("pulsar+ssl://my-host:6650") > >.tlsTrustCertsFilePath("/path/to/cacert.pem") > >.tlsKeyFilePath("/path/to/client-key.pem") > >.tlsCertificateFilePath("/path/to/client-cert.pem") > >.build(); > > > > TLS transport encryption with any authentication > > > > We can call the tlsKeyFilePath(), tlsCertificateFilePath(), > > tlsTrustCertsFilePath() and authentication() to configurate the TLS > > transport encryption with any authentication, the code so like: > > > > PulsarClient client = PulsarClient.builder() > >.serviceUrl("pulsar+ssl://my-host:6650") > >.tlsTrustCertsFilePath("/path/to/cacert.pem") > >.tlsKeyFilePath("/path/to/client-key.pem") > >.tlsCertificateFilePath("/path/to/client-cert.pem") > >.authentication(AuthenticationTls.class.getName() /* > > AuthenticationToken.class.getName()*/, authParams) > >.builder() > > > > For AuthenticationTls, we need to do check the authParams, when the > > authParams is empty, we need to read TLS config from ClientBuilder, > > otherwise read from the authParams > > Compatibility > > > > None. > >
Re: [DISCUSS] PIP-158: Split client TLS transport encryption from authentication
Thanks for your clarification. Let’s continue maintaining these configs in `ClientBuilder`. Thanks, Yunze > 2022年5月9日 13:54,Zixuan Liu 写道: > > Hi Yunze, > > Thanks for your suggestion, your idea is great, but we have the > `tlsProtocols()` and `tlsCiphers()` in `ClientBuilder`, so I use this style. > > Thanks, > Zixuan > > Yunze Xu 于2022年5月9日周一 13:31写道: > >> It totally LGTM. I have a suggestion that it might be better to configure a >> class like `TlsConfiguration` instead of multiple TLS related configs >> added to >> `ClientBuilder`. >> >> Thanks, >> Yunze >> >> >> >> >>> 2022年4月24日 14:15,Zixuan Liu 写道: >>> >>> Hi Pulsar community, >>> >>> I open a https://github.com/apache/pulsar/issues/15289 for Split client >> TLS >>> transport encryption from authentication. >>> >>> Let me know what you think. >>> >>> Thanks, >>> Zixuan >>> >>> -- >>> >>> Motivation >>> >>> The client supports TLS transport encryption and TLS authentication, this >>> code so like: >>> >>> PulsarClient client = PulsarClient.builder() >>> .serviceUrl("pulsar+ssl://localhost:6651") >>> .tlsTrustCertsFilePath("/path/to/cacert.pem") >>> .authentication(AuthenticationTls.class.getName(), >> authParams) >>> .build() >>> >>> This causes an issue that cannot use other authentication with TLS >>> transport encryption, and also made our confusion if we use TLS transport >>> encryption by setting authentication. >>> Goal >>> >>> Split client TLS transport encryption from authentication is used to >>> support TLS transport encryption with any authentication. >>> API Changes >>> >>> - Add new methods in org.apache.pulsar.client.api.ClientBuilder >>> >>> public interface ClientBuilder extends Serializable, Cloneable { >>> /** * Set the path to the TLS key file. * * @param >>> tlsKeyFilePath * @return the client builder instance */ >>> ClientBuilder tlsKeyFilePath(String tlsKeyFilePath); >>> >>> /** * Set the path to the TLS certificate file. * * >>> @param tlsCertificateFilePath * @return the client builder >>> instance */ >>> ClientBuilder tlsCertificateFilePath(String tlsCertificateFilePath); >>> } >>> >>> ImplementationTLS transport encryption >>> >>> We can call the tlsKeyFilePath(), tlsCertificateFilePath() and >>> tlsTrustCertsFilePath() to configurate the TLS transport encryption, the >>> code so like: >>> >>> PulsarClient client = PulsarClient.builder() >>> .serviceUrl("pulsar+ssl://my-host:6650") >>> .tlsTrustCertsFilePath("/path/to/cacert.pem") >>> .tlsKeyFilePath("/path/to/client-key.pem") >>> .tlsCertificateFilePath("/path/to/client-cert.pem") >>> .build(); >>> >>> TLS transport encryption with any authentication >>> >>> We can call the tlsKeyFilePath(), tlsCertificateFilePath(), >>> tlsTrustCertsFilePath() and authentication() to configurate the TLS >>> transport encryption with any authentication, the code so like: >>> >>> PulsarClient client = PulsarClient.builder() >>> .serviceUrl("pulsar+ssl://my-host:6650") >>> .tlsTrustCertsFilePath("/path/to/cacert.pem") >>> .tlsKeyFilePath("/path/to/client-key.pem") >>> .tlsCertificateFilePath("/path/to/client-cert.pem") >>> .authentication(AuthenticationTls.class.getName() /* >>> AuthenticationToken.class.getName()*/, authParams) >>> .builder() >>> >>> For AuthenticationTls, we need to do check the authParams, when the >>> authParams is empty, we need to read TLS config from ClientBuilder, >>> otherwise read from the authParams >>> Compatibility >>> >>> None. >> >>