Chris Vest
dc281c704c
Buffers always have a cleaner attached
Motivation: Although having a cleaner attached adds a bit of overhead when allocating or closing buffers, it is more important to make our systems, libraries and frameworks misuse resistant and safe by default. Modification: Remove the ability to allocate a buffer that does not have a cleaner attached. Reference counting and the ability to explicitly release memory remains. This just makes sure that we always have a safety net to fall back on. Result: This will make systems less prone to crashes through running out of memory, native or otherwise, even in the face of true memory leaks. (Leaks through retained strong references cannot be fixed in any way)
Netty Incubator Buffer API
This repository is incubating a new buffer API proposed for Netty 5.
Building and Testing
Short version: just run make
.
The project currently relies on snapshot versions of the Panama Foreign fork of OpenJDK.
This allows us to test out the must recent version of the jdk.incubator.foreign
APIs, but also make building and local development more involved.
To simplify things, we have a Docker based build, controlled via a Makefile with the following commands:
image
– build the docker image. This includes building a snapshot of OpenJDK, and download all relevant Maven dependencies.test
– run all tests in a docker container. This impliesimage
. The container is automatically deleted afterwards.dbg
– drop into a shell in the build container, without running the build itself. The debugging container is not deleted afterwards.clean
– remote the debugging container created bydbg
.build
– build binaries and run all tests in a container, and copy thetarget
directory out of the container afterwards. This is the default build target.
Description
Languages
Java
99.6%
Dockerfile
0.2%
Makefile
0.2%