| Автор | Сообщение |
|
|
| |
Пост N: 1
Зарегистрирован: 07.08.06
|
|
Отправлено: 07.08.06 15:30. Заголовок: ADS 6.11 (netware): странность с полем AXS_TPS
Всем доброго GMT! Кто-нибудь сталкивался с тем, что в "служебном" поле AXS_TPS, которое рекомендуется добавить к таблицам, обрабатываемым в транзакциях, после окончания TRN _ИНОГДА_ остаётся символ `a` (CHR(97)) ? Дело в том, что следующая транзакция, обрабатывающая такие записи, НЕ изменяет их при своём завершении!!
|
 |

|
|
Ответов - 2
[только новые]
|
|
|
|
| |
Пост N: 327
Зарегистрирован: 17.05.05
|
|
Отправлено: 07.08.06 20:17. Заголовок: Re:
|
 |

|
|
|
| |
Пост N: 2
Зарегистрирован: 07.08.06
|
|
Отправлено: 08.08.06 11:40. Заголовок: ADS 6.11 (netware): странность с полем AXS_TPS
У них в хелпе есть вот это: 7042 Invalid bits set in the TPS semaphore byte Problem: With DBF tables, the byte being used for the Transaction Processing System (TPS) semaphore byte (either the "deleted" byte or the AXS_TPS field, if one exists) has bits set that are invalid for that byte. ... With DBF tables, a non-Advantage product is most likely causing the corruption. With ADT tables, the server likely crashed in the midst of a transaction, and the transaction was not properly recovered from when the Advantage Database Server was restarted. The previous Advantage Database Server error log file (ADS_ERR.DBF) entry contains the record number of the record that has invalid bits in its TPS semaphore byte(s). Solution for DBF tables: When not in a transaction... if the TPS semaphore byte is the AXS_TPS field, open the table exclusively (doesn't matter which driver is used). Then loop through all records in the DBF table and clear all contents in the AXS_TPS field by replacing the field with a single space " ". Исходя из этого, я понял, что этот байт может оставаться заполненным, если во время активной TRN программа была завершена без ROLLBACK'a. Решение нашел в том, что _ДО_ старта транзакции (когда "накапливаем" блокировки на нужных строках) надо сразу записывать в этот байт пробел.
|
 |

|
|