Simptome
Să luăm în considerare următorul scenariu:
-
Aveți o locație de primire care este configurat să utilizeze adaptor MQSC pentru a primi mesaje de la IBM WebSphere MQ.
-
Adaptor MQSC este configurat să utilizeze un caracter setați setarea UCS-2 și UTF-16 sau UTF-8.
-
Adaptor MQSC încearcă să primiți un mesaj de la IBM WebSphere MQ în Microsoft BizTalk Server 2010.
-
Mesajul este mai mare de 1 megaocteți (MO).
În acest scenariu, următorul mesaj de eroare poate fi înregistrat în Jurnalul de aplicații:
ID eveniment: 5740Sursă: BizTalk ServerDescriere:Adaptor "MQSC" ridicat un mesaj de eroare. Detalii "eroare întâlnite la încercarea de a lua mesaj din coadă. coadă = în mod implicit, queueManager = queuemanager, reasonCode = 2010".
Cauza
Această problemă apare deoarece setul de caractere specificat pentru adaptor MQSC afectează lungimea totală a mesajul pe care este primit. De exemplu, atunci când un set de caractere de utilizat UTF-8 , mesaj efectiv necesită o dimensiune de tampon de cinci ori mai mare decât dimensiunea mesajului. De aceea, un mesaj de 1 MO. necesită un buffer de 5 MB. Acest lucru depășește lungimea maximă mesaj setarea implicită de 4 MB, care este utilizat de adaptor MQSC. Dacă mesajul primit necesită tampon spațiu mai mare decât setarea de lungime maximă mesaj adaptor MQSC, se înregistrează eroarea menționată în secțiunea "simptome".
Rezolvare
Informații despre actualizarea cumulativă
Fix care rezolvă această problemă este inclus în pachetul de actualizare cumulativă 8 pentru Host Integration Server 2010. Pentru mai multe informații despre cum se obține cumulativă pachet de actualizare, consultați Cumulative 8 pentru Host Integration Server 2010 pachet de actualizare.
Soluție
Pentru a rezolva această problemă, măriți setarea lungimea maximă mesaj în configurația de adaptor MQSC pentru a se potrivi dimensiunea mesajul primit pe spațiul suplimentar tampon necesar de setul de caractere care este utilizat.
Stare
Microsoft a confirmat că aceasta este o problemă cu produsele Microsoft enumerate în secţiunea „Se aplică la".
Mai multe informații
După ce se aplică această actualizare, când sistemul este regăsirea mesajelor din coada, adaptor MQSC specifică o opțiune care permite IBM WebSphere MQ gestiona tampon redimensionare automat.Setarea de mesaj lungimea maximă este de fapt o setare sugerate care se bazează pe durata mesaj și codificarea (sau set de caractere) a mesajului. De aceea, se reglează setarea lungimea maximă mesaj pentru a îndeplini cerințele de dimensiune specifică mesaj pentru a vă asigura că toate mesajele sunt primite cu succes. Lungimea maximă mesaj setările pot fi specificate în adaptor MQSC parametrii și IBM WebSphere MQ setări. Prin urmare, ar trebui să vă asigurați că setările de acord.Următoarea listă descrie cerințele de dimensiune tampon bazate pe setul de caractere care este utilizat de mesaje care sunt primite de la coada mesaj:
-
Set de caractere UTF-16: Când utilizați un caracter setați setarea UTF -16, spațiul necesar tampon este egală cu două ori dimensiunea mesajul primit.
-
Set de caractere UCS-2 și UTF-8: Când utilizați un caracter setați setarea UCS-2și UTF-8, spațiul necesar tampon este de cinci ori dimensiunea mesajul primit.
Vă recomandăm că nu numai aplicarea acestei actualizări, dar, de asemenea, faceți upgrade la versiunea IBM WebSphere MQ 7.5 Fixpack 1 atunci când se utilizează adaptor MQSC. IBM WebSphere MQ versiunea 7.5 Fixpack 1 include o remediere pentru o problemă care este legată de conversii de date DBCS UTF-16.Dacă nu faceți upgrade la versiunea IBM WebSphere MQ 7.5 Fixpack 1, vă recomandăm să utilizați versiunea IBM WebSphere MQ 7.0.1.8 (sau o versiune ulterioară) împreună cu această actualizare.Produsele terţe despre care se discută în acest articol sunt fabricate de companii independente de Microsoft. Microsoft nu garantează în niciun fel, implicit sau în alt mod, funcționarea sau fiabilitatea acestor produse.