2020-08-12 11:30:12 UTC - Aaron: Any thoughts on this? Does the way Avro is 
sent over Pulsar (i.e. the encoding) differ if it is sent using AUTO_PRODUCE 
versus if it is sent with a producer that is of an Avro schema type?
----
2020-08-12 12:08:52 UTC - Aaron: On top of this, how does schema compatibility 
work with AUTO_PRODUCE?
----
2020-08-12 12:30:44 UTC - Nikola Socec: @Nikola Socec has joined the channel
----
2020-08-12 12:38:13 UTC - Nikola Socec: Hi all,
I'm planning to set up a pulsar cluster and I'm wondering what specification 
the cluster should have. It will be handling 1 MB/s of data on average, but it 
will come in bursts about every 30 seconds. I'm interested specifically in the 
amount of brokers, bookies and zookeepers I should use, and in the amount of 
RAM the cluster should have to keep the caches from overflowing.
----
2020-08-12 12:42:13 UTC - Elina Melamed: @Elina Melamed has joined the channel
----
2020-08-12 15:36:05 UTC - Charvak Patel: @Charvak Patel has joined the channel
----
2020-08-12 15:57:13 UTC - Alexandre DUVAL: ok i thought when zero functions 
worker are up the state was keep and restart node restart the functions stopped 
etc
----
2020-08-12 16:08:27 UTC - Alexandre DUVAL: What can be the reason of
```Aug 12 16:03:29 yo-pulsar-c1-n1 pulsar-broker[19142]: 16:03:29.678 
[pulsar-web-42-7] ERROR org.apache.pulsar.broker.web.PulsarWebResource - 
Finding owner for topic <persistent://yo/accesslogsinvalid/input-par-adc-n16> 
timed out
Aug 12 16:03:29 yo-pulsar-c1-n1 pulsar-broker[19142]: 
java.util.concurrent.TimeoutException: null
Aug 12 16:03:29 yo-pulsar-c1-n1 pulsar-broker[19142]:  at 
java.util.concurrent.CompletableFuture.timedGet(CompletableFuture.java:1771) 
~[?:1.8.0_192]
Aug 12 16:03:29 yo-pulsar-c1-n1 pulsar-broker[19142]:  at 
java.util.concurrent.CompletableFuture.get(CompletableFuture.java:1915) 
~[?:1.8.0_192]
Aug 12 16:03:29 yo-pulsar-c1-n1 pulsar-broker[19142]:  at 
org.apache.pulsar.broker.namespace.NamespaceService.getWebServiceUrl(NamespaceService.java:214)
 ~[org.apache.pulsar-pulsar-broker-2.7.0-SNAPSHOT.jar:2.7.0-SNAPSHOT]
Aug 12 16:03:29 yo-pulsar-c1-n1 pulsar-broker[19142]:  at 
org.apache.pulsar.broker.web.PulsarWebResource.validateTopicOwnership(PulsarWebResource.java:601)
 ~[org.apache.pulsar-pulsar-broker-2.7.0-SNAPSHOT.jar:2.7.0-SNAPSHOT]
Aug 12 16:03:29 yo-pulsar-c1-n1 pulsar-broker[19142]:  at 
org.apache.pulsar.broker.admin.impl.PersistentTopicsBase.internalGetStats(PersistentTopicsBase.java:894)
 ~[org.apache.pulsar-pulsar-broker-2.7.0-SNAPSHOT.jar:2.7.0-SNAPSHOT]
Aug 12 16:03:29 yo-pulsar-c1-n1 pulsar-broker[19142]:  at 
org.apache.pulsar.broker.admin.v2.PersistentTopics.getStats(PersistentTopics.java:496)
 ~[org.apache.pulsar-pulsar-broker-2.7.0-SNAPSHOT.jar:2.7.0-SNAPSHOT]
....```

