|
I think there's no limit to the weird stuff that could be present in a stale index and there are only two solutions:
-
fully automatic, which means a full MassIndexer run. We can decide we want to improve that for example to fullfill our dream of an incremental approach.
-
full user control, i.e. we allow the user to run any batch cleanup as in HSEARCH-1765
Remember people can run the MassIndexer targeting a specific type only to run partial rebuilds. An improvement would be to allow to target a specific index by name, say a single shard needs it.
I'm afraid intermediate solution which try to guess some smart/safe move out of incomplete metadata and without having the previous configuration is doomed to fail, esp. if you consider that we allow such things as adding new entities on the fly, or new indexes on the fly for existing entities (Dynamic Sharding & co) or that a FieldBridge is essentially a "dynamic fields" feature out of our control.
+1 to expose helpful building blocks so people like Marc can build on them and compose them, but let's not expose something people can't rely on.
|