Имаме таблица в базата данни на Oracle, която действа като посредник между две системи. Система A ще направи групово вмъкване в таблицата, като се ангажира на всеки 50 000 реда. Система B ще продължи да прави запитвания към таблицата за запис и ако има такъв, ще издаде оператор SELECT .. FOR UPDATE
за обработка на записите (Система B е многонишкова).
Проблемът е, че има вероятност Система А все още да вмъква групово данните, когато Система Б прави заявка към таблицата. Това може да накара Система B да получи непълен набор от данни за обработка.
Все пак можем ли да разберем дали груповото вмъкване е спряло? Ако искаме да наблюдаваме дали има някаква insert
дейност, извършена на масата, възможно ли е? За съжаление нямаме контрол върху това как работи Система А, така че не можем да я накараме да ни изпрати сигнал за „край“.
Всички коментари се оценяват. Благодаря ти.
v$sqlarea
, но данните в този списък се премахват с помощта на алгоритъма за най-малко използване, нали? Мога да определя дали System A е спряла да вмъква данни от нея? - person ipohfly   schedule 14.04.2015