royt
Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору alexsob Цитата: Так ведь можно и проиндексировать лог-таблицу | ну это само собой... просто хотелось бы иметь минимум индексов по этой таблице, ну т.е. все в целях оптимизации. Цитата: Зарыт где-то глубоко и добраться до него если и возможно через внутренние представления, то время доступа к ним куда больше, чем время поиска по индексированному столбцу. | Неужели действительно только через представления? Ведь этот ID должен лежать где-то "рядом", в контексте транзакции, постоянно находиться в памяти, и по идее может быть легко доступен по какой-нибудь команде/функции. Если только это не сделано по принципиальным соображениям, но я пока таких не могу придумать. Слушайте, а может в Oracle вообще есть что-то типа TLS (thread local storage)? Тогда засунул бы сам туда UUID и получил то же самое (что и с transaction-id). В общем, будем еще рыть в этом направлении. Цитата: Этот номер вообще не нужен, т.к. транзакция включает в себя изменение не только одной строки, в вообще все изменения всех строк во всех таблицах до commit | Да, это тоже понятно конечно. Но на самом деле неплохо было бы иметь id "пользовательской" транзакции в любом случае - тогда легче логически объединить все изменения одной транзакции в одно и показать в логе как единую операцию. Добавлено: вдогонку, есть оказывается такой DBMS_TRANSACTION.LOCAL_TRANSACTION_ID - уникален относительно инстанса, для моей задачи этого пока достаточно | Всего записей: 319 | Зарегистр. 18-08-2004 | Отправлено: 08:31 09-02-2007 | Исправлено: royt, 08:59 09-02-2007 |
|