Comments (5)
@hg-ms Thanks for your answer - but some points are still unclear:
a) Is microstream-quarkus-extension
compatible with eclipse-store
or can/should it only be used with the previous microstream-api
?
b) Regarding the class loader issues, which class(es) should I exactly disable for hot code exchange in Quarkus Dev mode?
c) And the most important question: Are there plans to provide a quarkus-eclipse-store
extension that takes care of such issues, in detail the following:
-
disable hot code swapping for specific eclipse-store class(es) when running in "Quarkus dev mode".
-
reinitialize Eclipse Store every time "Quarkus dev" is refreshed
-
provide Client-GUI in https://quarkus.io/guides/dev-ui (https://docs.microstream.one/manual/storage/rest-interface/client-gui.html can be integrated in DEV UI)
-
seamless integration with Graal VM. The following solutions do not refer to
eclipse-store
and show that graalvm support is currently not fully seamless:
from store.
a) Is
microstream-quarkus-extension
compatible witheclipse-store
or can/should it only be used with the previousmicrostream-api
?
The microstream-quarkus-extension can’t be used with Eclipse Store due to the renamed API.
b) Regarding the class loader issues, which class(es) should I exactly disable for hot code exchange in Quarkus Dev mode?
This potentially affects all class that are going to be persisted by Eclipse Store. Most likely this are your data classes of your project, but I’m no Quarkus expert…
c) And the most important question: Are there plans to provide a
quarkus-eclipse-store
extension
There are plans to provide an Eclipse Store extension for Quarkus but I can’t forecast when it will be available and what features will be provided.
from store.
Hello,
The Quarkus Dev mode is problematic. Beside the class loader handling there is also the hot code replacement. Eclipse Store does a class analysis the first time a class gets persisted, if a class gets modified at runtime those changes will not be detected and may cause unexpected results. In the best case it’s a class cast exception. To handle changes of persisted classes Eclipse Store needs to be reinitialized.
When using Eclipse Store you need to disable hot code replacement for all classes that are going to be persisted.
from store.
Hi @hg-ms,
I read https://microstream.one/blog/article/quarkus-extension-for-microstream/ and I am wondering if
<dependency>
<groupId>one.microstream</groupId>
<artifactId>microstream-quarkus-extension</artifactId>
<version>08.00.00-MS-GA</version>
</dependency>
can also be used for eclipse-store
?
Even if, does this extensions care of
- the bootloader issue
- the disabling of hot code replacement for all classes that are going to be persisted or better: To reinitialize Eclipse Store every time Quarkus Dev is refreshed.
If not, it would be good to provide or enhance the extension to care of that. If this is not possible, then:
- how can I solve this bootloader issue?
- how can I disable the hot code replacement for all classes that are going to be persisted?
- how can I reinitialize Eclipse Store every time Quarkus Dev is refreshed?
from store.
The microstream quarkus extension only provides only some basic configuration and storage creation support. It does not address class loading and hot code swapping with the quarkus-dev mode.
Regarding the class loader issues I don’t know if Quarkus can be configured to disable hot code swapping for specific class, maybe you can find some help here: https://quarkus.io/guides/class-loading-reference#quarkus-class-loading-configuration-class-loading-config_configuration.
As last fallback you may restart the hole application if after you modified a persisted class.
from store.
Related Issues (20)
- Handling checked exceptions HOT 1
- IndexOutOfBoundsException when using values().stream() on empty LazyHashMap HOT 1
- Entity and Wrapper code generators in Gradle - please document HOT 3
- Versioning layer exception HOT 4
- --add-exports java.base/jdk.internal.misc=ALL-UNNAMED - please fix the docs!
- Issue with generated layered entity code - may need documentation?
- ES 1.3.1 testing against a Minio (S3-compatible ) storage backend - please help! HOT 2
- Not able to download the GUI client from MAVEN as well as the direct URl HOT 3
- Gcp Cloud storage storage target HOT 1
- java.lang.ClassNotFoundException: sun.misc.Unsafe HOT 2
- Rest Client GUI link is broken HOT 2
- Foundation type handler registration depends on order of api calls
- ObjectCopier class not found HOT 2
- The documentation for the layered entities configuration section is incorrect HOT 1
- Need help with "Error occurred in storage channel" HOT 9
- About Creating Database Issues HOT 1
- About Creating Database Issues HOT 12
- Layered entity generator issue?
- Real "read-only" mode with optimized memory consumption HOT 1
- eclipse store data loading is very very slow when app starts HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from store.