Details
-
Bug
-
Status: Closed
-
Critical
-
Resolution: Fixed
-
2.0.0-M10
-
None
-
None
Description
We use the reverse index to detect if an AT is not anymore present in an entry after a modification ::
/*
- If no attribute values exist for this entryId in the index then
- we remove the presence index entry for the removed attribute.
*/
if ( null == index.reverseLookup( id ) ) { presenceIdx.drop( modsOid, id ); }
If the AT index does not have a reverse index, this operation will do nothing, and the presence index will select entries which are not anymore useful.
We should instead check if the Attribute is still existng after the modification, and if not, remove it from the presence index without checking into it.