Skip to content
This repository was archived by the owner on Jan 9, 2025. It is now read-only.
This repository was archived by the owner on Jan 9, 2025. It is now read-only.

@Store leads to ConcurrentModificationException within CDI interceptor #394

@rdebusscher

Description

@rdebusscher

The usage of @Store violates the synchronised access to shared mutable data with MicroStream principle. See also https://docs.microstream.one/manual/storage/root-instances.html#_synchronize_access_to_shared_mutable_data

When a call to StorageManager.store() is not protected with the same lock or synchronised on the same 'Object' then the change that is made to the Object graph, a ConcurrentModificationException modification exception can be thrown when using a collection (List, Set, ...). This is because the MicroStream internals are inspecting the structure and it is modified at the same time by the user code.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions