[MSSQL] XML parser zegt dat ie te weinig geheugen heeft

Pagina: 1
Acties:

  • _Thanatos_
  • Registratie: Januari 2001
  • Laatst online: 15-05 14:44

_Thanatos_

Ja, en kaal

Topicstarter
(jarig!)
Ik wil graag met SQLXML een XML bestand inlezen met SQL server. Gewoon met een OPENXML query. In de XML zit een base64-encoded veldje, waar iets van 200KB aan data in zit. Echter als ik de query uitvoer krijg ik een foutmelding:
code:
1
2
XML parsing error: Onvoldoende opslagruimte beschikbaar om
deze bewerking te voltooien.

Nou, de server heeft uiteraard meer dan voldoende geheugen, en ook meer dan genoeg ruimte op de harddisk. Maar kennelijk is die 200KB (zo'n 300KB encoded) teveel voor het ding.

Ik verdenk eigenlijk dat de tempdb het niet toelaat, maar ik kan er helemaal naast zitten. Ook heb ik ondervonden dat de query werkt als een zonnetje, als ik het binaire veldje weglaat (en daarmee de base64-prut niet meeneem in de OPENXML query, maar nog wél in de XML laat staan). Ohja, de XML is uiteraard well-formed, dus daar kan ie alvast niet op stuklopen.

Help? :)

/edit
Als ik de base64 data kleiner maak, dan doet ie het op een gegeven moment wel. Want hij doet het niet bij 253KB, en bij 225KB wel, dus een beetje een vreemde grens. Je zou dan 256KB of 200KB verwachten...

/edit2
Lekker dan, als ik het WITH statement weglaat, dan crasht het proces :(
code:
1
2
SqlDumpExceptionHandler: Process 54 generated fatal exception c0000005
EXCEPTION_ACCESS_VIOLATION. SQL Server is terminating this process.


Ergens misschien een manier om die limiet gewoon te verhogen?

/edit3
Ok, als ik SQLXML 3.0 SP3 installeer en de SQL server opnieuw start, dan is het opgelost. Maar MS mag wel eens wat duidelijkere foutmeldingen verzinnen...

[ Voor 36% gewijzigd door _Thanatos_ op 11-11-2004 14:34 ]

日本!🎌