exchange2.5.0生成sst文件导入nebula2.5显示成功、但是查不到数据

我用的2

你的配置是对的,你把hdfs上的sst文件删除掉,然后重新跑一下exchange,跑完之后把日志贴出来看一下在生成过程中有没有异常出现。

请问一下 每个节点都要一份sst文件 这个是什么原因呢 是为了避免通过内部进行数据交换吗

重新跑了一次 还是老样子的报错
E0824 10:39:11.566658 109769 RocksEngine.cpp:381] Ingest Failed: Corruption: Bad table magic number: expected 9863518390377041911, found 360375854652863752 in /nebula/data/storage/nebula/1/download/1/1-409.sst
E0824 10:39:11.566736 109769 StorageHttpIngestHandler.cpp:99] SSTFile Ingest Failed: E_UNKNOWN
E0824 10:39:11.566751 109769 StorageHttpIngestHandler.cpp:71] SSTFile ingest failed




主要错误就是这些 但是spark任务最终是成功的 中间有重试


请问一下这个是什么情况 hdfs直接没有文件生成

你可以把日志都贴上来不, 看下executor内部报什么错, 以文本形式

21/08/24 11:39:27 ERROR VerticesProcessor: java.lang.RuntimeException: Wrong strNum: 3 目前发现就只有这个报错

你能不能把日志全贴出来,全局看下啊

log.txt (122.7 KB)

你是不是没开启日志汇聚功能,这个日志没有堆栈 也没有driver的信息啊。 这样 你把你的数据贴一部分出来我看能不能复现。
或者你也可以本地debug,看数据在哪里异常了

这个问题解决了吗 我也遇到相同问题

你遇到的是VerticesProcessor: java.lang.RuntimeException: Wrong strNum: 3 这个问题么

这是2.5.0 的客户端encode存在的bug, 2.6.0已经修复了, 可以升级下。

SST 文件版本号不对吧

大神,
1)问一下这边导入sst ,同一批次生成的sst文件12节点,有2个节点有部分sst 文件显示导入失败。再查数据发现数据有部分少了没导入进去,
Ingest Failed: Corruption: Bad table magic number: expected 9863518390377041911, found 2523722405406703620

这个为什么会出现部分失败的问题,照理说同一批文件其他都可以。为什么个别不行???
2)还有发现有时会出现生成的sst 文件大小为0,没有数据导致导入失败,但这个就发现一两个sst 文件,也不是每次生成都出现。是否sst 文件生成有bug?? 帮忙看看
3)问下sst 文件导入顺序是根据文件名称id 一次导入的吗。这边INGEST sst文件很慢,

同一批SST文件吗?是不是大小为0 的文件导入的时候出现这个错误了? 毕竟读不到 magic number的

大小为0 的报的不是这个错。这次导入为0 的文件我都删除了

是同一批文件。其他storage 节点都成功了,只是个别stroage 节点个别sst 文件失败,不是全部,这个就奇怪了,还有用console 命令行的下载 命令,download 只有对应节点数量的分区目录数比如storage 12 个。download 命令就12 文件夹,但是这边生成sst 文件是48 个分区文件夹。你们这个下载命令是不是只下载部分分区数据????,导入后现在显示数据不全缺少很多数据

我尝试复现一下这个问题吧 同一个Spark Job 生成的SST 文件 magic number 居然不一致?

感觉有点诡异

不是是多个spark 任务生成的sst ,这边为了加快速度是多个spark 任务。