----
2020-08-12 16:08:33 UTC - Alexandre DUVAL: (will investigate)
----
2020-08-12 16:11:36 UTC - Walter: what is the command to check bookkeeper 
corresponding zookeeper?
----
2020-08-12 16:25:15 UTC - Alexandre DUVAL: @Sijie Guo not sure how to 
investigate this exception, any idea?
----
2020-08-12 16:26:18 UTC - Alexandre DUVAL: 30s zk timeout is too low? seems 
weird
----
2020-08-12 16:48:19 UTC - Alexandre DUVAL: ```Aug 12 16:47:45 yo-pulsar-c1-n1 
pulsar-broker[19142]: 16:47:45.235 [pulsar-web-42-6] ERROR 
org.apache.pulsar.broker.web.PulsarWebResource - [broker-to-broker] Failed to 
check whether namespace bundle is owned 
yo/accesslogsinvalid/0x00000000_0x40000000
Aug 12 16:47:45 yo-pulsar-c1-n1 pulsar-broker[19142]: 
java.util.concurrent.TimeoutException: null
Aug 12 16:47:45 yo-pulsar-c1-n1 pulsar-broker[19142]:  at 
java.util.concurrent.CompletableFuture.timedGet(CompletableFuture.java:1771) 
~[?:1.8.0_192]
Aug 12 16:47:45 yo-pulsar-c1-n1 pulsar-broker[19142]:  at 
java.util.concurrent.CompletableFuture.get(CompletableFuture.java:1915) 
~[?:1.8.0_192]
Aug 12 16:47:45 yo-pulsar-c1-n1 pulsar-broker[19142]:  at 
org.apache.pulsar.broker.namespace.NamespaceService.getWebServiceUrl(NamespaceService.java:224)
 ~[org.apache.pulsar-pulsar-broker-2.7.0-SNAPSHOT.jar:2.7.0-SNAPSHOT]
Aug 12 16:47:45 yo-pulsar-c1-n1 pulsar-broker[19142]:  at 
org.apache.pulsar.broker.web.PulsarWebResource.isBundleOwnedByAnyBroker(PulsarWebResource.java:499)
 ~[org.apache.pulsar-pulsar-broker-2.7.0-SNAPSHOT.jar:2.7.0-SNAPSHOT]
Aug 12 16:47:45 yo-pulsar-c1-n1 pulsar-broker[19142]:  at 
org.apache.pulsar.broker.admin.v2.NonPersistentTopics.getListFromBundle(NonPersistentTopics.java:323)
 ~[org.apache.pulsar-pulsar-broker-2.7.0-SNAPSHOT.jar:2.7.0-SNAPSHOT]
Aug 12 16:47:45 yo-pulsar-c1-n1 pulsar-broker[19142]:  at 
sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_192]
Aug 12 16:47:45 yo-pulsar-c1-n1 pulsar-broker[19142]:  at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
~[?:1.8.0_192]
...```
----
2020-08-12 16:48:20 UTC - Alexandre DUVAL: related
----
2020-08-12 16:59:10 UTC - Yarden Arane: *FUNCTIONS*: logging
Hi all, when using the logger inside a Pulsar Function, I expect to see the log 
message in two places:
1. the log file (location determined by `pulsar/conf/functions_worker.yaml` )
```functionRuntimeFactoryConfigs:
    # location of log files for functions
    logDirectory: /tmp```
 for example, `/tmp/functions/public/default/function_name/function_name-0.log`
  2. the log topic of the function.

The Pulsar docs recommend to use `context.getLogger` , however I don't see the 
log message on the log topic when using the context's logger.
 I can, however, get the log message to appear on the log topic (and log file)  
if I don't use the context's logger as seen below. Any ideas why?
```import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class LoggingFunction implements Function&lt;String, Void&gt; {
    @Override
    public void apply(String input, Context context) {
        Logger LOG = context.getLogger();
        Logger LOG2 = LoggerFactory.getLogger(this.getClass);
        <http://LOG.info|LOG.info>("This message appears in log file only")
        <http://LOG2.info|LOG2.info>("This message appears in log file AND log 
topic")
    }
}```

----
2020-08-12 17:12:08 UTC - Alexandre DUVAL: it's limited to some topics only 
:confused:
----
2020-08-12 17:12:14 UTC - Alexandre DUVAL: i restarted brokers
----
2020-08-12 17:12:17 UTC - Alexandre DUVAL: same topics have issue
----
2020-08-12 18:43:21 UTC - vikash: Hi  All,  I  want  to  monitored apache  
pulsar  using  jmx  exporter  for  that  i  need  to  understand  how  we  will 
 connect  pulsar  standalone  with jmx Port  so  that  i  can analyse the  
