Ага, многое прояснилось.
Про смену записи в конкретных датасорсах я догадался

Еще вопрос - допустим у нас есть запрос с несколькими Exists Join'ами. В этом случае для основного источника все они вернут по одной записи. На практике я столкнулся с тем, что основной запрос с учетом фильтра по джойнам выбирает одну запись, а next() в Query проходит аж 30 раз (Exists Join'ов присоединено 6-7 штук). Спасает One2One или контроль changed() на основном запросе. Но так и осталось загадкой почему все-таки 30 раз...