25.09.2009, 11:41 | #1 |
Участник
|
Разноски, блокировки и NumberSeq
Господа, доброго дня!
Аксапта тройка. Симптомы такие: для нескольких заказов при попытке разносок вешается намертво система, создаются два доступа к таблице NumberSequenceTable, один блочит другого. Происходит это в классе NumberSeqCleanUp в методе cleanUpSequence в этом запросе X++: select forupdate firstonly numberSequenceTableUpd index hint SeriesIdx where numberSequenceTableUpd.numberSequence == _numberSequenceTable.numberSequence; Происходит впервые, раньше не было такого как говорят, что согласуется со старыми топиками (работаю второй день на месте, впервые вижу проблемы с проводками такого класса). Помимо этого ещё появился глюк. При создании отгрузочной накладно процесс проходит, ничего не виснет, однако в проводках и в соответствующей таблице пустота. Ниже весь код, по-моему он оригинальный X++: public void cleanUpSequence(UserConnection userConnection, NumberSequenceTable _numberSequenceTable, boolean hookCleanUp = false ) { NumberSequenceList numberSequenceList; NumberSequenceTable numberSequenceTableUpd; boolean doCleanUpDead = FALSE; if (_numberSequenceTable && _numberSequenceTable.continuous) { userConnection.ttsbegin(); numberSequenceTableUpd.setConnection(userConnection); select forupdate firstonly numberSequenceTableUpd index hint SeriesIdx where numberSequenceTableUpd.numberSequence == _numberSequenceTable.numberSequence; if (numberSequenceTableUpd && (!hookCleanUp || numberSequenceTableUpd.mustRunCompleteCleanUp())) numberSequenceTableUpd.updateCompleteClean(); while select transId from numberSequenceList group by transId where numberSequenceList.numberSequence == _numberSequenceTable.numberSequence { if (!numberSequenceList.transId) doCleanUpDead = TRUE; this.cleanUpTrans(userConnection,numberSequenceList.transId); } if (doCleanUpDead) this.cleanupDeadProc(userConnection,_numberSequenceTable.numberSequence); userConnection.ttscommit(); } } Последний раз редактировалось Helm; 25.09.2009 в 11:53. |
|
Теги |
блокировка, разноска, number sequence |
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|