Microsoft Transaction Serverin Lueminut-tiedosto

Microsoft Transaction Server (MTS) on tehokas ympäristö, jossa suorituskykyisten, skaalattavien ja kattavien yrityskohtaisten sovellusten sekä Internet- ja intranet-sovellusten kehittäminen ja käyttöönotto on entistä helpompaa. Microsoft Transaction Server tarjoaa käyttöön sovellusohjelmointimallin sekä suorituksenaikaisen infrastruktuurin, joiden avulla voi kehittää ja ottaa käyttöön hajautettuja, komponentteihin perustuvia sovelluksia.

Tässä Lueminut-tiedostossa kerrotaan tuotteeseen viime hetkessä lisätyistä ominaisuuksista, joita ei mainita muissa ohjeissa, sekä MTS:n tämän julkaisuversion tunnetuista rajoituksista. Lisäksi tämä tiedosto sisältää ohjeita tuotteessa mahdollisesti esiintyvien vikojen raportoimisesta.

Viime hetken tietoja ja tunnettuja rajoituksia

Tuotteen vioista raportoiminen


Viime hetken tietoja ja tunnetut rajoitukset
Viime hetken tietoja ja tunnettuja rajoituksia

Seuraavissa jaksoissa on tietoja ohjelmiston tunnetuista vioista ja rajoituksista sekä muita viime hetken tietoja, joita ei mainita muissa ohjeissa.

Järjestelmäpaketin tunnistetietojen määrittäminen

Määritä MTS:n asennuksen yhteydessä järjestelmäpaketin tunnistetiedot seuraavasti, ennen kuin alat luoda uusia paketteja:

1	Luo uusi paikallinen Windows NT -ryhmä "MTS-järjestelmänvalvojat" sekä uusi paikallinen käyttäjä "MTS-järjestelmänvalvoja".

2	Lisää käyttäjä "MTS-järjestelmänvalvoja" ryhmiin "MTS-järjestelmänvalvojat" sekä "Järjestelmänvalvojat".

3	Määritä järjestelmäpaketin tunnistetiedoiksi "MTS-järjestelmänvalvoja".

4	Sulje järjestelmäpaketti ja käynnistä se uudelleen. Uudet tiedot tulevat voimaan.

MTS-pakettien käyttöoikeudet

Varmista, että järjestelmäpaketin ja muiden MTS-pakettien tietojen käyttäjätileillä on Windows NT:n "Kirjautuminen palveluna" -käyttöoikeus. Tämän voi varmistaa Windows NT:n Käyttäjien hallinnan avulla seuraavasti:

5	Valitse Käytännöt Käyttäjien oikeudet.

6	Valitse Näytä kaikki käyttöoikeudet.

MTS:n asentaminen käyttämään Oracle-tietokantoja

Nämä tiedot korvaavat aiemmat versiot Oraclen ja Microsoft Transaction Serverin yhteensopivuustiedoista, mukaan lukien Microsoft Transaction Server 2.0:n käytöaikaiset ohjeet.

Voit asettaa MTS-tapahtumakomponentit käyttämään Oracle 7.3.3 -tietokantaa ODBC:n kautta. MTS on yhteensopiva seuraavien tuotteiden kanssa: Oracle 7 Workgroup Server for Windows NT, Oracle 7 Enterprise Server for Windows NT, Oracle 7 Enterprise Servers on Unix ja Oracle Parallel Server on Unix.

MTS-komponenttisi voi myös käyttää Windows NT- tai Unix-järjestelmässä sijaitsevaa Oracle 8 -tietokantaa, jos Microsoft Transaction Server -komponentti käyttää Oracle 7.3.3 -asiakasohjelmistoa. MTS ei tue Oracle 8 -asiakasohjelmistoa.

Tämä jakso sisältää seuraavat aiheet:

•	Tarvittava ohjelmisto

•	Oracle-tuen asentaminen

•	MTS:n Oracle-tuen asennuksen ja kokoonpanoasetusten määrittämisen testaaminen

•	Asennuksen kelpoisuuden tarkistaminen ja kokoonpanoasetusten määrittäminen Sample Bank -sovelluksen avulla

•	Oraclen ja Microsoft Distributed Transaction Coordinatorin hallinta

•	MTS:n Oracle-tuen tunnetut rajoitukset

Tarvittava ohjelmisto

Oraclen tietokantojen käyttämiseen MTS-komponenttien avulla tarvitaan seuraavat ohjelmistot:

Komponentti:	Versio:
Oracle-tietokanta Windows NT -käyttöjärjestelmässä	7.3.3 ja päivitysversio 4 tai uudempi
Oracle-tietokanta UNIX-käyttöjärjestelmässä	7.3.3 ja päivitykset
Oracle SQL*Net	2.3.3 ja päivitysversio 2.3.3.0.3 tai uudempi
Oracle Ociw32.dll	1.0.0.5 tai uudempi
Oracle Sqllib18.dll	1.8.3.0.1 tai uudempi
Oracle Xa73.lib	7.3.3.2.0 tai uudempi
Microsoft Transaction Server 2.0	2.0
Microsoft ODBC -ohjain Oraclea varten (Msorcl32.dll)	02.73.7283.1 tai uudempi
ActiveX Data Objects (ADO)	1.5
Tärkeä huomautus: Ohjelmiston aiemmat versiot eivät välttämättä toimi oikein. Varmista, että asennat ohjelmistojen nämä tai näitä uudemmat versiot. Useimmat Microsoft Transaction Serverin Oracle-yhteensopivuusongelmat johtuvat väärästä versiosta.

Oracle-tietokanta Windows NT -käyttöjärjestelmässä

Jos Oracle-tietokantasi sijaitsee Windows NT -järjestelmässä, voit asentaa joko Oracle 7.3.3 Workgroup Serverin Windows NT -version tai Oracle 7.3.3 Enterprise Serverin Windows NT -version. Oracle 7.3.2:ta ja Oracle for Windows NT:n aiempia versioita ei tueta, ja niitä ei voi käyttää MTS:n tapahtumien kanssa.

Sinun on asennettava yllä olevassa taulukossa mainittu Oracle 7.3.3 -päivitysversio. Oracle 7.3.3 -versio ei toimi MTS:n kanssa, ellei päivitysversiota ole asennettu.

Jos haluat Oraclen päivitysversion, toimita Oraclen käyttäjätuelle ongelmaraportti. Tätä päivitysversiota ei ollut saatavilla Oraclen julkisesta Web-sivustosta näitä julkaisutietoja kirjoitettaessa.

Voit asentaa Oracle 8:n Windows NT -käyttöjärjestelmässä, jos Microsoft Transaction Server -komponenttisi käyttävät Oracle 7.3.3 -asiakasohjelmistoa. MTS ei tue Oracle 8 -asiakasohjelmistoa.

Oracle-tietokanta UNIX-käyttöjärjestelmässä

Jos Oracle-tietokantasi sijaitsee UNIX-järjestelmässä, sinun on asennettava UNIX-järjestelmää vastaava Oraclen versio 7.3.3 tai uudempi. Useimmiten on asennettava myös Oracle for UNIX -ohjelmiston Oracle 7.3.3 -päivitysversio.

Tarkista Oracle-asiakaspalvelusta Oracle 7.3.3 -päivitysversion tarpeellisuus käytössä olevalle UNIX-käyttöjärjestelmälle. Kerro heille, että käytät UNIX-käyttöjärjestelmässä sijaitsevaa Oracle-tietokantaa Oracle 7.3.3:n Windows NT -version tukeman XA-tapahtumienhallinnan kanssa.

Seuraavien päivitysversioiden tiedetään toimivan:

Käyttöjärjes-telmä:	Oraclen päivitysversio:
HP 9000	7.3.3.3
IBM AIX	7.3.3.2
Sun Solaris	7.3.3.2
Voit asentaa Oracle 8:n UNIX-käyttöjärjestelmässä, jos Microsoft Transaction Server -komponenttisi käyttävät Oracle 7.3.3 -asiakasohjelmistoa. MTS ei tue Oracle 8 -asiakasohjelmistoa.

Oracle-asiakkaat Windows NT- ja Windows 95 -käyttöjärjestelmissä

Jos Microsoft Transaction Server -komponenttisi käyttävät Windows NT- tai Windows 95 -etäjärjestelmässä sijaitsevaa Oracle-tietokantaa, varmista, että Microsoft Transaction Server -järjestelmääsi on asennettu seuraavat Oraclen asiakasohjelmistot. Varmista myös, että ohjelmistoista on asennettu oikeat versiot. Vaadittavat versiot luetellaan Tarvittavat ohjelmistot -kohdan alussa olevassa taulukossa.

Komponentti:

Oracle SQL*Net

Oracle Ociw32.dll

Oracle Sqllib18.dll

Oracle Xa73.lib

Oracle SQL*Net

Sinun on asennettava Oracle SQL*Netin oikea versio Microsoft Transaction Server -järjestelmääsi.

Oracle Ociw32.dll

Sinun on asennettava Oraclen Ociw32.dll-tiedoston oikea versio Microsoft Transaction Server -järjestelmääsi.

Oraclen Ociw32.dll-tiedoston seuraavan version tiedetään toimivan:

Versio 1, 0, 0, 5

Tiistai 18.3.1997 14:37:52

Koko 18 kt

Oraclen Ociw32.dll-tiedoston seuraava versio tiedetään vääräksi:

Versio 7.x

Torstai 1.2.1996 12:50:06

Koko 36 kt

Saimme tämän DLL:n oikean version Oracle 7.3.3:n CD-asennuslevyn \Win32\V7\Rsf73-kansiosta.

Oracle Sqllib18.dll

Sinun on asennettava Oraclen Sqllib18.dll-tiedoston oikea versio Microsoft Transaction Server -järjestelmääsi.

Oracle Xa73.lib

Sinun on asennettava Oraclen Xa73.dll-tiedoston oikea versio Microsoft Transaction Server -järjestelmääsi.

Microsoft Transaction Server 2.0

Microsoft Transaction Server 2.0:n on oltava asennettuna, jos haluat käyttää Oracle-tietokantaa Microsoft Transaction Serverin tapahtumienhallinnan kanssa.

Microsoft ODBC -ohjaimen Oracle-versio

Microsoft ODBC -ohjaimen Oracle-versio (Msorcl32.dll) 02.73.7283.1 tai uudempi vaaditaan. Windows NT 4.0 Option Packin asennusohjelma asentaa tämän DLL:n automaattisesti.

Jos haluat käyttää Oracle-tietokantoja, suosittelemme uuden Oracle 2.0 ohjaimen asentamista, vaikka et tarvitsisikaan tapahtumienhallintatukea. Ohjaimen uuden version suorituskyky on parempi kuin korvattavan Oracle 1.0 -ohjaimen. Ohjaimen versio 1.0 sarjoitti kaikki toiminnot ohjaimen tasolla, ja pyynnöt käsiteltiin ohjaimen kautta yksisäikeisesti. Oracle 2.0 -ohjain sarjoittaa kaikki toiminnot yhteyden tasolla. Tällöin erilaisia yhteyksiä tietokantoihin voidaan käyttää rinnakkaisesti.

ActiveX Data Objects (ADO)

Jos sovelluksesi käyttävät ADO:ta , sinun on asennettava ADO:n versio 1.5. ADO:n aikaisemmat versiot eivät toimi uuden ODBC 3.5 -ohjaintenhallinnan kanssa. ADO 1.5 sisältyy Windows NT 4.0 Option Packiin.

Oracle-tuen asentaminen

MTS-tapahtumakomponenttien Oracle-tuen asentaminen

1	Asenna Oraclen versio 7.3.3 Oracle-tietokantasi palvelinjärjestelmään.

Jos Oracle-tietokantasi sijaitsee Windows NT -järjestelmässä, asenna Oracle 7.3.3 Windows NT:ssä.

Jos Oracle-tietokantasi sijaitsee UNIX-järjestelmässä, asenna Oracle 7.3.3 UNIX:ssa.

Varmista, että olet asentanut Oraclen Ociw32.dll-tiedoston oikean version, kuten kohdassa Tarvittava ohjelmisto neuvotaan.

2	Asenna Oracle 7.3.3:n tarvittava päivitysversio Oracle-tietokantasi palvelinjärjestelmään.

Jos Oracle-tietokantasi sijaitsee Windows NT -käyttöjärjestelmässä, asenna kohdassa Tarvittava ohjelmisto mainittu Oracle 7.3.3:n päivitysversio.

Jos Oracle-tietokantasi sijaitsee UNIX-käyttöjärjestelmässä, asenna kohdassa Tarvittava ohjelmisto mainittu käyttämäsi UNIX-version Oracle 7.3.3:n päivitysversio.

3	Asenna Oracle 7.3.3 -asiakasohjelmisto.

Jos Microsoft Transaction Server -komponenttisi käyttävät Windows NT- tai Windows 95 -etäjärjestelmässä sijaitsevaa Oracle-tietokantaa, varmista, että Microsoft Transaction Server -järjestelmääsi on asennettu oikeat Oraclen asiakasohjelmistot.

Asenna Oraclen vaadittu päivitysversio Microsoft Transaction Server -järjestelmääsi ja varmista, että asiakasohjelmisto vastaa kohdassa Tarvittava ohjelmisto lueteltua versiota.

4	Asenna Microsoft Transaction Server 2.0.

Kun asennat Microsoft Transaction Server 2.0:n, seuraavat ohjelmistot asennetaan:

•	Microsoft Transaction Server 2.0 ja Microsoft OCI -liittymä

•	Microsoft ODBC 3.5 Driver Manager

•	Microsoft ODBC -ohjaimen Oracle-versio

•	ADO 1.5.

5	Poista tiedosto Dtcxatm.log.

Jos et ole asentanut Microsoft Transaction Server 2.0:n beetaversiota, ohita tämä vaihe.

Jos olet aiemmin asentanut Microsoft Transaction Server 2.0:n beetaversion, etsi järjestelmästäsi Windowsin Resurssienhallinnan avulla tiedostoa Dtcxatm.log. Jos tämä tiedosto löytyy, lopeta Microsoft DTC -palvelu ja poista tiedosto.

Tiedosto Dtcxatm.log pitää poistaa heti Microsoft Transaction Server 2.0:n beetaversion päivittämisen jälkeen. Tämän jälkeen tiedosto saattaa sisältää tärkeitä palautustietoja.

6	Ota käyttöön Oraclen XA-tuki.

Ota Oraclen XA-tapahtumatuki käyttöön seuraavasti:

1.	Oracle-järjestelmänvalvojan on luotava V$XATRANS$-näkymiä. Järjestelmänvalvoja voi tehdä tämän suorittamalla Oraclen toimittaman komentosarjan nimeltä "Xaview.sql". Tiedosto sijaitsee yleensä kansiossa C:\Orant\Rdbms73\Admin.

2.	Oracle-järjestelmänvalvojan on määritettävä yleiset SELECT-oikeudet näille näkymille.

Grant Select on V$XATRANS$ to public.

1.	Valitse Oracle Instance Managerin View-valikosta kohta Advanced Mode ja valitse vasemmassa ruudussa Initialization Paramaters. Valitse oikeassa ruudussa Advanced Tuning ja suurenna "distributed_transactions" -parametrin arvoa niin, että se sallii useampia rinnakkaisia MTS-tapahtumia, jotta tietokanta voidaan päivittää yhdellä kerralla.

Lisätietoja Oraclen XA-tapahtumatuen määrittämisestä on Oracle Serverin käyttöoppaassa.

2	Määritä yhdistetyn suojauksen asetukset

Oracle-tietokannat käyttävät samaa suojausta kuin Windows NT, eli tietokannan käyttäjien käyttöoikeudet tarkistetaan Windows NT -käyttöoikeuksien avulla. Windows NT -käyttäjät voivat näin käyttää sekä Oraclea että Windows NT:tä ilman erillistä käyttäjätiliä ja salasanaa. Käyttäjien tarvitsee ylläpitää ainoastaan yhtä käyttäjätiliä ja salasanaa sekä Windows NT:lle että Oraclelle.

Jos käyttämäsi MTS-komponentit välittävät käyttäjätilin ja salasanan joka kerran muodostaessaan yhteyden Oracle-tietokantaan, yhdistetty suojaus ei ole käytössä. Sovellusten käyttäjätilien ja salasanojen määrittäminen suoraan tai epäsuorasti ODBC DSN:n kautta ei vaikuta asiaan Yhdistetty suojaus on poissa käytössä kummassakin tapauksessa, joten voit siirtyä seuraavaan kohtaan.

Jos käytät yhdistettyä suojausta, MS DTC:hen on määritettävä Oracle-tietokannan hyväksymä käyttäjänimi ja salasana. Tämä johtuu siitä, että MS DTC avaa Oracle-tietokannan sen palauttamisen yhteydessä ja ilmoittaa, missä tilassa selvittämättömät tapahtumat ovat. Lisätietoja on kohdassa "Microsoft Distributed Transaction Coordinatorin käyttämän käyttäjätilin vaihtaminen". Tarkista Oraclen suojauksenhallintatyökalujen avulla, että MS-DTC:hen määritetyllä käyttäjänimellä voi käyttää Oracle-tietokantaa.

Lisätietoja Oraclen yhdistetyistä Windows NT -suojausominaisuuksista on Oraclen käyttöohjeissa.

8	Määritä Oraclen asetukset tukemaan useampia yhteyksiä

Jos haluat muodostaa useita kymmeniä yhteyksiä Oracle-tietokantaan, Oracle-palvelin on määritettävä tukemaan ylimääräisiä tietokantayhteyksiä. Lisätietoja on kohdassa "Oraclen määrittäminen tukemaan useita yhteyksiä".

MTS:n Oracle-tuen asennuksen ja kokoonpanoasetusten määrittämisen testaaminen

Kun asennus ja kokoonpanomääritysten asettaminen on valmis, Oracle-asennuksen ja kokoonpanoasetusten kelpoisuus on tarkistettava MTS:n mukana toimitetun Oraclen testiohjelman avulla. Oraclen testiohjelma käyttää Oraclen OCI XA -liittymää paljolti samaan tapaan kuin MTS.

Testiohjelma selvittää, voiko Oracle-tietokantaan muodostaa yhteyden Oraclen XA-ominaisuuden avulla. Testiohjelma käyttää Oraclen vakioliittymiä ja tapahtumaominaisuuksia. Se ei käytä Microsoft Transaction Serveriä tai Microsoft Distributed Transaction Coordinatoria. Testiohjelman mahdolliset virheet ovat siis Oracle-järjestelmän asennuksen tai kokoonpanoasetusten virheitä. Jos Oraclen testiohjelma epäonnistuu, asenna ja määritä Oraclen asetukset uudelleen tai ota yhteyttä Oraclen tuotetukeen.

Oraclen testiohjelman suorittaminen

9	Tarkista, että olet asentanut ohjelmistojen oikeat versiot, jotka on mainittu kohdassa Tarvittava ohjelmisto.

2	Luo ODBC DSN, joka viittaa Oracle-tietokantaasi. Varmista, että DSN käyttää uutta Microsoft Oracle ODBC 2.0 -ohjainta.

3	Varmista, että olet ottanut Oraclen XA-tuen käyttöön.

Poista kaikki Oraclen jäljitystiedostot siitä tietokoneesta, joka sisältää Oracle-tietokantaan yhdistetyt MTS-komponentit. Voit asettaa Windowsin Resurssienhallinnan etsimään ja poistamaan kaikki *.trc-tiedostot.

Jos Oraclen testiohjelma epäonnistuu, jäljitystiedostot saattavat auttaa ongelman ratkaisemisessa. Vanhentuneiden jäljitystiedostojen poistaminen helpottaa uusien tiedostojen löytämistä.

5	Jos olet aiemmin asentanut Microsoft Transaction Server 2.0:n beetaversion, etsi järjestelmästäsi Windowsin Resurssienhallinnan avulla tiedostoa Dtcxatm.log. Jos tämä tiedosto löytyy, lopeta Microsoft DTC -palvelu ja poista tiedosto.

Jos et ole asentanut Microsoft Transaction Server 2.0:n beetaversiota, ohita tämä vaihe.

Tiedosto Dtcxatm.log pitää poistaa heti Microsoft Transaction Server 2.0:n beetaversion päivittämisen jälkeen. Tämän jälkeen tiedosto saattaa sisältää tärkeitä palautustietoja.

6	Käynnistä MS-DOS-komentoriviltä Oraclen testiohjelma (TestOracleXAConfig.exe) ja anna Oracle-palvelimen käyttäjätunnuksesi, salasanasi ja service_name-arvo. Esimerkiksi:

c:>TestOracleXaConfig.exe  -U<käyttäjätunnus> -P<salasana>

-S<Service_Name, kuten se on TNS-tiedostossa määritetty>.

Jos käynnistät testiohjelman ilman parametreja, se tuo näkyviin ohjeet, joista ilmenevät tarvittavat parametrit.

Testiohjelma tuo näkyviin tietoja jokaisesta suorittamastaan Oracle-toiminnosta ja siitä, onnistuiko toiminto.

7	Jos Oracle-testiohjelma voi muodostaa yhteyden Oracle-tietokantaan ilman virheitä, on hyvin todennäköistä, että Oraclea voi käyttää myös MTS:n kanssa. Jos Oraclen testiohjelma ilmoittaa virheestä, toimi seuraavasti:

•	Kirjoita tarkasti muistiin testiohjelman antama virheilmoitus.

•	Tutki testiohjelman luomaa jäljitystiedostoa. Oraclen jäljitystiedot sijaitsevat *.trc-tiedostossa. Tämä jäljitystiedosto sisältää yksityiskohtaisia virhetietoja, joiden avulla ongelmia voidaan ratkaista.

•	Ota yhteyttä Oraclen-tuotetukeen, jos tarvitset apua.

Asennuksen kelpoisuuden tarkistaminen ja kokoonpanoasetusten määrittäminen Sample Bank -sovelluksen avulla

Kun olet tarkistanut Oracle-asennuksen ja kokoonpanomäärityksen kelpoisuuden Oraclen testiohjelman avulla, voit käyttää Microsoft Transaction Serverin mukana toimitettua Sample Bank -sovellusta varmistaaksesi, että Microsoft Transaction Server voi käyttää Oracle-tietokantaasi.

Oracle-tuen kelpoisuuden tarkistaminen Sample Bank -sovelluksen avulla

1	Varmista MTS:n mukana toimitetun Oraclen testiohjelman avulla, että olet asentanut Oracle-järjestelmän ja määrittänyt sen kokoonpanoasetukset oikein. Jos Oraclen testiohjelma epäonnistuu, sinun on korjattava ongelma, ennen kuin jatkat.

2	Luo Oracle-tietokantapalvelimelle taulukko "Tili". Seuraava esimerkki havainnollistaa Tili-taulukon luomista:

Omistaja	pekka

Taulukon nimi	Tili

Sarake 1	Tilinro	tyyppiä  NUMERO

Sarake 2	Saldo	tyyppiä  NUMERO

3	Täytä taulukkoon ainakin kaksi riviä. Seuraava taulukko havainnollistaa rivien täyttämistä.

Tilinro	Saldo

1	1000

2	1000

4	Luo DSN-tiedosto ODBC-kokoonpanomääritystyökalun avulla. Tallenna DSN-tiedosto nimellä "MTSEsimerkki". Lisää käyttäjän salasana päivittämällä DSN-tiedosto manuaalisesti. Seuraava esimerkki havainnollistaa salasanan lisäämistä DSN-tiedostoon.

[ODBC]

DRIVER=Microsoft ODBC for Oracle

UID=pekka

PWD=salasana

ConnectString=palvelin

SERVER=palvelin

5	Tallenna DSN-tiedosto ja suorita Sample Bank -asiakasohjelma.

Oraclen ja Microsoft Distributed Transaction Coordinatorin hallinta

DLL-tiedostojen nimien muuttuminen Oraclen tulevissa versioissa.

Oracle vaihtaa joskus DLL-tiedostojen nimiä tuotteen eri versioiden välillä. Microsoft Transaction Server luottaa siihen, että Oraclen joidenkin DLL-tiedostojen nimet ovat tiedossa. MTS:n nykyinen versio etsii Oracle 7.3.3:n mukana toimitettujen DLL-tiedostojen nimiä. Jos Oracle nimeää nämä DLL-tiedostot uudelleen, sinun on muokattava rekisterin seuraavien avaimien arvoja:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Transaction Server\Local Computer\My Computer

Tämän avaimen alla on kaksi merkkijonolla nimettyä arvoa.

•	OracleXaLib	xa73.dll

•	OracleSqlLib	sqllib18.dll

Microsoft Distributed Transaction Coordinatorin käyttäjätilin vaihtaminen

Jos määrität Microsoft Distributed Transaction Coordinatorin (DTC) käyttämään muuta kuin järjestelmätiliä, sinun on määritettävä Järjestelmänvalvojat-ryhmään kuuluva tili. Muussa tapauksessa MS DTC:n käynnistäminen saattaa epäonnistua, ja Windows NT:n tapahtumalokiin kirjataan seuraava sanoma:

XATM:n lokiobjekti ei onnistunut asettamaan lokin salausavainta.

MS DTC:n käyttäjätunnuksen voi määrittää seuraavasti:

1	Lopeta MS DTC.

2	Napsauta Käynnistä-painiketta ja valitse Asetukset Ohjauspaneeli.

3	Kaksoisnapsauta Ohjauspaneelin Palvelut-kuvaketta.

4	Kaksoisnapsauta Palvelu-luetteloruudun vaihtoehtoa MS DTC.

5	Valitse Kirjaudu nimellä sekä määritä käyttäjänimi ja salasana.

6	Käynnistä MS DTC.

Oraclen määrittäminen tukemaan useita yhteyksiä

Jos haluat muodostaa useita kymmeniä yhteyksiä Oracle-tietokantaan, Oracle-palvelin on määritettävä tukemaan ylimääräisiä tietokantayhteyksiä.

Jos et tee tätä, saatat havaita seuraavia ongelmia:

•	SQLConnect-kutsuja epäonnistuu.

•	Kirjautuminen kutsuvan objektin tapahtumaan epäonnistuu, mikä saattaa aiheuttaa Oraclen jäljitystiedostossa seuraavia virheitä:

•	Liian monta istuntoa

•	TNS-palvelin ei löydä palvelimen nimeä

•	Liian monta hajautettua tapahtumaa.

•	Aikakatkaisu käynnistyy tietokantalukituksia odotettaessa. Näin voi käydä, jos Oraclessa on samanaikaisia aktiivisia tapahtumia enemmän kuin siihen määritettyjä lukituksia.

•	Selvittämättömien tapahtumien aiheuttamista lukituksista johtuvia tietueristiriitoja.

Jos ongelmia ilmenee, muuta Oracle-palvelimen seuraavien määritysparametrien arvoja suuremmaksi:

•	istunnot

•	distributed_lock_timeout

•	distributed_transactions

•	dml_locks

•	max_transaction_branches

•	open_cursors

•	processes

•	queuesize.

Sessions

Sessions-määritysarvo on yleensä sovellusten käyttämien tietokantayhteyksien oletettu määrä kerrottuna kolmella.

Queuesize

Jos Oraclen tarkkailuprosessin queue size -arvo on liian pieni, Oraclen tarkkailuprosessi voi jäädä jälkeen ja hylätä tietokannan avaamispyynnön. Tämä tapahtuu, jos Oraclen tarkkailuprosessi vastaanottaa liian monta yhteyspyyntöä ja sen jonon koko ylittyy. Tämän virheen kohtaava asiakas palauttaa virhesanoman "ORA-12541: No Listener" ja asiakkaan loki- sekä jäljitystiedostoihin kirjataan sanoma ECONREFUSED.

Virheen korjaaminen:

1	Lopeta tarkkailuprosessi Oracle-tietokantapalvelimen sisältävästä järjestelmästä.