Cpu,thread  ,processs  etc  ,i  could  not  able  to  find  any  doc  on this  
stuff
----
2020-08-12 19:49:07 UTC - Joshua Decosta: Does anyone know how I can add a 
custom configuration variable using the helm deployment to the proxy and 
broker? I keep trying to simply add it within their respective configmaps but 
it’s not taken once the broker/proxy is deployed 
----
2020-08-12 20:20:34 UTC - Joel Cressy: Are there any projects out there 
developing a web UI for tenants? Like, non-admin operations that give users 
(e.g. via SSO) access to control one or more tenants on pulsar clusters.
For example, <http://kesque.io|kesque.io> has a dashboard that lets you sign up 
and get a tenant on a cluster. In my scenario I'd love to deploy an interface 
like this to users within my own company where they sign in through our SSO and 
can provision tenants for their development teams.
----
2020-08-12 20:21:48 UTC - Joel Cressy: BTW this would be in a self-hosted 
environment, so no SaaS solutions.
----
2020-08-12 20:22:34 UTC - Addison Higham: @Joshua Decosta you can add 
additional entries to the helm chart with `{broker|proxy}.configData` property 
in the values. If you prefix the values with `PULSAR_PREFIX_` you can add 
values that aren't already in the config file
+1 : Joshua Decosta
----
2020-08-12 20:23:06 UTC - Addison Higham: have you seen 
<https://github.com/apache/pulsar-manager>?
----
2020-08-12 20:23:34 UTC - Addison Higham: it has pluggable authz/authn, which 
you would likely need to implement/change
----
2020-08-12 20:23:41 UTC - Addison Higham: but everything else should be there
----
2020-08-12 20:25:35 UTC - Joel Cressy: pulsar manager seems limited to cluster 
operators, no?
----
2020-08-12 20:30:17 UTC - Chris Bartholomew: Joel, we have a Beta version of 
the Kesque dashboard that can be self hosted in Kubernetes.
----
2020-08-12 20:32:22 UTC - Joel Cressy: Is this on github?
----
2020-08-12 20:32:51 UTC - Chris Bartholomew: No.
----
2020-08-12 20:33:10 UTC - Joel Cressy: Oh, is this a part of a product offering?
----
2020-08-12 20:33:47 UTC - Chris Bartholomew: Yes, we are making it available to 
our customers on certain plans.
----
2020-08-12 20:34:51 UTC - Addison Higham: @Joel Cressy I believer it also be 
usable for users as well, it is isn't super well documented at the moment and I 
am not sure on all the details, but it should be possible for users to only 
manage their tenants
----
2020-08-12 20:49:25 UTC - Addison Higham: @Nikola Socec 1 MB/s is not going to 
require too much hardware, a single pulsar standalone instance on my laptop 
(with 2 GB of heap) can easily sustain 50 MB/s. Your biggest factor is just 
going to be how much fault tolerance you want, with 2+ brokers, 3 bookies, and 
3 ZK nodes being the recommendation for really minimizing downtime. But each of 
those containers/VMs may only need 1 CPU and a gig or two of memory.
----
2020-08-12 20:50:02 UTC - Addison Higham: @Alexandre DUVAL how many topics are 
you working with?
----
2020-08-12 20:50:38 UTC - Addison Higham: but looks like it could be a ZK 
issue, using the zkcli or another ZK ui can you browse the data?
----
2020-08-12 20:51:11 UTC - Alexandre DUVAL: there is currently not a lot of 
topics, like ~100
----
2020-08-12 20:52:30 UTC - Addison Higham: @vikash The pulsar startup script 
doesn't really support setting all the JMX stuff for you, but you easily could 
add custom args for JMX. Pulsar leans pretty heavily on Prometheus and it is 
configured out of the box, and that can easily give you all those metrics
----
2020-08-12 20:53:49 UTC - Addison Higham: I think this is a bug, I ran into it 
a few months ago and I think I shared some details, but I am not sure they made 
it into an issue. If you don't see an issue, filing one would be really 
appreciated :slightly_smiling_face:
----
2020-08-12 20:54:13 UTC - Addison Higham: the fix should be fairly easy, but 
the tl;dr is that the way pulsar functions creates the context isn't correct
----
2020-08-12 21:09:59 UTC - Alexandre DUVAL: @Addison Higham i can browse data
----
2020-08-12 21:10:11 UTC - Alexandre DUVAL: but im currently not having the 
bundle issue anymore
----
2020-08-12 21:10:15 UTC - Alexandre DUVAL: i'm only having stuffs like
----
2020-08-12 21:10:42 UTC - Alexandre DUVAL: ```Aug 12 21:10:27 
clevercloud-pulsar-c1-n1 pulsar-broker[14970]: 21:10:27.409 [pulsar-web-42-7] 
ERROR org.apache.pulsar.broker.web.PulsarWebResource - Finding owner for topic 
<persistent://clevercloud/accesslogs/iadvize-adc-n3> timed out
Aug 12 21:10:27 clevercloud-pulsar-c1-n1 pulsar-broker[14970]: 
java.util.concurrent.TimeoutException: null
Aug 12 21:10:27 clevercloud-pulsar-c1-n1 pulsar-broker[14970]:  at 
java.util.concurrent.CompletableFuture.timedGet(CompletableFuture.java:1771) 
~[?:1.8.0_192]
Aug 12 21:10:27 clevercloud-pulsar-c1-n1 pulsar-broker[14970]:  at 
java.util.concurrent.CompletableFuture.get(CompletableFuture.java:1915) 
~[?:1.8.0_192]
Aug 12 21:10:27 clevercloud-pulsar-c1-n1 pulsar-broker[14970]:  at 
org.apache.pulsar.broker.namespace.NamespaceService.getWebServiceUrl(NamespaceService.java:214)
 ~[org.apache.pulsar-pulsar-broker-2.7.0-SNAPSHOT.jar:2.7.0-SNAPSHOT]
Aug 12 21:10:27 clevercloud-pulsar-c1-n1 pulsar-broker[14970]:  at 
org.apache.pulsar.broker.web.PulsarWebResource.validateTopicOwnership(PulsarWebResource.java:601)
 ~[org.apache.pulsar-pulsar-broker-2.7.0-SNAPSHOT.jar:2.7.0-SNAPSHOT]
Aug 12 21:10:27 clevercloud-pulsar-c1-n1 pulsar-broker[14970]:  at 
org.apache.pulsar.broker.admin.impl.PersistentTopicsBase.internalGetStats(PersistentTopicsBase.java:894)
 ~[org.apache.pulsar-pulsar-broker-2.7.0-SNAPSHOT.jar:2.7.0-SNAPSHOT]
Aug 12 21:10:27 clevercloud-pulsar-c1-n1 pulsar-broker[14970]:  at 
org.apache.pulsar.broker.admin.v2.PersistentTopics.getStats(PersistentTopics.java:496)
 ~[org.apache.pulsar-pulsar-broker-2.7.0-SNAPSHOT.jar:2.7.0-SNAPSHOT]
Aug 12 21:10:27 clevercloud-pulsar-c1-n1 pulsar-broker[14970]:  at 
sun.reflect.GeneratedMethodAccessor11.invoke(Unknown Source) ~[?:?]
Aug 12 21:10:27 clevercloud-pulsar-c1-n1 pulsar-broker[14970]:  at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 ~[?:1.8.0_192]
Aug 12 21:10:27 clevercloud-pulsar-c1-n1 pulsar-broker[14970]:  at 
java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_192]```
----
2020-08-12 21:11:15 UTC - Yarden Arane: Thanks Addison, will do.
----
2020-08-12 21:12:32 UTC - Alexandre DUVAL: and I just restarted one broker and 
everything now works fine
----
2020-08-12 21:12:41 UTC - Alexandre DUVAL: seems consistencies issue
----
2020-08-12 21:12:46 UTC - Alexandre DUVAL: weird..
----
2020-08-12 21:13:09 UTC - Alexandre DUVAL: this is not the first time it happens
----
2020-08-12 21:13:16 UTC - Alexandre DUVAL: i really don't know how to debug/fix 
that
----
2020-08-12 21:15:47 UTC - Alexandre DUVAL: it seems to be problem on broker zk 
cache or something which is not "fresh"
----
2020-08-12 21:16:03 UTC - Alexandre DUVAL: maybe i need tweak some broker 
configuration fields
----
2020-08-12 21:16:04 UTC - Alexandre DUVAL: dunno
----
2020-08-12 21:16:29 UTC - Alexandre DUVAL: @Sijie Guo FYI^
----
2020-08-12 21:20:06 UTC - Alexandre DUVAL: what value do you have for
```# ZooKeeper cache expiry time in seconds
zooKeeperCacheExpirySeconds=300?```
----
2020-08-12 21:32:34 UTC - Evan Furman: Hi! I’m trying to use the grafana dash 
here for our ec2 deployment. When running the generate_dashboards.sh script, it 
prompts me for the loki datasource. Is this required to use the dashboard? We 
are using prometheus. 
<https://github.com/streamnative/apache-pulsar-grafana-dashboard>
----
2020-08-12 21:44:06 UTC - Sijie Guo: @Joel Cressy In Pulsar Manager 0.2.0, we 
are introducing the Users concept. The goal for Pulsar Manager is to make it a 
self-serve portal for the developers using Pulsar.
----
2020-08-12 21:45:00 UTC - Sijie Guo: loki datasource is not required.
heart : Evan Furman
----
2020-08-12 21:46:38 UTC - Sijie Guo: I am not sure it is a zookeeper issue. It 
sounds like hitting an issue I fixed in master (which will be released in 
2.6.1).
----
2020-08-12 21:48:38 UTC - Sijie Guo: check this issue 
<https://github.com/apache/pulsar/pull/7319>
----
2020-08-12 21:51:05 UTC - Sijie Guo: Do you have an application to reproduce 
your issue?
----
2020-08-12 22:10:07 UTC - Alexandre DUVAL: I get the error on calling /stats on 
topic
----
2020-08-12 22:11:10 UTC - Sijie Guo: So it most likely stuck at loading a topic
----
2020-08-12 22:11:46 UTC - Alexandre DUVAL: yes, and a restart can rely on this?
----
2020-08-12 22:11:49 UTC - Alexandre DUVAL: (of broker)
----
2020-08-12 22:14:14 UTC - Sijie Guo: yes
----
2020-08-12 22:15:56 UTC - Sijie Guo: If you want to try that fix before the 
official release is cut, you can try 
<https://github.com/streamnative/pulsar/tree/v2.6.0-sn-12>
----
2020-08-12 22:49:25 UTC - Naby: @Naby has joined the channel
----
2020-08-12 23:55:36 UTC - Kirill Kosenko: Hello guys
I need to publish events with different AVRO schemas to the same topic to keep 
ordering.
For example: UserCreatedEvent, UserAddressChangedEvent
Unfortunately, Pulsar doesn't support multischema topics at the moment. AFAIK, 
there's work in progress.
Could someone point me on how to achieve that if it's possible.
Any help is appreciated.
Thanks
----
2020-08-13 00:15:19 UTC - Penghui Li: Hi @Kirill Kosenko Pulsar already support 
multiple schemas in a topic. Maybe 
<http://pulsar.apache.org/docs/en/schema-evolution-compatibility/> can help you 
to understand multiple schemas.

