for event in tqdm(event_list, desc='Constructing event vertex'):
session_pool.execute(
'INSERT VERTEX event(name) VALUES "%s":("%s")' % (event,event)
)
上面是我在python端插入vertex的代码,在创建tag后也已经使用time.sleep(15)等了15秒。但是我在数据库中查数据的时候,返回的是空集。
但是奇怪的是,我又插入了一个测试vertex,是可以返回结果的。
请问这是怎么回事?
steam
2
什么版本号?之前确定是有数据么,你试试在原查询语句后面加个 limit 10 看看有没有返回结果。
版本是3.3,之前是有数据的,直接使用match (n) return n limit 3是有数据返回的。。。
steam
5
我看那个返回时间,估计是没查询到什么。之前我遇到过一次是因为网络有问题,所以查询挂了。
别被返回时间误导了,因为我试了很多次,实际上测试数据是之后查询的。。
steam
7
我没表述清楚,我是说那个返回时间估计就是虚晃了下。因为我之前也是查不到数据(其实有)但是很快查询语句就执行完了。然后研发同学和我说可能是数据量太大了,或者是那个时候网络通信有问题(我用的 explorer)
最新的进展,我发现代码运行两遍就可以正确返回。。不太懂这是什么原因
steam
9
不用 limit,同样的语句执行两次?我开始怀疑是不是客户端通信问题了,cc @wey 你有别的看法么?
wey
10
可以分享一下 profile match ...
的输出么?
wey
12
index scan, row 0 ,这说明在插入数据之后才创建索引,但是索引没有重建,参考文档 rebuild index 就行了
1 个赞
wey
14
需要看有数据的 profile 结果,可能那个是 scanVertices
感谢解答,rebulid index的操作是有的,但是没想到,插入数据后rebulid index也要先等10秒钟
wey
16
这是期待中的
如果插入之前创建了索引,就没有异步的问题了,rebuild index 要把所有数据都重建index 一下,数据量很大的时候就不是 10秒这么短的了。
system
关闭
17
此话题已在最后回复的 30 天后被自动关闭。不再允许新回复。