2	Muuta Oracle-tietokantapalvelimen Listener.ora-, Tnsnet.ora- ja Names.ora-tiedoston QUEUESIZE-parametrin arvoa suuremmaksi. Muuta jonon koko sellaiseksi, että se vastaa yhtäaikaisten tai lähes yhtäaikaisten yhteyspyyntöjen oletettua määrää.

Suosittelemme suurta QUEUESIZE-arvoa, koska Oracle-järjestelmä avaa yleensä useampia kuin yhden istunnon jokaista sovelluksen avaamaa tapahtumayhteyttä kohden. Tämän seurauksena Oraclen tarkkailuprosessin jono saattaa täyttyä ja sen koko saattaa ylittyä.

Jos pyyntöjen määräksi oletetaan 100, muuta Listener.ora-tiedostoa seuraavasti:

QUEUESIZE = 100

3	Käynnistä Oraclen tarkkailuprosessi uudelleen.

MTS:n Oracle-tuen tunnetut rajoitukset

ADO 1.5 on pakollinen ODBC 3.5:n kanssa

Jos sovelluksesi käyttää ADOa, varmista, että olet asentanut ADO 1.5:n. Lisätietoja on kohdassa Tarvittava ohjelmisto.

Digital Alpha -ympäristö ei tue Oraclea.

Oracle-tietokantayhdistäminen ei ole tuettuna Digital Alpha -ympäristössä käytetyissä Microsoft Transaction Server -komponenteissa. Digital Alpha -ympäristön Oracle-tuki lisätään tulevaan versioon.

Oracle Ociw32.dll-tiedoston versio-ongelma

On hyvin tärkeää, että Ociw32.dll-tiedoston oikea versio on asennettuna koneessasi. Tarkista DLL:n versio joka kerta, kun asennat Oraclen tai Microsoft Transaction Serverin uudelleen.

Oraclea ei voi käyttää MSCS (Wolfpack) -klusterista

MSCS (Wolfpack) -klustereissa sijaitsevat Microsoft Transaction Server -sovellukset eivät voi käyttää XA-tietokantoja, mukaan lukien Oracle-tietokannat. Tämä johtuu Microsoft Distributed Transaction Coordinatorin rajoituksesta.

Tällä hetkellä Microsoft Distributed Transaction Coordinator tallentaa XA-palautuksiin liittyvät salaustiedot Windows NT -rekisteriin. Näitä tietoja ei voi jakaa MSCS-klusterin kahden solmun välillä. Tämän takia Microsoft DTC:tä ei voi käyttää XA-yhteensopivien tietokantojen kanssa klusteriympäristössä. Tämä rajoitus pyritään poistamaan tulevista versioista.

MS DTC -etätietokoneiden väliset yhteydet ja suojaus

Jos sovellus suorittaa tapahtumia kahdessa tai useammassa tietokoneessa, näiden tietokoneiden MS DTC:t on määritettävä kommunikoimaan keskenään. MS DTC käyttää oletusarvoisesti järjestelmätilin tunnistetietoja. Eri tietokoneissa sijaitsevat MS DTC:t voivat kommunikoida keskenään vain, jos molempien tietokoneiden vierastilit ovat käytössä. Jos vierastili poistetaan käytöstä toisessa koneessa tai sillä Windows NT -toimialueella, johon nämä tietokoneet kuuluvat, MS DTC:hen on määritettävä toinen käyttäjätunnus, joka voi kommunikoida etätietokoneen kanssa. Lisätietoja on kohdassa "Microsoft Distributed Transaction Coordinatorin käyttämän käyttäjätilin vaihtaminen".

MS DTC:n käyttäminen MSCS-ympäristössä edellyttää QFE:tä

MS DTC:n käyttäminen MSCS-ympäristössä edellyttää Windows NT QFE Q116844:n asentamista. QFE:n avulla voidaan korjata etätoimintosarjakutsuihin (RPC) liittyvä ongelma, joka aiheuttaa MS DTC -asiakkaan jumiutumisen sen yrittäessä muodostaa yhteyttä klusteripalvelimella sijaitsevaan MS DTC:hen. Tämä korjaus kuuluu myös Windows NT QFE1:een, jonka voit ladata Windows NT Option Pack Web -sivustosta.

MSCS-palvelimien Etäpalvelimen nimi -ominaisuudeksi on määritettävä näennäispalvelin

Klusteripalvelimissa Etäpalvelimen nimi -ominaisuuden arvoksi on asetettava näennäispalvelimen nimi MTS Explorerin avulla. Näin etäasiakkaat voivat käyttää klusterin sisäisiä MTS-komponentteja. Lisäksi tällä varmistetaan, että asiakkaat viittaavat virheen sattuessa klusteriin eivätkä klusterin sisältämään solmuun.

MSCS-klustereissa sijaitsevien MTS-pakettien tunnistetietojen on kuuluttava Järjestelmänvalvojat-ryhmään

MSCS-klustereissa sijaitsevien MTS-pakettien tunnistetiedot sisältävän käyttäjätilin on oltava joko järjestelmänvalvojatili tai sellainen, jolla on Full Control -käyttöoikeus klusteriin. MTS ei pysty muodostamaan yhteyttä MS DTC:hen, jos pakettia suoritetaan muilla kuin järjestelmänvalvojan tunnistetiedoilla.

MSCS-klustereissa sijaitseva MTS vaatii kaikille solmuille saman Windows NT -kansiopolun

MTS vaatii, että Windows NT -kansion polku on sama MSCS-klusterin kaikille solmuille (esimerkiksi C:\Winnt).

Lopeta MSCS-klusteriresurssit ennen MTS:n asennusta

Ennen MTS-asennusohjelman suorittamista on lopetettava kaikki MSCS-klusteriresurssit (kuten SQL Server), joihin MTS:n asennus vaikuttaa.

SQL Server 6.5:n asentaminen MTS:n asentamisen jälkeen

SQL Server 6.5:n voi asentaa MTS:n asentamisen jälkeen. On kuitenkin suositeltavaa, että SQL Server 6.5 asennetaan ennen MTS:n asentamista. Jos SQL Server 6.5 asennetaan MTS:n asentamisen jälkeen, MTS:n asennusohjelma yrittää varmistaa MS DTC:n toiminnan.

Suorita Instcat.sql-komentosarja

MTS sisältää käytännöllisen Instcat.sql-komentosarjan. Tämä komentosarja päivittää luetteloon tallennetut toimintosarjat SQL Server ODBC -ohjainta varten. Jos et ole vielä suorittanut komentosarjaa, suorita se SQL Serverin Isql-apuohjelman avulla.

Korjauksia suojausohjeisiin

Suojauksen käyttöoikeuksien vahvistus on oletusarvon mukaan poissa käytössä.

Paketin tunnistetiedoiksi ei voi määrittää ryhmää.

MTS vahvistaa paketin tunnistetietojen määrittämisen yhteydessä annetun salasanan. Jos tilin salasana muutetaan, mutta muutosta ei päivitetä MTS Exploreriin, pakettia ei voi suorittaa.

MS DTC:n lokitiedoston voi pakata

MS DTC:n lokitiedosto voi sijaita myös pakatussa kansiossa. Tämä heikentää kuitenkin suorituskykyä, eikä lokitiedoston pakkaamista tai sen sijoittamista pakattuun kansioon suositella. MS DTC:n on purettava lokitiedoston pakkaus, ennen kuin tiedostoa voidaan käyttää.

