Details
-
Improvement
-
Status: Open
-
Major
-
Resolution: Unresolved
-
None
-
None
-
java9
Description
I am tring to run BookKeeper on Java9, a part from simple issues:
- exclude the transitive dependency to jdk.tools in bookkeeer-benchmarks
- fix a warning due to the fact the Class.forName in java9 is deprecated and we are running javac with the "Werror" option (warning = error)
we have a real stopper, in fact we want to access the low level ID of FileDescriptors using the reflaction and by default this is not allowed.
This is the error:
java.lang.AssertionError at org.apache.bookkeeper.util.NativeIO.getFieldByReflection(NativeIO.java:63) at org.apache.bookkeeper.util.NativeIO.getSysFileDescriptor(NativeIO.java:75) at org.apache.bookkeeper.bookie.JournalChannel.<init>(JournalChannel.java:218) at org.apache.bookkeeper.bookie.JournalChannel.<init>(JournalChannel.java:97) at org.apache.bookkeeper.bookie.JournalChannel.<init>(JournalChannel.java:86) at org.apache.bookkeeper.bookie.UpgradeTest.writeJournal(UpgradeTest.java:83) at org.apache.bookkeeper.bookie.UpgradeTest.newV1JournalDirectory(UpgradeTest.java:114) at org.apache.bookkeeper.bookie.UpgradeTest.testUpgradeV1toCurrent(UpgradeTest.java:192)
Attachments
Issue Links
- depends upon
-
BOOKKEEPER-816 use native fallocate & sync_file_range to improve journal allocation
- Patch Available