labels(n)函数返回标签计数与浏览器显示不符的原因咨询
为什么
labels(n)返回的标签计数和浏览器高亮列表差2个? 这种情况我日常用图数据库工具时碰到过好多次,大概率是这几个原因之一:
- 系统内置标签被浏览器计入,但函数不统计:不少可视化工具会自动添加一些工具内部用的系统标签,用来管理节点元数据或者工具状态,比如
__InternalNode__这类。这些标签不属于你手动定义的标签,labels(n)这类查询函数会直接忽略它们,但浏览器在生成标签列表时会把这些内置标签也算进去,自然就多了几个。 - 浏览器包含了未被任何节点使用的空标签:如果你之前创建过某些标签,但从来没给任何节点添加过,
labels(n)只会统计有实际节点关联的标签,但有些工具的浏览器界面会显示数据库中所有存在的标签(哪怕没有节点用),这就会出现计数差。 - 浏览器缓存了已删除的旧标签:要是你最近删除过几个标签,但浏览器的缓存没及时更新,它还会显示那些已经不存在的旧标签,而
labels(n)查的是数据库最新状态,结果自然就不一致了。 - 标签的特殊格式导致函数漏统计:比如有些标签包含特殊字符(比如换行、制表符),
labels(n)在返回时可能会过滤掉这些异常格式的标签,但浏览器的高亮列表能识别并展示它们,也会造成数量差。
你可以先检查下浏览器的标签列表里多出来的2个是什么名字,对照上面的情况排查,应该很快就能找到原因~
内容的提问来源于stack exchange,提问作者user697911
相关产品推荐
相关产品推荐

