logo
logo
непонятный глюк [Val 14/06/2004 03:38]
обнаружил интересную ошибку, напрочь убивающую охоту коллективной работы, через "синхронизацию" баз путем импорта операций. Просто у меня с базой работают два пользователя и иногда есть необходимость одновременной работы. После налаживания экспорта/импорта из файла базы данных, я решил, что проблема решена - другой пользователь внес изменения, я их импортировал из его базы, а потом передал ему свою для дальнейшей работы и т.д.
Но... случайно обнаружили следующее:
1) В каких-то случаях не все операции внесенные другим пользователем переносятся в базу, из которой производится импорт (систему я не искал);
2) Самое плохое - в базе из которой импортируются данные (т.е. она выступает источником данных), удаляются операции, которых нет в базе куда осуществляется импорт (т.е. она выступает приемником данных)!
Обнаружили случайно - второй пользователь заметил, что не сохраняются кое-какие операции, что он внес (причем критерий не понятен - часть сохраняется, а часть нет), тут же провели эксперимент - с моей базы провели импорт данных из его базы - часть данных, действительно стерлась, а в мою базу - не попала...
Странная ошибка. Больше заниматься "синхронизацией" баз через импорт перестал. Систему искать не пытался. Такая вот история...
 
Dervish: Единственный способ проверки "переносить запись из одной базы в другую или нет", это полное сравнение операций. В общем случае он работает, но, если есть дублирующиеся записи он будет считать, что записи эквивалентны и не будет делать дубликат. Видимо поэтому и наблюдается такой эффект.
 
Пропадание же записей просто невозможно: импортируемый файл открывается на чтение. Думаю, что это проявился немного другой ляп 191-го билда, в 192-й сборке он уже исправлен.