spark批量导入报错

ERROR async.AsyncGraphClientImpl: execute error: Insert vertex not complete, completeness: 66
ERROR async.AsyncGraphClientImpl: execute error: Insert vertex not complete, completeness: 0
ERROR async.AsyncGraphClientImpl: execute error: Insert vertex not complete, completeness: 19
ERROR async.AsyncGraphClientImpl: execute error: Insert vertex not complete, completeness: 15
ERROR async.AsyncGraphClientImpl: execute error: Insert vertex not complete, completeness: 24
ERROR async.AsyncGraphClientImpl: execute error: Insert vertex not complete, completeness: 66
批量导入的时候会出现以上报错,单条导入的时候无任何保存,同样的一批数据,不存在数据格式问题,请问上面的报错是因为啥?

可以尝试修改下sparkwriter代码,打印出插入语句看看。

spark导入的时候是多个graph?单条导入是指在console么?你可以试试把graph重启下(不要停storage/meta)。

6台nebula集群,单条插入和batch插入,都是通过spark执行导入的。生产环境不能随便重启。

那可能只是因为你单条插入的是同一条数据,batch插入前几次或者前几秒是可能会出现这个报错,原因是client不知道leader是谁,需要重试。通常来说一旦确定leader过后就不会再出现这个错了。

重连的过程中,会导致插入的数据失败吗?还是重连成功后,继续插入重连过程中的数据呢

印象里有重试3次,超过就不会重试了。

重连过程的数据怎么处理的?

没有你说的重连,某个数据插入报错,就会进行重试,同一个超过3次失败就丢弃(次数得看代码确定)

也就是插入的过程中如果出现异常,会重试三次,如果三次还失败就算失败了,对么

对,某些数据就插入失败。如果服务正常,这个错通常只会出现在开始导入的前几秒。