Stefan Fuhrmann wrote on Sun, Aug 23, 2015 at 20:38:03 +0100: > This post focuses on the FSFS issue. The good news is that > confidence is high that the repo itself is correct and there > has been no apparent data loss. The error message indicates > that something like Offset=L2P[L2P[Item]] or Offset=L2P[Offset] > instead of Offset=L2P[item] happened. ... > The lookup would start with a hit at the L2 DAG cache, mapping > path+rev onto a noderev. From there, everything is accessed > using physical offsets until some item is not cached. At that > point, we would be trying to use an Offset instead of the Item > index to address the f7 data. Error.
So somehow we managed to cast an offset into an item. Can we make the code more strongly-typed? Where is the "L2 DAG cache" in the code? I assume it's ffd->rev_node_cache, not fs_fs_dag_cache_t, correct?