- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用循环遍历游标的存储过程。在游标内,我正在调用一个 native 编译的存储过程。 native 编译的存储过程会插入到内存优化表中。
我的问题是一段时间后(大约 3 分钟)我遇到错误“资源池‘默认’中的系统内存不足,无法运行此查询”。
我追踪到了问题,似乎是插入语句(或其底层查询)造成了问题并增加了内存,这似乎在插入之后没有被释放,也没有在存储过程之后被释放。
我从大约 3 GB 的已用内存开始(在我的数据库上),当查询运行时它逐步增加到 12 GB(这是限制)并导致错误。报错后内存立马下降到3GB,这说明不可能是inserting table size本身的问题。在我的主存储过程中,它大约有 29 个循环(在游标中),因此游标本身工作正常。如果我删除插入语句(请参见下面的代码),一切都会很好。所以问题一定是插入语句(resp。它是基础查询)。我不明白,为什么 SQL Server 在插入后似乎没有释放内存(或者至少在执行 native 存储过程之后)。
关于如何解决该问题的任何想法(我使用的是 SQL Server 2014)?
这里是 native 编译存储过程的代码:
create procedure [CombinedStrategies].[spInsParameterCombinationNative]
(
@UniqueProcessingBlockID int,
@MS2ObjectID54RestricationParameterGroupID int,
@MS11ObjectID54RestricationParameterGroupID int,
@MS15SBBObjectID54RestricationParameterGroupID int,
@MS15SBBObjectID59RestricationParameterGroupID int,
@MS15SBBObjectID62RestricationParameterGroupID int,
@MS15SFObjectID54RestricationParameterGroupID int,
@MS15SFObjectID59RestricationParameterGroupID int,
@MS15SBObjectID54RestricationParameterGroupID int,
@MS15SBObjectID59RestricationParameterGroupID int,
@MS15SBObjectID62RestricationParameterGroupID int,
@MS16ObjectID54RestricationParameterGroupID int,
@MS16ObjectID62RestricationParameterGroupID int,
@CombinedParametersMS2 CombinedStrategies.ParameterGroupIDs readonly,
@CombinedParametersMS11 CombinedStrategies.ParameterGroupIDs readonly,
@CombinedParametersMS16ObjectID54 CombinedStrategies.ParameterGroupIDs readonly,
@CombinedParametersMS16ObjectID62 CombinedStrategies.ParameterGroupIDs readonly,
@CombinedParametersMS15SBObjectID54 CombinedStrategies.ParameterGroupIDs readonly,
@CombinedParametersMS15SBObjectID59 CombinedStrategies.ParameterGroupIDs readonly,
@CombinedParametersMS15SBObjectID62 CombinedStrategies.ParameterGroupIDs readonly,
@CombinedParametersMS15SBBObjectID54 CombinedStrategies.ParameterGroupIDs readonly,
@CombinedParametersMS15SBBObjectID59 CombinedStrategies.ParameterGroupIDs readonly,
@CombinedParametersMS15SBBObjectID62 CombinedStrategies.ParameterGroupIDs readonly,
@CombinedParametersMS15SFObjectID54 CombinedStrategies.ParameterGroupIDs readonly,
@CombinedParametersMS15SFObjectID59 CombinedStrategies.ParameterGroupIDs readonly
)
with native_compilation, schemabinding, execute as owner
as
begin atomic
with (transaction isolation level=snapshot, language=N'us_english')
-- load parameter combinations into table
insert into CombinedStrategies.ParameterCombinationForCursorTemp
(
UniqueProcessingBlockID,
MS2ObjectID54ParameterGroupID,
MS11ObjectID54ParameterGroupID,
MS15SBBObjectID54ParameterGroupID,
MS15SBBObjectID59ParameterGroupID,
MS15SBBObjectID62ParameterGroupID,
MS15SFObjectID54ParameterGroupID,
MS15SFObjectID59ParameterGroupID,
MS15SBObjectID54ParameterGroupID,
MS15SBObjectID59ParameterGroupID,
MS15SBObjectID62ParameterGroupID,
MS16ObjectID54ParameterGroupID,
MS16ObjectID62ParameterGroupID
)
select @UniqueProcessingBlockID,
MS2_54.ParameterGroupID,
MS11_54.ParameterGroupID,
MS15_SSB_54.ParameterGroupID,
MS15_SSB_59.ParameterGroupID,
MS15_SSB_62.ParameterGroupID,
MS15_SF_54.ParameterGroupID,
MS15_SF_59.ParameterGroupID,
MS15_SB_54.ParameterGroupID,
MS15_SB_59.ParameterGroupID,
MS15_SB_62.ParameterGroupID,
MS16_54.ParameterGroupID,
MS16_62.ParameterGroupID
from @CombinedParametersMS2 as MS2_54,
@CombinedParametersMS11 as MS11_54,
@CombinedParametersMS15SBBObjectID59 as MS15_SSB_54,
@CombinedParametersMS15SBBObjectID59 as MS15_SSB_59,
@CombinedParametersMS15SBBObjectID62 as MS15_SSB_62,
@CombinedParametersMS15SFObjectID54 as MS15_SF_54,
@CombinedParametersMS15SFObjectID59 as MS15_SF_59,
@CombinedParametersMS15SBObjectID54 as MS15_SB_54,
@CombinedParametersMS15SBObjectID59 as MS15_SB_59,
@CombinedParametersMS15SBObjectID62 as MS15_SB_62,
@CombinedParametersMS16ObjectID54 as MS16_54,
@CombinedParametersMS16ObjectID62 as MS16_62
where MS2_54.ParameterGroupID = isnull(@MS2ObjectID54RestricationParameterGroupID, MS2_54.ParameterGroupID)
and MS11_54.ParameterGroupID = isnull(@MS11ObjectID54RestricationParameterGroupID, MS11_54.ParameterGroupID)
and MS15_SSB_54.ParameterGroupID = isnull(@MS15SBBObjectID54RestricationParameterGroupID, MS15_SSB_54.ParameterGroupID)
and MS15_SSB_59.ParameterGroupID = isnull(@MS15SBBObjectID59RestricationParameterGroupID, MS15_SSB_59.ParameterGroupID)
and MS15_SSB_62.ParameterGroupID = isnull(@MS15SBBObjectID62RestricationParameterGroupID, MS15_SSB_62.ParameterGroupID)
and MS15_SF_54.ParameterGroupID = isnull(@MS15SFObjectID54RestricationParameterGroupID, MS15_SF_54.ParameterGroupID)
and MS15_SF_59.ParameterGroupID = isnull(@MS15SFObjectID59RestricationParameterGroupID, MS15_SF_59.ParameterGroupID)
and MS15_SB_54.ParameterGroupID = isnull(@MS15SBObjectID54RestricationParameterGroupID, MS15_SB_54.ParameterGroupID)
and MS15_SB_59.ParameterGroupID = isnull(@MS15SBObjectID59RestricationParameterGroupID, MS15_SB_59.ParameterGroupID)
and MS15_SB_62.ParameterGroupID = isnull(@MS15SBObjectID62RestricationParameterGroupID, MS15_SB_62.ParameterGroupID)
and MS16_54.ParameterGroupID = isnull(@MS16ObjectID54RestricationParameterGroupID, MS16_54.ParameterGroupID)
and MS16_62.ParameterGroupID = isnull(@MS16ObjectID62RestricationParameterGroupID, MS16_62.ParameterGroupID)
end
最佳答案
确保可用于 SQL Server 的最大内存已设置上限,以便操作系统仍有可用内存。我通常为 OS 分配 2 GB。例如如果总可用 RAM 为 8 GB,则 SQL Server 可用的总内存上限为 6 GB。
关于sql-server - "There is insufficient system memory in resource pool ' 执行存储过程时默认' to run this query",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37035499/
我正在使用 boost.pool,但我不知道何时使用 boost::pool<>::malloc和 boost::pool<>::ordered_malloc ? 所以, boost::pool<>:
我目前正在尝试从 anaconda 中的 spy 控制台运行并行代码。我相信问题可能出在我的计算机不允许 anaconda 控制 CPU 核心上,但我不知道如何解决这个问题。 另一个有趣的点是,当我运
在了解 Python 的 multiprocessing 包(对于 Python 3.4 )时,我注意到 multiprocessing.Pool 是在类 BaseContext 中定义的 上下文.p
我有这样的程序: from multiprocessing import Pool import time def f(x): # I make a heavy code here to take t
我有一个模块 A,它通过获取数据并将其发送到模块 B、C、D 等进行分析,然后将它们的结果结合在一起来执行基本的 map/reduce。 但是模块 B、C、D 等似乎不能自己创建多处理池,否则我得到
所以我有一个脚本可以连接到大约 700 个设备并执行一系列命令,然后退出。我开始使用 Multiprocessing.Pool 和 Pool.map 来减少脚本的运行时间,并允许我同时登录多个设备。
在下面的链接中有对 Pool 类的 map 方法的解释。 它似乎阻塞直到结果准备好。这意味着不需要执行 pool.close(); pool.join() 在运行 pool.map 之后,但是它在 t
context 是 class multiprocessing.pool.Pool 构造函数中的可选参数。 Documentation只说: context can be used to specif
这个问题在这里已经有了答案: 关闭 11 年前。 Possible Duplicate: What's the difference between sending -release or -dra
不确定这是否是正确的论坛。 libvirt 页面链接在这里。如果这需要张贴在不同的地方请告诉我。 virsh pool-define-as 和 create-as 有什么区别?阅读 virsh 的手册
谁能告诉我Spring Cloud Feign Client是否提供或支持Http连接池,如果可以,那么如何配置诸如池大小的设置?我似乎在官方文档中找不到此内容。谢谢你。 最佳答案 通过调查,我将尝试
我在尝试运行 Flask 应用程序时遇到了一些困难。我收到以下导入错误: File "/db/mysql_utils.py", line 2, in import mysql.conne
我有一个 Node 项目,在其中使用 pg-pool 库。我已在我的依赖项中包含以下内容: "@types/pg-pool": "0.0.3", "pg": "^7.3.0", "pg-format"
在 python 2 中,multiprocessing.dummy.Pool 和 multiprocessing.pool.ThreadPool 之间有什么区别吗?源代码似乎暗示它们是相同的。 最佳
这个问题在这里已经有了答案: Concurrent.futures vs Multiprocessing in Python 3 (6 个答案) 关闭 5 年前。 请给我解释一下这两个类有什么区别?
multiprocessing 的文档states以下关于Pool.join() : Wait for the worker processes to exit. One must call clos
我找到了一些资源,但我不确定我是否理解。 我找到的一些资源是: http://help.sap.com/saphelp_nw70/helpdata/en/fc/eb2ff3358411d1829f00
我的 Javafx 应用程序抛出许多非法状态异常,我尚未能够在源中跟踪触发器。 任何人都可以指导我导致此问题的原因以及我应该在哪里查找原因。我很难在这里展示一些代码,因为我不知道是什么原因造成的。 任
参见下面的示例和执行结果: #!/usr/bin/env python3.4 from multiprocessing import Pool import time import os def in
我目前有一个连接到我的主数据库的开放池,它运行良好。但是现在,我想为另一个数据库打开一个新池。我完全按照设置第一个池的方式设置了新池,显然我编辑了数据库名称等。加载 setupHikari() 方法时
我是一名优秀的程序员,十分优秀!