2020-02-24 11:03:45 UTC - Konstantinos Papalias: Thanks for sharing your
experiences @Devin G. Bost looking forward for the sample project and the Jira
to track discussions like this
----
2020-02-24 11:38:52 UTC - Lewey: I have an issue where i have 6 consumers
connecting to a partitioned topic with 18 partitions, however, the consumers
only seem to be consuming from odd numbered partitions
----
2020-02-24 11:42:55 UTC - Vladimir Shchur: Hi! A question about configuration,
should broker.conf configuration be synchronized between broker and bookeeper?
I want to increase maxMessageSize, but increasing it just for broker (in helm
k8s chart) doesn't change broker.conf for bookeeper pod and I have to use
nettyMaxFrameSizeBytes to make it work. 2.5.0
----
2020-02-24 11:47:06 UTC - Roman Popenov: And just to add to that, I have set
`maxMessageSize` only, and it did seem to be picked up by the system, but I
also saw some exceptions like:
```13:30:42.559 [bookie-io-1-1] ERROR
org.apache.bookkeeper.proto.BookieRequestHandler - Unhandled exception occurred
in I/O thread or handler
io.netty.handler.codec.TooLongFrameException: Adjusted frame length exceeds
5242880: 5313378 - discarded
at
io.netty.handler.codec.LengthFieldBasedFrameDecoder.fail(LengthFieldBasedFrameDecoder.java:513)
~[io.netty-netty-codec-4.1.43.Final.jar:4.1.43.Final]```
----
2020-02-24 11:50:00 UTC - Roman Popenov: And then without setting
`nettyMaxFrameSizeBytes` anywhere in the config, I was able to exchange
messages of roughly 40 MBs in size. Is it possible that my `maxMessageSize` is
picked up, but there is some overhead that is passed along with the message and
when the limit is hit, the error message is generic?
----
2020-02-24 11:50:11 UTC - Roman Popenov:
<https://github.com/apache/pulsar/issues/3832>
----
2020-02-24 12:04:08 UTC - Rattanjot Singh: Any wiki to deploy pulsar on
multi-cluster using kubernetes on aws?
----
2020-02-24 12:06:07 UTC - Roman Popenov: I think helm install should work
----
2020-02-24 12:06:26 UTC - Roman Popenov: If you already have set-up your
kuberentes cluster
----
2020-02-24 12:07:22 UTC - Roman Popenov: Or do you mean across multiple AZs?
----
2020-02-24 12:07:39 UTC - Roman Popenov: If it’s not one single cluster, then
no, there are no docs for that
----
2020-02-24 12:07:43 UTC - Rattanjot Singh: I want it in east and west
----
2020-02-24 12:08:32 UTC - Roman Popenov: I think you would have to piece things
from
<http://pulsar.apache.org/docs/en/deploy-bare-metal-multi-cluster/>
----
2020-02-24 12:09:22 UTC - Rattanjot Singh: So there is no end to end wiki for
kubernetes
----
2020-02-24 12:10:25 UTC - Roman Popenov: Not that I am aware of. I think it’s
possible to piece things from that doc
----
2020-02-24 12:38:05 UTC - Pavel Tishkevich: Hi All,
I’ve noticed that when one of three brokers fails, unloading topics from failed
broker may take approximately 1 to 5 minutes depending on number of topics.
Also I’ve noticed that during unloading sending messages to the topics that are
served by alive brokers is also very slow - approaches timeout.
- Is there a way to decrease duration of topics unloading? Maybe by adding more
brokers? We have approximately 200000 short-living topics on average.
- Why sending messages to the topics that are on alive brokers is so slow
during unloading? Is there a way to improve this?
Thanks in advance!
----
2020-02-24 14:13:04 UTC - Steve Kim: done
<https://github.com/apache/pulsar/issues/6410>
----
2020-02-24 15:09:18 UTC - Manuel Mueller: thanks for all the answers! I think
it would be nice if the feature would be marked “dev-preview” to not loose too
much time with it in case one is aiming to have this in production. I will
replicate it and file and issue with the proper logs
----
2020-02-24 15:32:25 UTC - Devin G. Bost: Function state currently is marked
“developer preview” :slightly_smiling_face:
----
2020-02-24 15:49:13 UTC - Rolf Arne Corneliussen: @Sijie Guo Thanks for the
information. I have done some test (still on Windows 10), and it seems the
timer wheel thread will use 100% of a hyperthread. When running 8 consumers on
a i7-8700 (4 cores 2 threads per core), TaskManager reported 100% CPU usage -
when there was no traffic, no messages on the topics.
I have written a simple test program, creating a `HashedWheelTimer` with 1
millisecond tick time, then adding a simple timer task that schedules itself
when it times out, every 500 millisecond, and the CPU load is the same as
running an idle Pulsar consumer.
My understanding of the `HashedWheelTimer` is that it is indented to be used
for a large number of approximated timeouts and not for millisecond precision
scheduling, but I may be mistaken.
Anyway, I tried using a `java.util.concurrent.ScheduledExecutorService`,
scheduling 1000 tasks at fixed interval 1 milliseconds, and that was lighter on
the CPU than the timer wheel with 1 millisecond tick time.
Should I raise an github issue on this?
----
2020-02-24 16:08:51 UTC - Sijie Guo: Yeah please create a GitHub issue.
----
2020-02-24 16:17:38 UTC - Joshua Dunham: Hey Everyone, Is commercial support
offered for Pulsar/Bookkeeper? Can someone make a reccomendiation?
----
2020-02-24 16:18:01 UTC - Devin G. Bost: Please reach out to @Sijie Guo at
StreamNative. He can help you out!
----
2020-02-24 16:18:24 UTC - Joshua Dunham: Nice, thx!
----
2020-02-24 16:30:51 UTC - Tanner Nilsson: @Chris Bartholomew and
<http://kafkaesque.io|kafkaesque.io> have been great for us!
----
2020-02-24 16:50:27 UTC - Sijie Guo: @Joshua Dunham yes. we offer different
type of services (developer support, managed service support, and etc) for
pulsar and bookkeeper.
----
2020-02-24 16:53:28 UTC - Sijie Guo: MaxMessageSize requires configuring two
places, one in broker `maxMessageSize` and the other one is
`nettyMaxFrameSizeBytes`.
----
2020-02-24 16:55:54 UTC - Sijie Guo: `nettyMaxFrameSizeBytes` is also needed to
be set on bookie side.
+1 : Roman Popenov
----
2020-02-24 16:58:40 UTC - Sijie Guo: unloading is closing the topics of that
bundle. and open those topics when loading the bundle. closing the topics
requires metadata updates. If you have many topics within a bundle, it takes
time. You can consider increasing the number of bundles.
----
2020-02-24 17:07:14 UTC - Vladimir Shchur: Thank you for the confirmation, but
these lines tell us that it should be taken from broker config, are they
eventually ignored?
<https://github.com/apache/pulsar/blob/master/pulsar-broker/src/main/java/org/apache/pulsar/broker/BookKeeperClientFactoryImpl.java#L106>
----
2020-02-24 17:13:14 UTC - Charmaine Keck: @Charmaine Keck has joined the channel
----
2020-02-24 17:16:05 UTC - Sijie Guo: there are two settings
----
2020-02-24 17:16:19 UTC - Sijie Guo: one in the client, the other one is the
bookie
----
2020-02-24 17:16:51 UTC - Sijie Guo: the client one is taken from the broker
configuration, and the server-side one is here:
<https://github.com/apache/bookkeeper/blob/master/conf/bk_server.conf#L201>
----
2020-02-24 17:20:39 UTC - Pavel Tishkevich: We have 4 namespaces each having
1024 bundles. So I believe when 1 of 3 brokers fails, around 1300 bundles need
to be unloaded and acquired by remaining 2 brokers.
This still proves to be quite slow and two issues described above occur.
Maybe something else may help here?
----
2020-02-24 17:27:02 UTC - Sijie Guo: Oh I see. If you only have 3 brokers, it
means if one broker down, about 70k topics are impacted. It will take some time
to get those 70k re-owned by the other two brokers.
----
2020-02-24 17:28:32 UTC - Sijie Guo: Currently there is no good way to get
around this. For a short-term solution, it is to increase the number of
brokers, so each broker owns less topics. For a long-term solution, it is for
the committers and contributors to figure out a solution to support this use
case.
----
2020-02-24 17:35:53 UTC - Sree Vaddi: It’s happening tonight. I look forward to
seeing you all.
Out of area can participate now using online link. (Will be shared before the
meeting starts.) .
<https://www.meetup.com/Apache-Heron-Bay-Area/events/nglzdrybcdbwb/>
----
2020-02-24 17:53:01 UTC - Vladimir Shchur: I see, much clearer now, thank you!
----
2020-02-24 17:54:35 UTC - RAMG: @RAMG has joined the channel
----
2020-02-24 17:55:16 UTC - Pavel Tishkevich: Thanks a lot!
----
2020-02-24 18:45:11 UTC - Kirill Podkov: [Functions Question] :wave: We've
deployed a Python function that consumes an input topic, in which the messages
contain a partition_key, however this key is not passed to the messages within
the output topic. Is this intended? We're using the default Identity SerDe, and
the function simply returns the input under certain conditions without any
custom classes.
----
2020-02-24 18:56:05 UTC - Sijie Guo: Yes by default it doesn’t pass properties
from source message to output topic. There is a new flag added to java
functions to do so. But the python function is not supported yet.
heavy_check_mark : Kirill Podkov
cry : Manuel Mueller
----
2020-02-24 19:14:42 UTC - Kiran Chitturi: @Kiran Chitturi has joined the channel
----
2020-02-24 20:10:35 UTC - Alexander Ursu: Hi, any tips on getting a Pulsar
cluster set up with Docker, looking for something more resilient than the
standalone version.
----
2020-02-24 20:28:44 UTC - Greg Gallagher: @Alexander Ursu - are you using
Docker compose, or...?
----
2020-02-24 20:28:54 UTC - Alexander Ursu: Docker Swarm
----
2020-02-24 20:30:10 UTC - Greg Gallagher: I'm trying to do something similar
for a POC of Pulsar, but to be honest I threw Docker under the bus and am just
doing onto VM. There doesn't seem to be explicit instructions on this yet, and
there's an issue opened:
----
2020-02-24 20:30:38 UTC - Greg Gallagher:
<https://github.com/apache/pulsar/issues/5401>
----
2020-02-24 20:30:51 UTC - Greg Gallagher: (I'm not a Pulsar developer, I just
joined this Slack yesterday)
----
2020-02-24 20:30:59 UTC - Greg Gallagher: Worth noting, here is how I was going
to go about this:
----
2020-02-24 20:31:17 UTC - Greg Gallagher: 1. git clone
<https://github.com/apache/pulsar>
----
2020-02-24 20:32:47 UTC - Greg Gallagher: 2. check under the
deployment/kubernetes/generic/original directory the yml files which would be
used if you deployed under Kubernets. That'll give you the environment
variables (top section, ConfigMap stuff)
----
2020-02-24 20:34:11 UTC - Greg Gallagher: 3. create a stack.yml which mimic's
this file. I haven't used Swarm in years and frankly wouldn't suggest it, but
you're not asking for advice on this front so I'll hold back. We use
Kubernetes which is hideously complicated to run on-prem in baremetal
environment. If I could do it all over again I'd really suggest looking at
Hashicorp Nomad
----
2020-02-24 20:34:14 UTC - Greg Gallagher: hope that's helpful!
----
2020-02-24 20:40:09 UTC - Alexander Ursu: Thanks, will look into it, been
trying to decipher a lot of it myself recently and make yml files for swarm
stacks. Currently sticking to Swarm because I'm in a small team and k8s seems
overkill at the moment. However, Nomad has been on my radar for a bit and it
seems interesting
----
2020-02-24 20:43:19 UTC - Greg Gallagher: Yeah, Nomad also lacks documentation
coverage of how to properly setup a cluster, step-by-step. Everyone seems to
have two modes for documentation: "run this -dev standalone thing" or "figure
it out on your own" :confused: Took me a few hours this past Saturday to
figure out how to create a Nomad cluster using Consul and Nomad. Wasn't
anything close to learning curve of k8s, and you definitely should consider
size of team when determining direction on what to manage. Unfortunately my
developers beat me into a corner when I started and demanded k8s from the
start. Wish I knew what I know now to tell them "nah" but at the time it seemed
like what everyone was doing. k8s in the cloud is far, far better than running
on prem I would suggest. Good luck!
----
2020-02-25 04:23:15 UTC - Justin Grimes: @Justin Grimes has joined the channel
----
2020-02-25 04:52:52 UTC - vanchhay: I've been wondering, "MessageId.latest"
does this field refer to the latest_message in the topic?
----
2020-02-25 04:55:08 UTC - Sijie Guo: No it doesn’t
----
2020-02-25 05:07:16 UTC - Rattanjot Singh: Has anyone deployed pulsar in east
and west region using kubernetes?
----
2020-02-25 05:52:48 UTC - Greg Gallagher: Basic question: I have a local
(baremetal) cluster running 4 bookkeeper nodes and 4 broker nodes (separate
VMs). In conf/broker.conf what is the right number to set for
managedLedgerDefaultEnsembleSize and managedLedgerDefaultWriteQuorum and
managedLedgerDefaultAckQuorum ? The user guide for baremetal
(<https://pulsar.apache.org/docs/en/deploy-bare-metal/>) says "1" for these
values, which doesn't make sense since the example configuration is similar to
what I'm listing. Should it be number of bookies - 1? Like:
```# Number of bookies to use when creating a ledger
managedLedgerDefaultEnsembleSize=3
# Number of copies to store for each message
managedLedgerDefaultWriteQuorum=3
# Number of guaranteed copies (acks to wait before write is complete)
managedLedgerDefaultAckQuorum=3```
----
2020-02-25 05:55:18 UTC - Sijie Guo: I think the guide says if you are
deploying a one-node cluster, you need to change those settings to 1. Otherwise
the default values are good enough for most of the use cases.
----
2020-02-25 05:56:41 UTC - Greg Gallagher: it does say 1, yes, but I'm deploying
a 4 node cluster (4 bookies, 4 brokers) ... is it still 1? thanks!
----
2020-02-25 06:14:54 UTC - Greg Gallagher: n/m I see I'm asking a complicated
question and need to carefully read this:
----
2020-02-25 06:14:55 UTC - Greg Gallagher:
<https://bookkeeper.apache.org/docs/4.10.0/development/protocol/#ensembles>
----
2020-02-25 07:23:41 UTC - Sijie Guo: ensemble size is how many bookies used for
storing a ledger, write quorum size is how many copies for storing an entry,
ack quorum size is how many responses to wait for confirming write success. So
most of the time you can just stick to 2/2/2 (which is the default setting), if
you wanna higher guarantees you can use 3/3/2.
But if you have number of nodes less than your required replications settings
(for example, if you have one-node), then have you to set it to 1/1/1.
Otherwise you are not able to create ledgers since you don’t have enough
bookies.
I wrote an article before. You can check it out to understand what do those
settings mean in bookkeeper replication.
<https://streaml.io/blog/why-apache-bookkeeper>
----
2020-02-25 08:14:26 UTC - xue: pulsar 2.5.0,start broker
----