Re: ScyllaDB on OSv?
On Fri, Aug 12, 2016 at 3:26 PM, Roman Shaposhnikwrote: > On Fri, Aug 12, 2016 at 10:33 AM, Avi Kivity wrote: > > On 08/12/2016 08:23 PM, Waldek Kozaczuk wrote: > >> > >> Given that ScyllaDB uses seastar that can run on OSv is it possible to > run > >> ScyllaDB on OSv? I have not found anything on scyllaDB site ? > >> > >> If no are there any plans do make it possible? If yes would there be any > >> advantage of running scylladb on top of OSV performance-wise? > > > > > > Right now OSv lacks a good aio-enabled filesystem. ZFS is designed to > > provide clever caching and file management tools (ARC, snapshots) while > > ScyllaDB wants to do its own caching and DMA file data directly from disk > > using AIO. > > What's your recommended FS on Linux? > XFS. We don't technically support any of the others. In reality, you can run anywhere that io_submit and friends are available, but you will not get good performance out of it. > > Thanks, > Roman. > > -- > You received this message because you are subscribed to the Google Groups > "OSv Development" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to osv-dev+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "OSv Development" group. To unsubscribe from this group and stop receiving emails from it, send an email to osv-dev+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: ScyllaDB on OSv?
On Fri, Aug 12, 2016 at 10:33 AM, Avi Kivitywrote: > On 08/12/2016 08:23 PM, Waldek Kozaczuk wrote: >> >> Given that ScyllaDB uses seastar that can run on OSv is it possible to run >> ScyllaDB on OSv? I have not found anything on scyllaDB site ? >> >> If no are there any plans do make it possible? If yes would there be any >> advantage of running scylladb on top of OSV performance-wise? > > > Right now OSv lacks a good aio-enabled filesystem. ZFS is designed to > provide clever caching and file management tools (ARC, snapshots) while > ScyllaDB wants to do its own caching and DMA file data directly from disk > using AIO. What's your recommended FS on Linux? Thanks, Roman. -- You received this message because you are subscribed to the Google Groups "OSv Development" group. To unsubscribe from this group and stop receiving emails from it, send an email to osv-dev+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: ScyllaDB on OSv?
On 08/12/2016 08:23 PM, Waldek Kozaczuk wrote: Given that ScyllaDB uses seastar that can run on OSv is it possible to run ScyllaDB on OSv? I have not found anything on scyllaDB site ? If no are there any plans do make it possible? If yes would there be any advantage of running scylladb on top of OSV performance-wise? Right now OSv lacks a good aio-enabled filesystem. ZFS is designed to provide clever caching and file management tools (ARC, snapshots) while ScyllaDB wants to do its own caching and DMA file data directly from disk using AIO. Given a good asynchronous filesystem, a port of seastar/scylladb to OSv could deliver great results, as the costs of doing I/O would decrease. We'd also want to run OSv on bare metal for this, not just on virtualized environments. With DPDK driving networking, and with storage using standardized NVMe and AHCI interfaces, this is not so hard. There are no plans to do this in the near future, though. -- You received this message because you are subscribed to the Google Groups "OSv Development" group. To unsubscribe from this group and stop receiving emails from it, send an email to osv-dev+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
ScyllaDB on OSv?
Given that ScyllaDB uses seastar that can run on OSv is it possible to run ScyllaDB on OSv? I have not found anything on scyllaDB site ? If no are there any plans do make it possible? If yes would there be any advantage of running scylladb on top of OSV performance-wise? -- You received this message because you are subscribed to the Google Groups "OSv Development" group. To unsubscribe from this group and stop receiving emails from it, send an email to osv-dev+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.
[PATCH v5] Provide alternative java.so to start jvm without classloader and log manager isolation in order to run JRE compact profiles.
In order to run a JVM app using compact profile 1, 2 or 3 JRE the Java bootstrap code under runjava cannot depend on java.beans.* that is not part of any of the compact profiles. More specifically runjava depends on cglib and asm java libraries that manipulate bytecode and rely on java.beans*. Therefore the changes that are part of this commit essentially allow to bootstrap a JVM app in one of two modes: - old one which provides classloader and JUL log manager isolation between potential multiple apps and runjava code and apps that possibly targets multi-apps on single JVM in OSv and requires full JRE - new one which does NOT provide any classloader and JUL log manager isolation and targets single main method apps on JVM in OSv and allows using compact profile 1, 2 or 3 Following changes are part of this commit: * Added io.osv.isolated and io.osv.nonisolated packages under java/runjava and refactored ContextIsolator to create Jvm, NonIsolatedJvm, RunNonIsolatedJvmApp, IsolatedJvm, RunIsolatedJvmApp classes * Changed java.cc and makefile to support producing two executable - old java.so that can run multiple JVM apps in isolated fashion (class loader, log manager, etc) and new java_non_isolated.so that can run single JVM app without any isolation of the former one * Changed java/jvm/java.cc to print which java class it uses to bootstrap - isolated or nonisolated one; fixed Makefile to properly handle building of java_non_isolated.so * Added java_non_isolated.so to modules/java-tests/usr.manifest * Added java_non_isolated test to test.py; modified testing.py to detect failure to start *.so * Added unit tests to test running non-isolated JVM app to tests-isolates Fixes #497 Signed-off-by: Waldemar Kozaczuk--- Makefile | 7 +- java/jvm/java.cc | 13 +- ... AppThreadTerminatedWithUncaughtException.java} | 6 +- .../java/io/osv/{ContextIsolator.java => Jvm.java} | 183 +++-- java/runjava/src/main/java/io/osv/RunJava.java | 48 -- .../src/main/java/io/osv/RunJvmAppHelper.java | 44 + .../main/java/io/osv/{ => isolated}/Context.java | 2 +- .../osv/{ => isolated}/ContextFailedException.java | 6 +- .../src/main/java/io/osv/isolated/IsolatedJvm.java | 160 ++ .../java/io/osv/{ => isolated}/MultiJarLoader.java | 4 +- .../osv/{ => isolated}/OsvSystemClassLoader.java | 4 +- .../java/io/osv/isolated/RunIsolatedJvmApp.java| 33 .../main/java/io/osv/jul/IsolatingLogManager.java | 6 +- .../main/java/io/osv/jul/LogManagerWrapper.java| 2 +- .../java/io/osv/nonisolated/NonIsolatedJvm.java| 86 ++ .../io/osv/nonisolated/RunNonIsolatedJvmApp.java | 33 .../src/main/java/tests/LoggingProcess.java| 4 +- ...Process.java => NonIsolatedLoggingProcess.java} | 10 +- .../src/main/java/tests/PropertyReader.java| 4 +- .../src/main/java/tests/PropertySetter.java| 4 +- .../src/main/java/tests/StaticFieldSetter.java | 4 +- ...Tests.java => AllTestsThatTestIsolatedApp.java} | 2 +- ...ts.java => AllTestsThatTestNonIsolatedApp.java} | 9 +- .../main/java/io/osv/ClassLoaderIsolationTest.java | 5 +- .../io/osv/ClassLoaderWithoutIsolationTest.java| 89 ++ .../src/main/java/io/osv/LoggingIsolationTest.java | 4 +- .../java/io/osv/LoggingWithoutIsolationTest.java | 54 ++ .../main/java/io/osv/PropertyIsolationTest.java| 4 +- ...estIsolateLaunching.java => TestLaunching.java} | 23 ++- modules/java-tests/usr.manifest| 9 + scripts/test.py| 6 +- scripts/tests/testing.py | 1 + 32 files changed, 615 insertions(+), 254 deletions(-) copy java/runjava/src/main/java/io/osv/{ContextFailedException.java => AppThreadTerminatedWithUncaughtException.java} (52%) rename java/runjava/src/main/java/io/osv/{ContextIsolator.java => Jvm.java} (51%) delete mode 100644 java/runjava/src/main/java/io/osv/RunJava.java create mode 100644 java/runjava/src/main/java/io/osv/RunJvmAppHelper.java rename java/runjava/src/main/java/io/osv/{ => isolated}/Context.java (98%) rename java/runjava/src/main/java/io/osv/{ => isolated}/ContextFailedException.java (62%) create mode 100644 java/runjava/src/main/java/io/osv/isolated/IsolatedJvm.java rename java/runjava/src/main/java/io/osv/{ => isolated}/MultiJarLoader.java (97%) rename java/runjava/src/main/java/io/osv/{ => isolated}/OsvSystemClassLoader.java (98%) create mode 100644 java/runjava/src/main/java/io/osv/isolated/RunIsolatedJvmApp.java create mode 100644 java/runjava/src/main/java/io/osv/nonisolated/NonIsolatedJvm.java create mode 100644 java/runjava/src/main/java/io/osv/nonisolated/RunNonIsolatedJvmApp.java copy