Тема: Баг inventTable
Показать сообщение отдельно
Старый 20.01.2010, 11:29   #24  
Maximin is offline
Maximin
NavAx
NavAx Club
 
415 / 361 (13) ++++++
Регистрация: 09.10.2002
Адрес: Москва
Цитата:
Думаю что достаточно будет при любых откатах транзакций сбрасывать кеш таблиц, в которые шла вставка. Похоже этого будет достаточно. - Простой и надежный вариант получился.
Собственно, я так и сделал.
Вчера почему-то сброс кэша после очередной обработанной таблицы/неудачной транзакции не работал, сегодня после глобальной компиляции заработало. По методу вызова Dictionary::flushTable на сервере. Это по сути - тот же SysFlushData (который внутри тоже вызывает Dictionary::dataFlush), только с аргументом,позволяющим указать конкретную таблицу, см. мой предыдущий пост. Кстати, думаю, можно и чуть допилить SysFlushData чтобы он обращал внимание на args и если там что-то есть (tableId или record), то сбрасывал кэш только по нужной таблице. Впрочем, при наличии самого Dictionary::dataFlush(_tableId) это не очень-то и нужно.
__________________
Жизнь прекрасна! Если, конечно, правильно подобрать антидепрессанты...