|
может ли не сработать TABLEUPDATE на залоченной мной таблице ?
|
|||
---|---|---|---|
#18+
5-ая оптимистическая буферизация, выполняется FLOCK(), затем TABLEUPDATE. В принципе, может ли быть неуспех ? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2008, 11:41 |
|
может ли не сработать TABLEUPDATE на залоченной мной таблице ?
|
|||
---|---|---|---|
#18+
Петлюра5-ая оптимистическая буферизация, выполняется FLOCK(), затем TABLEUPDATE. В принципе, может ли быть неуспех ? Не надо скрещивать ужа с ежом. Буферизация как раз и делает все нужные блокировки, не надо путаться у нее под ногами и ей мешать. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2008, 11:47 |
|
может ли не сработать TABLEUPDATE на залоченной мной таблице ?
|
|||
---|---|---|---|
#18+
ПетлюраВ принципе, может ли быть неуспех ? 1. Да, если операции проведены в разных Datasession 2. Да, конечно, например нарушены ограничения ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2008, 11:52 |
|
может ли не сработать TABLEUPDATE на залоченной мной таблице ?
|
|||
---|---|---|---|
#18+
PaulWist ПетлюраВ принципе, может ли быть неуспех ? 1. Да, если операции проведены в разных Datasession 2. Да, конечно, например нарушены ограничения Сессия одна, приватная. Ограничения не нарушены. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2008, 12:04 |
|
может ли не сработать TABLEUPDATE на залоченной мной таблице ?
|
|||
---|---|---|---|
#18+
проходящий. Петлюра5-ая оптимистическая буферизация, выполняется FLOCK(), затем TABLEUPDATE. В принципе, может ли быть неуспех ? Не надо скрещивать ужа с ежом. Буферизация как раз и делает все нужные блокировки, не надо путаться у нее под ногами и ей мешать. Животные здесь не при чем. Вопрос сформулирован четко. Зачем это надо - другое дело. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2008, 12:08 |
|
может ли не сработать TABLEUPDATE на залоченной мной таблице ?
|
|||
---|---|---|---|
#18+
Петлюра проходящий. Петлюра5-ая оптимистическая буферизация, выполняется FLOCK(), затем TABLEUPDATE. В принципе, может ли быть неуспех ? Не надо скрещивать ужа с ежом. Буферизация как раз и делает все нужные блокировки, не надо путаться у нее под ногами и ей мешать. Животные здесь не при чем. Вопрос сформулирован четко. Зачем это надо - другое дело. Четко для кого? Для задавашего может и четко, для пытающихся его понять - нет. Смешивание ручного и автоматического управления блокировками в одном месте - поиск приключений на одно место. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2008, 12:13 |
|
может ли не сработать TABLEUPDATE на залоченной мной таблице ?
|
|||
---|---|---|---|
#18+
проходящий. Петлюра проходящий. Петлюра5-ая оптимистическая буферизация, выполняется FLOCK(), затем TABLEUPDATE. В принципе, может ли быть неуспех ? Не надо скрещивать ужа с ежом. Буферизация как раз и делает все нужные блокировки, не надо путаться у нее под ногами и ей мешать. Животные здесь не при чем. Вопрос сформулирован четко. Зачем это надо - другое дело. Четко для кого? Для задавашего может и четко, для пытающихся его понять - нет. Смешивание ручного и автоматического управления блокировками в одном месте - поиск приключений на одно место. Пример приключений в студию. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2008, 12:18 |
|
может ли не сработать TABLEUPDATE на залоченной мной таблице ?
|
|||
---|---|---|---|
#18+
Петлюра PaulWist ПетлюраВ принципе, может ли быть неуспех ? 1. Да, если операции проведены в разных Datasession 2. Да, конечно, например нарушены ограничения Сессия одна, приватная. Ограничения не нарушены. Доп. вопросы: 1. Задача однопользовательская? 2. Как происходит сброс изменений данных (в транзакции или нет) PS желательно привести код который реализует Ваш алгоритм. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2008, 12:49 |
|
может ли не сработать TABLEUPDATE на залоченной мной таблице ?
|
|||
---|---|---|---|
#18+
PaulWist Петлюра PaulWist ПетлюраВ принципе, может ли быть неуспех ? 1. Да, если операции проведены в разных Datasession 2. Да, конечно, например нарушены ограничения Сессия одна, приватная. Ограничения не нарушены. Доп. вопросы: 1. Задача однопользовательская? 2. Как происходит сброс изменений данных (в транзакции или нет) PS желательно привести код который реализует Ваш алгоритм. 1. Задача многопользовательская. 2. Транзакции не используются. 3. Код привести затруднительно, но суть такова: в локальном курсоре пользователь выполняет некоторые действия, на основании которых должны внестись определенные изменения в группу таблиц. Для этих таблиц устанавливается буферизация. Таблицы локируются FLOCK(), после чего INSERT и UPDATE команды. Затем TABLEUPDATE() и UNLOCK. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2008, 13:18 |
|
может ли не сработать TABLEUPDATE на залоченной мной таблице ?
|
|||
---|---|---|---|
#18+
Петлюратакова: в локальном курсоре пользователь выполняет некоторые действия, на основании которых должны внестись определенные изменения в группу таблиц. Для этих таблиц устанавливается буферизация. Таблицы локируются FLOCK(), после чего INSERT и UPDATE команды. Затем TABLEUPDATE() и UNLOCK. Если я правильно понимаю что курсор никак не связан с таблицей (т.е. не local view и не СursorAdapter), то зачем вообще тут TABLEUPDATE() ? вполне достаточно открыть таблицу без буфферизации и рулить блокировками через FLOCK() и UNLOCK, что и так происходит. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2008, 13:27 |
|
может ли не сработать TABLEUPDATE на залоченной мной таблице ?
|
|||
---|---|---|---|
#18+
Петлюра1. Задача многопользовательская. 2. Транзакции не используются. 3. Код привести затруднительно, но суть такова: в локальном курсоре пользователь выполняет некоторые действия, на основании которых должны внестись определенные изменения в группу таблиц. Для этих таблиц устанавливается буферизация. Таблицы локируются FLOCK(), после чего INSERT и UPDATE команды. Затем TABLEUPDATE() и UNLOCK. 1. Тогда реально наступить на заблокированную табличку 2. Тогда реально получить рассогласованные данные когда в мастер-таблице будут записиЮ а в деталях не будет содержания 3. Так в многопользовательской среде не работают, если использовать штатный механизм фокса, а Вас предстоит серьезная работа над обработчиком ошибок. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2008, 13:34 |
|
может ли не сработать TABLEUPDATE на залоченной мной таблице ?
|
|||
---|---|---|---|
#18+
PaulWist Петлюра1. Задача многопользовательская. 2. Транзакции не используются. 3. Код привести затруднительно, но суть такова: в локальном курсоре пользователь выполняет некоторые действия, на основании которых должны внестись определенные изменения в группу таблиц. Для этих таблиц устанавливается буферизация. Таблицы локируются FLOCK(), после чего INSERT и UPDATE команды. Затем TABLEUPDATE() и UNLOCK. 1. Тогда реально наступить на заблокированную табличку 2. Тогда реально получить рассогласованные данные когда в мастер-таблице будут записиЮ а в деталях не будет содержания 3. Так в многопользовательской среде не работают, если использовать штатный механизм фокса, а Вас предстоит серьезная работа над обработчиком ошибок. Спасибо, в азах я разбираюсь. Система многопользовательской работы действительно не стандартна, но грабли типа 1-3, конечно же учтены. Все работает безукоризненно уже более 5 лет (пользователей - десятки). Вопрос был чисто теоретический. Тема закрыта. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.07.2008, 13:42 |
|
|
start [/forum/topic.php?fid=41&fpage=153&tid=1587495]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
882ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
others: | 13ms |
total: | 990ms |
0 / 0 |