Ongelmia MS DTC -lokitiedoston asettamisessa alkutilaan Windows 95:ssä

Kun MS DTC:n lokitiedosto asetetaan alkutilaan Windows 95:ssä, näkyviin saattaa tulla "MTxOCI"-valintaikkuna, jonka jälkeen näkyviin tulee "MS DTC:n lokitiedoston luominen epäonnistui." -valintaikkuna. Jos näin tapahtuu, sinun on poistettava MS DTC:n automaattinen käynnistys käytöstä seuraamalla kohdan "MTS-tapahtumien valvominen Windows 95:ssä" ohjeita. Käynnistä tietokone uudelleen ja aseta lokitiedosto alkutilaan. Tämän jälkeen voit ottaa MS DTC:n automaattisen käynnistyksen uudelleen käyttöön.

MS DTC:n lokitiedoston alkutilaan asettamisen muut ongelmat voi korjata sulkemalla MTS Explorerin, käynnistämällä MTS Explorer uudelleen ja yrittämällä alkutilaan asettamista tämän jälkeen uudelleen. Joskus tämän onnistuminen vaatii useita yrityksiä.

MTS-tapahtumien valvominen Windows 95:ssä

Microsoft Windows 95 -tietokoneiden MS DTC:n käynnistys- ja lopetusohjeiden pitäisi kuulua seuraavasti:

Microsoft Distributed Transaction Coordinator (MS DTC) käynnistyy oletusarvon mukaan automaattisesti Windows NT- tai Windows 95 -käyttöjärjestelmän käynnistyessä. Jos haluat estää MS DTC:tä käynnistymästä automaattisesti Windows 95 -tietokoneen käynnistämisen jälkeen, etsi Rekisterieditorin avulla avain HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServices ja poista siitä arvo MSDTC. Jos haluat ottaa MS DTC:n automaattisen käynnistämisen uudelleen käyttöön, luo Rekisterieditorin avulla rekisterin avaimeen HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServices arvo MSDTC, jonka arvo on msdtcw -start.

Huomaa, että palvelun nimi on msdtcw eikä msdtc ja että nimessä on välilyönti ennen yhdysmerkkiä.

MTS 2.0 -tietokoneiden etähallintaa ei voi käyttää MTS 1.x -tietokoneista

MTS 2.0 -versiota ei voi etähallita MTS:n aikaisempaa versiota käyttävästä tietokoneesta. Tämän yrittäminen palauttaa virhekoodin tai aiheuttaa MTS:n odottamattoman lopettamisen.

Yksittäisten pakettien lopettamista ei voi käyttää MTS 1.x -tietokoneen etähallinnan avulla

Yksittäisten pakettien lopettamista ei tueta MTS 1.x -tietokoneiden etähallinnassa.

Visual Basic 5.0:n lopettaminen ja MTS 2.0

Kun olet asentanut MTS 2.0:n, saatat kohdata käyttöoikeusvirheen Microsoft Visual Basic 5.0:n lopettamisen yhteydessä. Tämä on tunnettu Visual Basic 5.0 -virhe, jonka voi korjata asentamalla Visual Studio Service Pack 2:n osoitteesta http://www.microsoft.com/vstudio. Lisätietoja tästä ongelmasta on Knowledge Base -tietokannan artikkelissa Q167213.

Ylimääräisten palvelinprosessien syntyminen Windows 95:ssä.

Jos MTS:n palvelinprosessi keskeytyy yllättäen (nopean virhetilannelopetuksen, vahvistuksen tai käyttöoikeusvirheen takia), järjestelmä yrittää käynnistää sovellusta useita kertoja peräkkäin ja luo samalla useita MTS-prosesseja. (Ohjelman tulisi toimia siten, että kussakin paketissa on vain yksi MTS-prosessi.) Jos palvelinprosessi keskeytyy yllättäen, Windows 95 on käynnistettävä uudelleen.

Lukkiutumat Windows 95:ssä nimettyjä putkia käytettäessä

Jos Windows 95 -asiakkaan ja MS Distributed Transaction Coordinatorin (DTC) välillä käytetään yli 40:ää nimettyä putkea, prosesseja voi lukkiutua. Tämän ongelman voi ratkaista vaihtamalla ODBC-ohjaimen ja SQL Serverin väliseksi protokollaksi TCP/IP:n.

Komponentit ja TreatAs- sekä AutoTreatAs-rekisteriavaimien käyttäminen

Palvelimet voivat emuloida toisiaan COMin TreatAs- ja AutoTreatAs-rekisteriavaimien avulla. Esimerkki: Asiakas luo jonkin tietyn CLSID:n osan CoCreateInstance-toiminnon avulla. Jos TreatAs- tai AutoTreatAs-avain on jo olemassa rekisterissä kyseisen CLSID:n alla, COM luo sen sijaan tämän avaimen osoittaman osan. Näin asiakaspyyntö reitittyy käytännössä emuloivalle palvelimelle. (Sama reititys on mahdollinen myös ProgID:n avulla, jos asiakas viittaa palvelimiinsa ProgID:llä CLSID:n sijaan.)

Jos komponentteja emuloidaan TreatAs- tai AutoTreatAs-avaimen avulla, ne eivät ole kelvollisia MTS-komponentteja ja niitä ei voi tuoda. Jos emulointi lisätään vasta komponentin tuomisen jälkeen, komponentti pitää poistaa MTS-luettelosta ja korvata emuloivalla komponentilla.

Säikeistysmallien yhdistelmät palvelinprosessissa

Objektien suorittaminen samassa palvelinprosessin aktiviteetissa edellyttää, että objekteille on määritetty rekisteriin yhteensopivat säikeistysmallit. Objekteilla voi olla seuraavat säikeistysmalliyhdistelmät:

•	Apartment-, Both- tai Free-malli tai näiden yhdistelmä

•	vain Single-malli.

Tämä tarkoittaa, että yksisäikeisiä MTS-komponentteja ei voida luoda sellaisten Active Server Pages -sivujen avulla, jotka suoritetaan IIS:n tai prosessin eristystä käyttävän IIS-sovelluksen sisäisenä prosessina.

Älä luo CreateInstance-menetelmän avulla muita paikallisia palvelimia kuin MTS-palvelimia.

Muiden kuin paikallisten MTS-palvelimien luominen kontekstiobjektin CreateInstance-menetelmän avulla ei ole suositeltavaa. Tällaiset palvelimet eivät skaalaudu hyvin. Lisäksi järjestelmään voi tulla palvelimien ilmentymiä, joita ei voi lopettaa MTS:stä. Jos sinun on luotava paikallinen palvelin, joka ei ole MTS-palvelin, käytä CoCreateInstance-menetelmää.

Älä käytä COM-korvikkeita MTS:ssä, vaan lataa prosessinsisäiset palvelimet MTS-palvelinprosesseihin.

MTS:n suojaus ei toimi IIS-jäljittelyn kanssa

