This is the second Apache release of DistributedLog and the first release as a sub-project of Apache BookKeeper!
The 0.5.0 release upgrades BookKeeper from Twitter 4.3.7-TWTTR-OSS
version to the official Apache 4.5.0
version. It is a big milestone in Apache BookKeeper & DistributedLog community, converging the development efforts for both communities and moving the DistributedLog development on the official Apache bookkeeper release.
Apache DistributedLog users are encouraged to upgrade to 0.5.0. The technical details of this release are summarized below.
The main change in 0.5.0 is BookKeeper version upgrade. We upgraded the BookKeeper version from Twitter‘s 4.3.7-TWTTR-OSS
to the official Apache BookKeeper 4.5.0
version. This upgrade brings in BookKeeper security feature and performance improvement (such as netty 4 upgrade). The upgrade should be straightforward, because there isn’t any backward compatible issue.
Prior to 0.5.0, the DistributedLog API heavily depends on Twitter Future library and other scala dependency. In 0.5.0, we change the twitter future API to a separate module and replace the core API with Java8 CompletableFuture. It reduces the dependencies introduced by Scala and also avoid maintaining multiple versions for different scala versions.
After upgrading to BookKeeper 4.5.0, we update the buffer and memory management in DistributedLog to leverage netty's buffer management. It reduces object allocation, memory copies and improves the latency because less jvm garbage is produced.
####Sub-task
####Bug
####Improvement
####Task