Симптомы
При использовании нескольких запросов SQL или вызовы хранимых процедур в < синхронизации > одного блока в узел Integration Server 2013, вызовы обрабатываются в обратном порядке от желаемого. Например следующий код XML содержит несколько вызовов хранимых процедур в блок одной < синхронизации >:
<sync>
<StoredProcedure>
<SP_CHAR_INOUT INOUTVAL1 ="ABCDEFGHIJ" />
</StoredProcedure>
<StoredProcedure>
<SP_CHAR_INOUT INOUTVAL1 ="BCDEFGHIJK" />
</StoredProcedure>
<StoredProcedure>
<SP_CHAR_INOUT INOUTVAL1 ="CDEFGHIJKL" />
</StoredProcedure>
</sync>
В этом примере последнего вызова хранимой процедуры в блоке < синхронизации > является первым выполняется.
Причина
Адаптер BizTalk для DB2 хранилища записей в синхронизации < > блока в стек, который выполняется в обратном порядке. Это поведение было частью адаптера BizTalk для DB2 момента Host Integration Server 2006.
Решение
Информация о накопительном пакете обновления
Исправление, устраняющее эту проблему включен в Накопительное обновление 2 для узла Integration Server 2013.
Временное решение
Выполнение SQL запросов или хранимых процедур вызывает в порядок, размещение каждого запроса или вызова хранимой процедуры в свой собственный блок < синхронизации >, как в следующем примере:
<sync>
<StoredProcedure>
<SP_CHAR_INOUT INOUTVAL1 ="ABCDEFGHIJ" />
</StoredProcedure>
</sync>
<sync>
<StoredProcedure>
<SP_CHAR_INOUT INOUTVAL1 ="BCDEFGHIJK" />
</StoredProcedure>
</sync>
<sync>
<StoredProcedure>
<SP_CHAR_INOUT INOUTVAL1 ="CDEFGHIJKL" />
</StoredProcedure>
</sync>
Примечание. При размещении каждого запроса или вызова хранимой процедуры в свой собственный блок < синхронизации > и запросы или хранимые процедуры вызывает сбой по любой причине, появляется незавершенных обновлений в базе данных DB2 потому, что каждый оператор обрабатывается в собственной транзакции.
Статус
Корпорация Майкрософт подтверждает, что это проблема продуктов Майкрософт, перечисленных в разделе "Относится к".
Дополнительные сведения
После установки этого обновления адаптера BizTalk для DB2 обрабатывает каждый запрос SQL и вызова хранимой процедуры, содержащийся в блоке < синхронизации > в том порядке, в котором перечислены в соответствующем XML-файле.