If you want to set multiple schemas for a topic and there are no compatibility 
requirements between schemas, you can set the schema compatibility policy to 
`ALWAYS_COMPATIBLE`. And when you consume messages, you can use `AUTO_CONSUME`  
for the consumer. So that you can get a `GenericRecord` which is a generalized 
structure.
----
2020-08-13 00:40:36 UTC - Kirill Kosenko: Thank you for a quick reply. I missed 
this approach
----
2020-08-13 00:52:22 UTC - Evan Furman: Thank you @Sijie Guo 
----
2020-08-13 03:08:16 UTC - Alexandre DUVAL: will do it!
----
2020-08-13 03:41:15 UTC - xue: When function is created, if there are 100 
concurrent functions, the CPU of the functions worker node will rise 
rapidly,The functions worker cluster has 7 nodes.
----
2020-08-13 06:51:41 UTC - markg: thank you!
----
2020-08-13 06:52:20 UTC - markg: Will read though - I have not had a chance to 
look here since asking the question but truly appreciate the links and response!
----
2020-08-13 07:49:39 UTC - Seun: Hi folks,

Can anyone please help me with beginner level tutorials on how to run pulsars 
on GKE on google cloud. And have it listen to several microservices running on 
another GKE cluster? Is it advisable to run both within the same cluster or 
separate clusters? I need to get on quickly with Apache pulsar of k8s project.

All my google searches have led me to inadequate or some advance concepts and 
they require enormous GKE resources for deployment.
----
2020-08-13 08:23:33 UTC - Nikola Socec: Thank you very much.
----
2020-08-13 08:53:44 UTC - Christophe Bornet: Hi, in the Java client, when 
`maxPendingMessages` is reached, the calls to send() and sendAsync() will 
either throw an error or block depending on `BlockIfQueueFull` . This is a push 
mode. I think it would also be interesting to have a pull mode with an observer 
pattern where the driver requests new messages to the application. Kind of like 
the gRPC-java driver does it. This would help dealing with back-pressure when 
working async and to bind the driver with reactive frameworks (rxJava, Reactor, 
...). WDYT ?
----

Reply via email to