codingchili / chili-core

Reactive framework for creating transport & storage-transparent microservices with Vert.x
https://codingchili.github.io/chili-core/
MIT License
14 stars 5 forks source link

Reconsider dynamic indexing of attributes on query #255

Closed codingchili closed 5 years ago

codingchili commented 5 years ago

A temporary workaround for CQEngine causes all indexes to be recreated when the application is restarted and an attribute for which an index has not been created for is queried.

System.setProperty("cqengine.reinit.preexisting.indexes", Boolean.TRUE.toString());

This will impact startup speeds for larger datasets. This only affects CQEngine with disk persistence, in this case CQEngine does not have access to the Attribute implementation to be used for the indexed attribute as it cannot be inferred from the index tables.

codingchili commented 5 years ago

Avoid using reflection for attributes as a primary loader on any store and allow clients to add indexes/attributes through the API.

Affects

Avoid using Serializer.getValueByPath by using an attribute loader added with the addIndex method.

codingchili commented 5 years ago

Changes in 1.3.0.

This resolves some issues with ghost objects/duplicates caused by index inconsistencies.

Updating documentation for storages.

See https://github.com/npgall/cqengine/issues/242