]
Dan Berindei updated ISPN-11998:
--------------------------------
Status: Open (was: New)
Eviction new and legacy attributes should stay in sync
------------------------------------------------------
Key: ISPN-11998
URL:
https://issues.redhat.com/browse/ISPN-11998
Project: Infinispan
Issue Type: Bug
Components: Configuration, Core
Affects Versions: 11.0.0.Final
Reporter: Dan Berindei
Assignee: Dan Berindei
Priority: Major
Fix For: 11.0.1.Final
The old-style eviction attributes (storage-type, eviction-strategy, eviction-type, size)
are available programmatically both via {{memory()}} and via
{{memory().heapConfiguration()}}, and changes to either the new attributes or to the
legacy attributes should update all of them.
The builder does not expose {{heapConfiguration()}}, but parsing a JSON with a legacy
configuration (e.g. {{{"local-cache":\{
"memory":{"object":{"size":5000}}}}}}) will set those
attributes directly.
Additionally, the XSD does not include values OBJECT and BINARY for the storage
attribute, but the parser accepts them, and serializing a configuration will sometimes
write them in the XML. In theory we can replace OBJECT with HEAP, but we can't do the
same trick with BINARY because we don't know the media type in the builder (it depends
on the user marshaller). This may change in the future, but it's better if we preserve
the actual values for now.