MTS:n roolipohjainen pakettien käytönvalvonta ei toimi kunnollisesti, jos pakettien edustakäsittelijänä toimii kanavointilaite, joka jäljittelee useita asiakkaita (esimerkiksi Internet Information Server). Tällaisissa ympäristöissä käytettävien MTS-pakettien suojaus on poistettava käytöstä.

Tämän voi korjata myös asentamalla Windows NT QFE1:n, jonka voit ladata Windows NT Option Pack Web -sivustosta. QFE:n asentamisen jälkeen roolipohjainen suojaus toimii IIS:n kanssa.

Kun luot prosessin eristystä käyttäviä suojattuja IIS-sovelluksia, IIS luo MTS-paketin, joka on asetettu suoritettavaksi muodossa IWAM_<tietokoneen nimi>. Jos haluat muuttaa näiden pakettien tunnistetietoja, lisää paketin uudet tunnistetiedot ryhmään "###MTS Trusted Impersonators". Jos tätä ei tehdä, suojaus ei toimi paketin kutsumissa muissa prosessin ulkopuolisissa MTS-komponenteissa. Tällöin kutsuja näkyy muodossa IWAM_<computer name> eikä IIS:n varsinaisena asiakkaana.

ErrorInfon käyttäminen ADO:n kanssa

ADO poistaa kaikki ErrorInfo-objektiin lisätyt tiedot Tämän ongelman voi kiertää koodipohjaisella ratkaisulla, joka pitää ottaa käyttöön virheenkäsittelyssä.

Visual Basic -koodi on seuraavankaltainen:

ErrorHandler:

    ' siivoaminen

    If Not adoRS Is Nothing Then

        Set adoRS = Nothing

    End If

    If Not adoConn Is Nothing Then

        Set adoRS = Nothing

    End If

    Err.Raise Err.Number, "Bank.Accout.Post", Err.Description

Exit Function

Visual C++ -koodi on seuraavankaltainen:

//

// ErrorInfo tallennetaan, koska seuraava

// ADO-siivouskoodi saattaa tyhjentää sen.

//

IErrorInfo * pErrorInfo = NULL;

GetErrorInfo(NULL, &pErrorInfo);

if (adoRsBalance) adoRsBalance->Release();

if (adoCoConnection) adoCoConnection->Release();

AtlReportError( CLSID_CAccount, pErrMsg, IID_IAccount, hr);

//

// Sijoita virhe takaisin TLS:ään

//

SetErrorInfo(NULL, pErrorInfo);

Visual J++ -koodi on seuraavankaltainen:

if (adoRsBalance != null) {

if (adoRsBalance.getState() == ObjectStateEnum.adStateOpen)

adoRsBalance.Close();

ComLib.release (adoRsBalance);

}

if (adoConn != null) {

if (adoConn.getState() == ObjectStateEnum.adStateOpen)

adoConn.Close();

ComLib.release (adoConn);

}

Huomautus:   Javassa kaikki tietuejoukot ja yhteydet on suljettava sekä ADO-objektit on vapautettava eksplisiittisesti.

Sample Bank -asiakasta ei ole ASP-versiona

MTS:n ohjeissa mainitaan virheellisesti, että Sample Bank -asiakkaasta toimitetaan myös Active Server Pages (ASP) -versio.

MTS 2.0 -komponenttien menetelmien enimmäismäärä on 1024

MTS 1.0:ssä komponenttikohtaisien menetelmien enimmäismäärä oli 100. MTS 2.0:ssa tämä enimmäismäärä on 1024 menetelmää.

RDO 2.0:aa käyttävissä komponenteissa voi ilmetä käyttöoikeusvirheitä monisuoritinkoneissa

RDO 2.0:aa käyttävissä komponenteissa, jotka ovat yhtä aikaa monen asiakkaan käytössä, voi ilmetä käyttöoikeusvirheitä. Tämä ongelma on havaittu palvelimissa, joissa on useita suorittimia. Ongelmaa ei ole havaittu ADOa käyttävissä komponenteissa.

Visual Basic -esimerkkikomentosarjojen sijainti

MTS-hallinnan automatisointiin tarkoitetut Visual Basic Scripting (VBScript) -komentosarjat sijaitsevat \Ohjelmatiedostot\Mts\Samples-kansiossa eikä ohjeissa mainitussa \Ohjelmatiedostot\Mtx\Samples\Wsh-kansiossa.

Java Sample Bankin kääntäminen ei toimi Windows 95:ssä

Voit kääntää Java Sample Bank -komponentit Windows 95:ssä suorittamalla Midl.exe-ohjelmatiedoston tiedostolle Account.idl ja suorittamalla tämän jälkeen tiedoston Setjavadev.bat.

Microsoft Transaction Server API:n käyttäminen sovellusten kehittämiseen

Komponenttien kehittäminen Microsoft Visual C++:n avulla

MFC-laajennus-DLL:t

MTS-komponentteja ei tulisi luoda MFC-laajennus-DLL-muotoon, sillä tämän tiedostomuodon lataaminen onnistuu ainoastaan MFC-sovelluksilta. COM-komponentit, joita MTS-komponentit ovat, tulisi luoda siten, että ne voidaan ladata mihin tahansa prosessiin riippumatta siitä, minkä tyyppinen sovellus on käynnistänyt prosessin.

Lisätietoja MFC-laajennus-DLL:stä on Microsoft Visual C++ Programmer's Guide -oppaassa.

Komponenttien kehittäminen Microsoft Visual Basicin avulla

ObjectControl

•	ObjectControl-liittymä on C++:n IObjectControl-liittymän automaatiovastine. ObjectControl-liittymä ei ole tuettu, jos Microsoft Windows NT 4.0 Service Packin versiota 2 tai uudempi ei ole asennettu koneeseesi.

•	Nykyinen Microsoft Transaction Serverin suorituksen aikainen toteutus kutsuu Transaction Server -objektin CanBePooled -menetelmää, kuten Transaction Serverin käytönaikaisessa ohjeessa kerrotaan. Palautettavaa arvoa ei kuitenkaan oteta huomioon. Transaction Server vapauttaa objektin, vaikka TRUE palautettaisiin.

Mtx.exe-ohjelman lopettaminen Visual Basic 4.0 -komponentteja käytettäessä

Kun Visual Basic 4.0 -komponentteja käyttävä Mtx.exe-prosessi lopetetaan, koska mitään ei ole tapahtunut x minuuttiin, tapahtuu tunnettu Lukuoikeus-käyttörikkomus. Ongelma on tiedossa, mutta siihen ei ole vielä löydetty ratkaisua. Ongelman arvellaan ilmenevän todennäköisimmin silloin, kun samassa prosessissa käytetään useampaa kuin kahtaVisual Basic 4.0 -komponenttia. Ongelman voi kiertää määrittämällä paketin asetuksista "Älä lopeta suoritusta, vaikka mitään ei tapahdu". Ongelma esiintyy vain käytettäessä komponentteja, jotka on luotu käyttäen Visual Basic 4.0:aa — ongelma ei esiinny Visual Basic 5.0:aa käyttäen rakennettujen komponenttien yhteydessä.

Visual Basic 4.0:n RDO-objektien lukkiutumisen ehkäiseminen

