[亿信BI4.5] Expected one result (or null) to be returned by selectOne(), but found: 2

1048
6

邻居门口晒花椒 初学数据Lv2

发表于2023-4-18 13:37

悬赏30

已解决

楼主
本帖最后由 邻居门口晒花椒 于 2023-4-19 10:34 编辑

部分用户进某一BI界面时报错Expected one result (or null) to be returned by selectOne(), but found: 2
其他用户及admin用户则打开正常
报错用户打开界面报错如图所示,正常用户打开时查看日志,信息只到红框以上部分。
查询select * from ( select parentdir_, filename_, count(*) as cnt from es10_vfs group by parentdir_, filename_ ) t where t.cnt>1 order by cnt desc无重复数据


进一步自测排查问题:
问题用户为A(目前碰到两户),问题分析页面为X。X页面挂在门户管理里面通过页面ID跳转。
情况一:测试A进X时报错,但是X页面设置报表触发的口径执行没有问题,该报错内容大概意思为执行口径应该只查询出一条数据,但是查出了两条。
情况二:测试其他用户进入X时无报错,正常执行X页面内设置的口径,无红框报错内容。
情况三:清空X页面所有信息,只保留空白版(X本身无口径执行),A进入X时仍报错。
情况四:还原X页面,克隆X页面X1,将克隆页X1的ID挂到门户上,A用户进入不报错。

分析:
所有用户进入页面时会查询类似日志表,应该只查出该用户对应该页面只有一条记录,查出后删除原纪录计入新纪录,但是该用户与该界面关联查询时查出了两条,导致报错。所以换用户与换页面ID都可以正常。找到类似ES10_LOG,但是该表内用户与页面对应的记录皆为多条,不像是有一条的情况,所以不确定是不是这个表有别的查询条件、或者是在记录这个表之前还有类似的表。
由于本地的开发程序无权限查看,不知道有没有大佬帮忙定位错误。

最近看过此主题的会员

豌豆君

养蚯蚓吃沙漠

伶俐

读完诗再睡

最佳答案
在分析表-属性中,清理下分析表的结果表再计算看看呢?
6个回答

只看楼主

豌豆君 小试身手Lv3

发表于2023-4-18 13:37

只看该作者

取消 关注该作者的回复

沙发

在分析表-属性中,清理下分析表的结果表再计算看看呢?

邻居门口晒花椒 初学数据Lv2

发表于2023-4-19 10:24

只看该作者

取消 关注该作者的回复

板凳

豌豆君 发表于 2023-4-18 17:30
在分析表-属性中,清理下分析表的结果表再计算看看呢?

自测跟分析表内容无关,我删除分析表所有项目只留空白版,该用户进入时也会报这个错

豌豆君 小试身手Lv3

发表于2023-4-19 14:18

只看该作者

取消 关注该作者的回复

地板

邻居门口晒花椒 发表于 2023-4-19 10:24
自测跟分析表内容无关,我删除分析表所有项目只留空白版,该用户进入时也会报这个错 ...

只留空白版是只有一个空的门户?门户中有做什么调整呢,其他门户有出现类似报错吗?
可以看下java控制台,看下详细的报错信息;也可以开启系统日志的debug模式,看报错时后台执行的sql。

邻居门口晒花椒 初学数据Lv2

发表于2023-4-19 14:44

只看该作者

取消 关注该作者的回复

5#

进一步自测排查问题:
问题用户为A(目前碰到两户),问题分析页面为X。X页面挂在门户管理里面通过页面ID跳转。
情况一:测试A进X时报错,但是X页面设置报表触发的口径执行没有问题,该报错内容大概意思为执行口径应该只查询出一条数据,但是查出了两条。
情况二:测试其他用户进入X时无报错,正常执行X页面内设置的口径,无红框报错内容。
情况三:清空X页面所有信息,只保留空白版(X本身无口径执行),A进入X时仍报错。
情况四:还原X页面,克隆X页面X1,将克隆页X1的ID挂到门户上,A用户进入不报错。

分析:
所有用户进入页面时会查询类似日志表,应该只查出该用户对应该页面只有一条记录,查出后删除原纪录计入新纪录,但是该用户与该界面关联查询时查出了两条,导致报错。所以换用户与换页面ID都可以正常。找到类似ES10_LOG,但是该表内用户与页面对应的记录皆为多条,不像是有一条的情况,所以不确定是不是这个表有别的查询条件、或者是在记录这个表之前还有类似的表。
由于本地的开发程序无权限查看,不知道有没有大佬帮忙定位错误。

豌豆君 小试身手Lv3

发表于2023-4-19 15:07

只看该作者

取消 关注该作者的回复

6#

邻居门口晒花椒 发表于 2023-4-19 14:44
进一步自测排查问题:
问题用户为A(目前碰到两户),问题分析页面为X。X页面挂在门户管理里面通过页面ID跳 ...

将系统日志级别调整为debug模式,可以看到对应执行的sql,参考这个:https://bbs.esensoft.com/thread-137913-1-1.html
目前的测试都是门户与报表之间,有试过清理报表的结果表吗?

邻居门口晒花椒 初学数据Lv2

发表于2023-4-19 16:55

只看该作者

取消 关注该作者的回复

7#

豌豆君 发表于 2023-4-18 17:30
在分析表-属性中,清理下分析表的结果表再计算看看呢?

清理结果表后问题消除,也就是在记录结果表的时候会先查一次结果表,数据有问题导致报错

登录后可回答问题,请登录注册

快速回复 返回顶部 返回列表

小时

全天响应

分钟

快速处理问题

工程师强势助力

明星产品
解决方案
联系合作

400咨询:400-0011-866

技术支持QQ:400-0011-866(工作日9:00-18:00)

产品建议邮箱yixin@esensoft.com

关注我们

扫TA学习更多干货

一对一专家交流

版权所有© 2006-2024 北京亿信华辰软件有限责任公司 京ICP备07017321号 京公网安备11010802016281号