SPL 某个 MongoDB 数据源执行返回一些特殊的信息
如上图:一个超级简单的查询,mongoDB 执行返回结果如下:{mechanism=SCRAM-SHA-256, userName=‘mongous@9qKJfxGyLjdf4S’, source=‘admin’, password=, mechanismProperties=}
切换其他数据源都是正常的,感觉 SPL 隐藏了真实的报错。
"[图片] 如上图:一个超级简单的查询,mongoDB 执行返回结果如下:{mechanism=SCRAM-SHA-256, userName=‘mongous@9qKJfxGyLjdf4S’, .."
如上图:一个超级简单的查询,mongoDB 执行返回结果如下:{mechanism=SCRAM-SHA-256, userName=‘mongous@9qKJfxGyLjdf4S’, source=‘admin’, password=, mechanismProperties=}
切换其他数据源都是正常的,感觉 SPL 隐藏了真实的报错。
然后,这有啥问题?应该返回什么?
发现和预期不符,先不要怀疑 SPL 有问题,不是说 SPL 就不可能有 bug,是这种直接把现象堆上来的搞法,对找出问题毫无帮助。
具体到这个问题,应该是看看用命令行访问这个 mongodb 会返回什么?再用 java 试试。也就是说,你要证明是 SPL 的问题,并不是简单地堆上来,要做各种实验。
经常,在做这些实验的过程中,你已经找到问题所在了,如果最后能证明是 SPL 的问题,这些信息对于我们排错也是非常有意义的。而只是笼统地说和预期不符,俺们也不知道咋弄。
你可以看一下,这个就是一个没有任何查询条件的集合查询,正常情况下应该返回对应集合的 json 数据;我切换其他数据源执行这种最简单的查询返回结果就是对应集合的数据。
那就按前面说的步骤来证明是 SPL 的问题,这样能更细致地定位问题,比如和其它不出错的情况对比差异(比如有没什么配置不同)。
这么笼统地说,又没有环境,而且还不是所有情况都出错,这没法排查啊。
我不是说是 SPL 的问题,我怀疑 MongoDB 数据源安全策略相关的问题导致的,SPL MongoDB 的驱动在返回如下结果:问题中的结果的时候,是什么场景,遇到 MongoDB 的什么问题会返回这种数据结果,这个是我想问的。
这个问题该去问 mongodb 啊,我们哪会知道。
如果经过详细排查发现是 SPL 的问题,那我们会来处理。现在看来大概率是 mongodb 本身的是什么规则,SPL 团队没能力更没义务解决 mongo 的问题,当然如果顺手能对付也就罢了。