| +1 for additive. I like the clean approach to declare your dependencies explicitly.
but disable the whole dirty-checking optimisation by default on each entity
You mean having the ability to do so with enableDirtyCheckingOptimisations=true or change the default entirely? +1 to add the ability to disable the optimizations: we used to add an empty ClassBridge to do so but it's better if the semantic is clear and we have a clean way to do it. -1 to change the default +1 to add a section in the documentation talking about these issues.
And maybe an entity having @Transient properties which affect input of any index field (be it via @Field of custom bridges) should always be considered dirty, at least by default?
AFAIK, it's already the case. I'm wondering if, instead of creating a new annotation, we could include it in the @Field annotation. Something like a dependsOn attribute taking a list of properties? If not empty, it would disable the automatic shutting down of the optimizations on @Transient fields and consider these properties. |