While using the RocksIterator, we occasionally get a SIGSEGV with the following stack
Stack: [0x00007fd4d21a2000,0x00007fd4d22a3000], sp=0x00007fd4d22a0c58, free space=1019k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C [libc.so.6+0x16ac70] __memcmp_sse4_1+0xcc0
C [librocksdbjni788768896225669227.so+0x518c7f] rocksdb::BlockBasedTableIterator::CheckDataBlockWithinUpperBound()+0x8f
C [librocksdbjni788768896225669227.so+0x518ef4] rocksdb::BlockBasedTableIterator::InitDataBlock()+0x254
C [librocksdbjni788768896225669227.so+0x519988] rocksdb::BlockBasedTableIterator::FindBlockForward()+0x338
C [librocksdbjni788768896225669227.so+0x519db2] rocksdb::BlockBasedTableIterator::Next()+0xf2
C [librocksdbjni788768896225669227.so+0x519e36] rocksdb::BlockBasedTableIterator::NextAndGetResult(rocksdb::IterateResult*)+0x16
C [librocksdbjni788768896225669227.so+0x403351]
C [librocksdbjni788768896225669227.so+0x56ee43] rocksdb::MergingIterator::NextAndGetResult(rocksdb::IterateResult*)+0x53
C [librocksdbjni788768896225669227.so+0x368ece] rocksdb::DBIter::Next()+0x36e
J 15196 org.rocksdb.RocksIterator.next0(J)V (0 bytes) @ 0x00007ffaa2ecdf70 [0x00007ffaa2ecdec0+0xb0]
J 15298 C2 alluxio.master.block.DefaultBlockMaster.generateBlockInfo(J)Ljava/util/Optional; (377 bytes) @ 0x00007ffaa2fcf61c [0x00007ffaa2fcdc20+0x19fc]
J 14396 C2 alluxio.master.block.DefaultBlockMaster.getBlockInfoList(Ljava/util/List;)Ljava/util/List; (64 bytes) @ 0x00007ffaa2bc1800 [0x00007ffaa2bc1580+0x280]
J 16401 C2 alluxio.master.file.DefaultFileSystemMaster.getFileInfoInternal(Lalluxio/master/file/meta/LockedInodePath;Lcom/codahale/metrics/Counter;)Lalluxio/wire/FileInfo; (391 bytes) @ 0x00007ffaa2330008 [0x00007ffaa232f840+0x7c8]
J 15564 C2 alluxio.master.file.DefaultFileSystemMaster.getFileInfo(Lalluxio/AlluxioURI;Lalluxio/master/file/contexts/GetStatusContext;)Lalluxio/wire/FileInfo; (748 bytes) @ 0x00007ffaa30c9e1c [0x00007ffaa30c8b40+0x12dc]
J 17710 C2 alluxio.master.file.FileSystemMasterClientServiceHandler$$Lambda$354.call()Ljava/lang/Object; (20 bytes) @ 0x00007ffaa2e389f4 [0x00007ffaa2e38460+0x594]
J 17093 C2 alluxio.RpcUtils.callAndReturn(Lorg/slf4j/Logger;Lalluxio/RpcUtils$RpcCallableThrowsIOException;Ljava/lang/String;ZLjava/lang/String;[Ljava/lang/Object;)Ljava/lang/Object; (356 bytes) @ 0x00007ffaa1ee63f0 [0x00007ffaa1ee6200+0x1f0]
but this doesn't contain any references to RocksIterator so I'm guessing it is actually
There is nothing odd about these methods (perhaps, I can't call it with RocksUtils.toByteArray(id, Long.MAX_VALUE)? )
Here are the codes for the relevant method pasted in (sorry for the lack of proper formatting)