【发布时间】:2011-12-19 18:23:35
【问题描述】:
我正在 BIDS 2005 中开发一个包,它以针对非常大的输入文件的 XML (XSLT) 任务开始,并不断收到以下错误
[XML 任务] 错误:发生错误并显示以下错误消息: "抛出了 'System.OutOfMemoryException' 类型的异常。
我的工作站是 Win7 64 位 - 16 GIG Ram - i7 8 核处理器 3.5 gHZ。我在这个过程中运行任务管理器,它在运行过程中只使用了大约 7.5 gigs 的 ram,直到它因错误而崩溃。我正在针对我的本地 SQL 2008 R2 64 位实例运行。该软件包在 BIDS 中配置为在 64 位模式下运行。我已经用谷歌搜索了一段时间,但没有发现任何看起来很有希望的东西 - 有人遇到过这个并解决过吗? - 谢谢。
【问题讨论】:
-
当你说“非常大”时,你到底是什么意思? 100MB? 100Gb?
-
请提供源 XML 文档和转换的完整(但尽可能少)示例,以便人们重现问题。在没有这些信息的情况下,这根本不符合“问题”的条件。内存不足的原因有很多,这可能是无休止的递归,也可能是一个巨大的 XML 文档,其解析后的实例无法放入总可用内存中——这正是可以使用代码确定的原因你忘了给我们看。
-
如果你也能透露一些关于开发包的一般细节也会很有帮助
-
另外,如果 XML 文档的字符串表示大约或大于 3GB,则其解析的 XmlDocument 很可能不适合 16GB 的 RAM。
-
@Michael Kay - 大约 50 gig
标签: sql-server xml xslt ssis bids