Välttääksesi lukkiutumat RDO:ta käyttävissä palvelinkomponenteissa, älä päästä aktiivisen rdoResultset:n rdoConnect:n arvoa kasvamaan tai laskemaan käytettävyysarvojen ulkopuolelle. rdoResultset tai rdoConnection on suljettava manuaalisesti lukkiutuman välttämiseksi. Seuraava toimintosarja aiheuttaa lukkiutuman:

1	Luo palvelinkomponentin esiintymä. Kutsu menetelmää, joka luo rdoConnection:n ja sen jälkeen rdoResultset:n Voit noutaa rdoResultset:sta, mutta älä tyhjennä tai sulje sitä.

2	Vapauta esiintymä. (Sekä yhteys että tulosjoukko joutuvat käytettävyysarvojen ulkopuolelle, joten tarvittavia ODBC-kutsuja ei tehdä heti. Sen sijaan piilotettuun ikkunaan välitetään sanoma, joka pyytää suorittamaan toiminnon SQLFreeStmt+SQLDisconnect+SQLFreeConnect).

3	Luo palvelinkomponentista toinen esiintymä. Luo rdoConnection ja yritä päivittää edellisen vaiheen tulosjoukkoon kuuluva rivi. Lukkiutuma syntyy, koska kohdassa 1 luodun tulosjoukon lukituksia ei ole vapautettu, joten kohdassa 2 välitettyä sanomaa käsittelevä sanomanvälitystoiminto ei pääse koskaan käynnistymään.

Lukkiutumisen voi ehkäistä sulkemalla tulosjoukon (tai yhteyden) manuaalisesti kohdan 1 lopussa, jolloin sovellus suorittaa lausekkeen (ja yhteyden) sulkemiseen tarvittavat ODBC-kutsut heti. Ongelman syy on piilotettuun ikkunaan välitetyn sanoman aiheuttama viive ODBC-yhteyden lopettavien lausekkeiden suorittamisessa.

MTS-luettelon ylläpito kehitettäessä komponentteja Visual Basicin avulla

Visual Basic 4.0 kirjoittaa OLE DLL -projektin kääntämisen yhteydessä kaikkien kyseisessä DLL:ssä sijaitsevien komponenttien kaikki rekisteriarvot uudelleen. Tämän lisäksi Visual Basic voi luoda DLL:ssä oleville komponenteille uusia GUID-tunnuksia (projektin määritysten mukaan). MTS-komponenttien rekisteröintimerkinnät MTS-luettelossa eivät näin ollen pidä enää paikkaansa.

Ongelmaan on kaksi ratkaisua. Ensinnäkin, voit napsauttaa MTS Explorerin Päivitä-painiketta tai valita Työkalut Päivitä kaikki osat. Viimeksi mainitulla komennolla Microsoft Transaction Server korjaa kaikkien Explorerin oikeanpuoleisessa ruudussa olevien komponenttien rekisterimerkintöjen epäjohdonmukaisuudet.

Jos asennat MTS:n kehitysversion, valitse VB Addin -vaihtoehto. Tämä valinta ottaa käyttöön toiminnon, joka automaattisesti päivittää komponentit niiden uudelleenluomisen jälkeen. Kun Visual Basic 4.0: käynnistetään seuraavan kerran, apuohjelma asennetaan Visual Basic IDE:hen. Voit myös ottaa toiminnon käyttöön tai poistaa sen käytöstä projektikohtaisesti valitsemalla Visual Basicissa Add-Ins MTxServer RegRefresh | AutoRefresh after compile. Jos haluat päivittää kaikki MTS-komponentit yhdellä kertaa, voit tehdä tämän milloin tahansa valitsemalla Add-Ins MTxServer RegRefresh | Refresh all components now.

Tärkeää:   Visual Basic -apuohjelma on päivitetty toimimaan Visual Basicin versioiden 4.0 ja 5.0 kanssa. Asennuksen jälkeen apuohjelma päivittää automaattisesti kaikkien käännösvaiheiden aikana tehdyt muutokset Transaction Server -luetteloon. Add-Ins-valikon automaattinen päivitys -vaihtoehto ei ole enää käytettävissä.

Apuohjelman avulla MTS-luettelo voidaan päivittää myös sellaisten Visual Basic -käännösten jälkeen, joissa komponenteille luodaan uusia GUID-tunnisteita. Visual Basicia voi estää luomasta uusia komponentti-GUID:tä myös Visual Basicin Project Options -valintaikkunan Compatible OLE Server -asetuksen avulla.

MTS-luettelon päivittäminen edellyttää, että komponenttien ProgID-tunnisteita ei ole muutettu. Visual Basic 4.0:ssa komponenttien ProgID:t muodostuvat seuraavasta yhteenliitoksesta: projektin nimi.luokan nimi. Jos jompaakumpaa muutetaan, komponentti (tai komponentit) on asennettava uudelleen MTS Explorerissa.

Jos luot komponetit Visual Basic 4.0:lla, mutta et ole valinnut Compatible OLE Server -asetusta, jokainen käännös korvaa vanhan CLSID:n ja IID:n. Tämä aiheuttaa ongelmia MTS-komponentteja kehitettäessä. Edes Visual Basic -apuohjelman ottaminen käyttöön ei poista ongelmia.

•	MTS Explorerin avulla liittymälle määritetyt roolit menetetään, koska liittymän IID on vanhentunut.

•	Etäkoneille jaetut välityspalvelimet ja rekisterimääritykset eivät enää viittaa käyttämääsi komponenttiin, ja ne pitää päivittää.

•	Sellaiset viedyt paketit, jotka sisältävät käyttämäsi komponentin, pitää viedä uudelleen, koska uuden komponentin GUID-tunnisteet eivät enää vastaa paketin määritystiedoston GUID-tunnisteita.


Tuotteessa esiintyvistä virheistä ja ongelmista ilmoittaminen (Lueminut)
Tuotteessa esiintyvistä virheistä ja ongelmista ilmoittaminen

Kun ilmoitat ongelmasta, kirjoita raporttiin seuraavat tiedot:

•	Virheen numero ja kuvaus.

•	Virheeseen liittyvät Windows NT:n tapahtumalokin sanomat. (Microsoft Transaction Server kirjaa virheet Windows NT:n tapahtumalokiin.) Jos virheitä ilmenee, tarkista Windows NT:n tapahtumaloki.

•	Asiakaskoneesi kokoonpanomääritys, jos mahdollista.

•	Palvelinkoneesi kokoonpanomääritys.

•	Ongelman aiheuttavat komponentit.

•	Komponentin kehittämiseen käytetty ohjelmointikieli (Microsoft Visual Basic, Microsoft Visual C++ ja niin edelleen).

•	Komponenttisi käyttämien liittymien tyypit. Esimerkiksi mukautetut liittymät, kaksoisliittymä tai Dispatch-liittymä.

•	ODBC:n versio, mikäli tarpeellista.

•	Resurssienhallintaohjelman nimi ja versio.

•	Kolmansien osapuolien ongelmia aiheuttavat komponentit, resurssijakelimet tai resurssinhallintaohjelmat.

•	Ohjelman koodin ongelmia aiheuttavat rivit, jos mahdollista.