You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

GraphDB 10.2.1中SPARQL查询的异常行为问询

GraphDB 10.2.1 SPARQL查询异常行为分析

复现环境与测试数据

导入以下Turtle数据到GraphDB 10.2.1的空仓库:

@prefix ex: <http://example.com/> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

ex:1 ex:hasDate "2022-03-01"^^xsd:date .
ex:2 ex:hasDate "2021-03-01"^^xsd:date .
ex:3 ex:hasDate "2022-08-24"^^xsd:date .

异常行为表现

  • 正常场景:执行包含两个FILTER和UNION的SPARQL查询时,返回预期结果。
  • 异常1:移除任意一个FILTER后,查询返回空结果(按SPARQL语义,移除过滤条件属于放宽限制,结果集应大于等于原结果,而非直接为空)。
  • 异常2:同时移除UNION语句后,查询恢复正常返回结果。
  • 异常3:在查询无结果的场景下,使用SELECT (MIN(?date) AS ?test)聚合查询能得到预期结果,但SELECT *却无结果(按SPARQL规范,无匹配项且无GROUP BY的聚合查询应返回一行含NULL的结果;若聚合返回了实际日期值,完全不符合语义逻辑)。

结论

这种行为明显违背SPARQL 1.1规范,属于GraphDB 10.2.1的查询优化器BUG。建议:

  1. 升级到GraphDB最新版本,确认该问题是否已修复;
  2. 若无法升级,可尝试调整查询结构(比如改写UNION逻辑、调整FILTER位置)规避该问题;
  3. 向GraphDB官方提交该BUG,附上测试数据和复现步骤。

内容的提问来源于stack exchange,提问作者NewMarc

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 14:22:40