Hello, arxange1!

arxange1 wrote:
Удалось выявить проблемный запрос, на котором падает сервер.
первое, что бросается в глаза - запрос составлен с прямой вставкой параметров, что не есть хорошо.
Сервер падал при большом количестве записей в переменной sDeleteLog

'UPDATE S_S_RECEIVED_PACKETS ' +
'SET WAS_APPLIED = 1, ERROR_FLAG = 0, ' +
'ERROR_LOG = ' + IIF(sDeleteLog = '', 'NULL', '''' + sDeleteLog + '''') +
'WHERE ID = ' + IntToStr(iPacketID)

это чешуя какая-то, а не запрос. Вернее, это текст запроса в клиентском
приложении, и переменная sDeleteLog - отнюдь не серверная.
Соответственно, что тут делает IIF - нихрена не понятно.
Или где-то пропущена кавычка.

Посмотрите внимательно на две последние строки:
'ERROR_LOG = ' + IIF(sDeleteLog = ...
'WHERE ID = ' + IntToStr(iPacketID) ...


--
Dmitri Kouzmenko, www.ibase.ru, (495) 953-13-34


Ответить