Il giorno mar 10 nov 2020 alle ore 11:09 Ivan Kelly <iv...@apache.org> ha
scritto:

> Hi folks,
>
> It's been about a year since Streamlio joined Splunk and since then
> we've had a bit of forking with our BK branch.
> It has gotten to a stage where it's starting to be a problem for us,
> so we'd like to start to get things back in sync.
>
> There are a couple of big chunks of work to come back.
> We've added a data integrity checker that replaces a lot of the
> functionality of autorecovery and allows us to run without a journal.
> We refactored the bookie to allow dependency injection.
> We've rewritten the entry logger to use direct I/O (allowing 2GBps
> writes per bookie).
>

Cool, eager to see those changes in ASF BK


>
> One other thing we've done is to change the build system to use gradle.
> The major driver for this was that maven is just slow, even before you
> start running tests.
> "mvn clean package -DskipTests" takes 4m30 on my laptop. "./gradlew
> clean jar" takes 40s.
> Subsequent builds on gradle are much much faster, as it does
> incremental building.
> Incremental building exists in maven, but it doesn't work.
> Gradle also handle multimodule projects better. If I make a change in
> bookkeeper-common,
> "./gradlew :bookkeeper-server:test" will pick up the change without
> having to explicitly
> "mvn install" the bookkeeper-common. In my opinion it's just a much
> nicer build system
> to work with. Even the poms it generates are better as they avoid
> dependency pollution.
>

I am not a big fan of Gradle, but I don't want to start a battle. There are
pros and cons.
To me it is a matter of taste, both of the two worlds are pretty widespread.
Personally I have experienced the move of some projects from Maven to
Gradle with a little bit of pain,
but as said I am not against a change.

Usually changing the build system is problematic for:
- existing contributors/committers
- forked repositories

If you have time and resources to drive the change and to help the
community to understand how to work with Gradle I am happy to accept it.
I will be also a good change to reduce some tech debt, when you rewrite the
build system/configuration you can decide to chop useless stuff that you
aren't dropping because it is better to not fix things that aren't broken
So +1, a BP is a good starting point please


> What are peoples opinions on moving BookKeeper to gradle (assuming
> I/splunk do the legwork)?
> If people are open to it, I'll submit a BP.
>
> Another thing that BK (and the whole ecosystem) is missing is
> structured logging.
> We also plan to add structured logging to BK in soon. This is a major
> motivator for converging the branches,
> as it touches a lot of places.
>

+1


> Anyhow, any feedback appreciated.
>

I am happy that the community can start to work together again as a whole

Enrico


>
> -Ivan
>

Reply via email to