Hi Pulsar Community,

Here are the meeting notes from today's community meeting. We had some
great discussions. I expect many of them will continue on the mailing
list in the coming weeks.

Disclaimer: I am the primary author of these notes. I took the notes
while participating in the meeting discussions. It is possible that I
missed or misunderstood information. If something is misattributed or
misrepresented, please send a correction to this list and consider
updating the Google doc.

Source google doc:
https://docs.google.com/document/d/19dXkVXeU2q_nHmkG8zURjKnYlvD96TbKf5KjYyASsOE

Thanks,
Michael

2022/03/31, (8:30 AM PST)
-   Attendees:
-   Matteo Merli
-   Aaron Williams
-   Christophe Bornet
-   Lari Hotari
-   Chris Bartholomew
-   Enrico Olivelli
-   Andrey Yegorov
-   Michael Marshall
-   Massimiliano Mirelli
-   Dave Fisher
-   Bharani Chadalavada
-   Nicolò Boschi

-   Discussions

-   Andrey: BK 4.15.0 RC0 vote is out, pulsar code changes will be needed
--   Matteo: should we shoot for 4.15 or 4.14.5 for Pulsar 2.11.
Andrey says 4.14.5 will be easier. Andrey says it would be helpful to
post on both pulsar and bookkeeper mailing lists to get community
consensus. Nicolò says he will send the email.
--   Brief discussion about bookkeeper build maven vs gradle (Matteo and Andrey)

-   Lari: describes the recent CI updates. There is one optimization
to ensure that the GitHub account doesn’t store too much data in Azure
Cloud. There is also caching of 10 GB per repo (apache/pulsar), but it
is an LRU cache, so it wouldn’t work well for all of our concurrent
builds. We only cache the maven dependencies. Other artifacts are
stored in Azure Blob Storage. Lari has found several issues since
merging the original changes. Lari identified a runtime issue with
certain versions of bookkeeper because of Rocks DB incompatibility
(runtime errors are something like “missing method” or “no such
method”).

-   Matteo: discussing RocksDB version nuances and making sure Pulsar
Standalone works on Arm machines (particularly MacOS). Part of the
question is whether or not we can do a major upgrade of RocksDB in a
minor or patch release of Bookkeeper. Andrey asked whether or not we
could upgrade RocksDB on older versions. Matteo thinks we shouldn’t
upgrade RocksDB in existing stable versions of Pulsar (2.8 to 2.10).
Andrey asks about users running with Arm and wanting to test out old
versions, and Matteo mentioned that he would prefer not to introduce a
possible regression in the production just to get it to work on MacOS.
Andrey agreed.

-   Discuss moving Pulsar to gradle. Andrey expresses that the
bookkeeper work has been hard to troubleshoot. Lari is happy to help,
as a former gradle employee. Matteo details several of the reasons
that a transition to gradle would be hard, but definitely not
impossible. One such issue is the gradle nar nifi plugin. Lari
mentions that he is now the maintainer of the plugin
https://github.com/lhotari/gradle-nar-plugin. Further discussion would
happen on the mailing list.

-   Michael: what is the advantage of moving to gradle? Matteo:
caching is much better, so incremental builds are faster. It would
improve developer experience. Lari: you should never use clean when
running with gradle. It basically means something is wrong in your
build. Matteo: clean in gradle still intelligently relies on a build
cache.

-   Lari: Pulsar SQL. Asks about upgrading to Presto 334 to get it
building correctly in the new CI. This would require that we run for
Java 11. Matteo: should we upgrade minimum requirement to Java 11 or
Java 17 for new releases (starting with 2.11). Lari mentions that
Nicolò has already been working on moving to Java 17. Matteo thinks
that we should upgrade server side to JVM 17. Michael: Because we’d
also build the client with Java 17, should we still test the Java
client against older JVM versions to check for compatibility? Matteo
and Lari: we can add a test to do different runtime integration tests.
Lari: we could possibly refactor tests to make it easy to run the same
client/server tests with different JVM versions.

-   Michael: I will push along the release process discussion on the
mailing list. Matteo: yes, please do that.

-   Michael: what is the specific reason that a Pulsar build would
pick up “bad” jars for bookkeeper? Matteo: the bookkeeper build has
native libraries that it uses for performance optimizations to run on
linux, so if a user built the bookkeeper project, they would have the
native MacOS deps. Lari: we could tell maven to use a different cache
(not the ~/.m2 repo) cache to ensure that all dependencies are
downloaded fresh and concurrent work on the machine would not affect
the build. Michael to add that as a recommendation to the release
process wiki page.

-   Dave: CFP is open for ApacheCon, and there is a Pulsar track that
is open for tentatively 2 days.

Reply via email to