Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Sorry, еще раз про версионность
|
|||
|---|---|---|---|
|
#18+
В хелпе MsSql написано, да и сам тесты гонял, и здесь подтвердили,что при транзакции данные захватываются монопольно.те возможности их просто прочитать (старую версию) нет Грязное чтение не подходит Если транзакция длительная, то проблема становиться очень критичной В IB версионность поддерживается Кто-нибудь сталкивался с подобной проблемой и КАК ОН ЕЕ ОБХОДИЛ ? МНЕ КАЖЕТСЯ , ЧТО ЭТА ПРОБЛЕМА ОЧЕНЬ КРИТИЧНА ДЛЯ ЛЮБОГО ПРИЛОЖЕНИЯ Те при длинной транзакции никто не сможет даже отчет получить Не дайте пропасть, где копать ??? Разработка ведется на MsSql2000 MDAC2.6 Vb6 Sp5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2001, 13:53 |
|
||
|
Sorry, еще раз про версионность
|
|||
|---|---|---|---|
|
#18+
На примере покажите почему транзакция длительная? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2001, 14:01 |
|
||
|
Sorry, еще раз про версионность
|
|||
|---|---|---|---|
|
#18+
Все это решается применением временных таблиц. Как применяется - зависит от конкретного случая, всякий раз по-разному. Кидай пример - будет конкретика. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2001, 14:03 |
|
||
|
Sorry, еще раз про версионность
|
|||
|---|---|---|---|
|
#18+
тестовые примеры. Один из примеров - прием рейса платежей, где принимаются или все , или ничего (насколько я читал- свойство транцакции Atomicity) Те если разбить рейс на платежи, и платеж=транцакция,при отчете можно увидеть данные, которые уже обработаны, но потом рейс не принят, и данные не корректны Затрагиваются таблицы типа остатки,движения,документы,состояния документов итд итп ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2001, 14:17 |
|
||
|
Sorry, еще раз про версионность
|
|||
|---|---|---|---|
|
#18+
Все равно не очень понятно. Почему если транзакция должна быть на уровне рейса у Вас происходит шевеление таблицами остатки,движения,документы,состояния документов. Разве нельзя провести рейс в одной транзакции, а затем следующей поправить остатки,движения,документы,состояния документов? И насколько велик этот рейс? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2001, 14:36 |
|
||
|
Sorry, еще раз про версионность
|
|||
|---|---|---|---|
|
#18+
Скажем так.Ситуация такая, что НУЖНА большая транзакция, и обйти это никак низя Как с помошью времянок обойти эту проблему ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2001, 14:46 |
|
||
|
Sorry, еще раз про версионность
|
|||
|---|---|---|---|
|
#18+
В такой ситуации, когда необходимы большие изменения одновременно по нескольким таблицам, очень хорошо помогает организация логики приложения и базы, когда для любого типа изменения требуются только операции INSERT. Практически всегда это реализуемо. В этом случае все предыдущее состояние читаемо, а заблокированы только новые вставляемые данные, которые до окончания изменения читать и не нужно. Кстати, реализация такой логики помогает легко организовать "исторические поля", когда можно узнать состояние на любой предыдущий период. Это не панацея, всего лишь один из приемов. В любом случае, необходимо сводить транзакцию к минимуму, вынося код, который только можно, за пределы транзакции. Например, расчет остатков произвести до начала транзакции, засунуть их во времянку, а внутри транзакции уже только обновить таблицу остатков, ранее расчитанные, взяв их из времянки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2001, 15:00 |
|
||
|
Sorry, еще раз про версионность
|
|||
|---|---|---|---|
|
#18+
Хотя на вопрос о времянках я уже наглядно ответил в конце своего предыдущего опуса, замечу еще. Использование времянок помогает организовать повторяемое чтение без блокирования. Т.е. вначале считываешь то, что нужно во времянку, а потом используешь стоко, скоко хочешь раз. И оно гарантировано не изменится никем другим (мы говорим о локальных времянках). Значит, повторяемое считывание достигнуто. А блокировок нет. Это уже достаточная пища для размышлений в данном контексте, поэтому не вижу смысла (пока) говорить еще что-то. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2001, 15:09 |
|
||
|
|

start [/forum/moderation_log.php?user_name=Ni%D1%81kolay]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
31ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
| others: | 690ms |
| total: | 826ms |

| 0 / 0 |
