Exchange导入Neo4j数据报错

  • nebula 版本:v2.0.0
  • 部署方式(分布式 / 单机 / Docker / DBaaS):Docker
  • 硬件信息
    • SSD
    • i5,8GB
  • exchange: v2.0
  • write vertex failed for SyntaxError: syntax error near `edf790464`

日志显示,报错的字符串原本应该是 bfd294c5-ef42-4970-acf2-028edf790464,该字段数据类型为FIXED_STRING(36) 。

日志里面,这个字符串没有引号,所以我又在studio里面加上引号试了一下,是可以插入成功的,所以感觉是exchange漏掉了引号导致的,以及另一处fixed_string(10)类型字段的数据,也都没有用引号包起来。

补充下

  • Exchange 版本
  • 报错的堆栈发出来

exchange:2.0

21/04/09 16:33:41 ERROR NebulaGraphClientWriter: write vertex failed for SyntaxError: syntax error near `edf790464'
21/04/09 16:33:41 INFO NebulaGraphClientWriter: INSERT VERTEX person(virtualId,registeredPersonId,name,image) VALUES "xxxxxxx-xxxx-xxx-xxxx-xxxxxxxxxxxx": (bfd294c5-ef42-4970-acf2-028edf790464, null, null, "https://url/someid")

麻烦你贴一下 show tag person 的信息吧, 其他string类型的数据是带双引号的,按理应该都会有双引号,看下virtualId这个属性的数据类型。

另外,其他的fixed_string也是这种情况,没有用引号包起来

应该是fixed_string处理的时候的问题,因为我把所有原来fixed_string类型(除了vid_type)改为string之后就没有任何问题了

感谢提出, 这里漏掉了fixed_string, 用这个PR 导入吧

浙ICP备20010487号