1

我使用以下配置在 Windows 上启动了 virtuoso 服务(这是配置文件的重要部分):

ResultSetMaxRows            = 10000
MaxQueryCostEstimationTime  = 40000 ; in seconds
MaxQueryExecutionTime       = 60000 ; in seconds
DefaultQuery                = select * where{?x ?y ?z}
DeferInferenceRulesInit     = 0  ; controls inference rules loading

我正在使用 dotNetRDF 库对本地服务器进行本地查询(该库使超时 30 秒),但我可以通过在启动对象时发送连接字符串来覆盖默认超时:

VirtuosoManager manager = new VirtuosoManager("Server=localhost;Uid=dba;pwd=dba;Connection Timeout=500");

它仍然在 30 秒时超时(如果我的查询足够复杂,可以在 30 秒内处理...

我的项目使用了一些复杂的查询,所以我需要尽可能大的 timeout 属性,我该如何覆盖该属性?

4

1 回答 1

0

Virtuoso ADO.Net Provider DBcommand 类有一个CommandTimeout属性,默认值为 30 秒,详见VirtuosoCommand 类文档

这是您要达到的超时(不是连接超时)。

从修订版 2148 开始,dotNetRDF 库允许根据需要设置此属性值。

于 2014-09-25T20:11:26.557 回答