Ceph - Bug #859: Ceph does not pass fsstress
handle_client_rename thinks nonexistent dir is in subtree map
*** Caught signal (Segmentation fault) ** in thread 0x7f7073c0e710 ceph version 0.26~rc (commit:a6ef907761778e172f4a50ebd96350718954413d) 1: ./cmds() [0x71708c] 2: (()+0xef60) [0x7f707626bf60] 3: (operator<<(std::ostream&, CDir&)+0x18) [0x622098] 4: (Server::handle_client_rename(MDRequest*)+0x21c5) [0x520885] 5: (Server::handle_client_request(MClientRequest*)+0x53c) [0x526e6c] 6: (MDS::_dispatch(Message*)+0x2508) [0x4bace8] 7: (MDS::ms_dispatch(Message*)+0x57) [0x4bb5b7] 8: (SimpleMessenger::dispatch_entry()+0x89a) [0x48947a] 9: (SimpleMessenger::DispatchThread::entry()+0x1c) [0x481c5c] 10: (()+0x68ba) [0x7f70762638ba] 11: (clone()+0x6d) [0x7f7074ef802d]
Logs and cores in kai:~gregf/logs/fsstress/output_assert
#1 Updated by Greg Farnum over 9 years ago
- Tracker changed from Tasks to Bug
- Subject changed from seg fault in operator<<(Cdir) called from handle_client_rename to handle_client_rename thinks nonexistent dir is in subtree map
"srcdn->get_dir()" is not actually a valid CDir*. I haven't yet been able to figure out if srcdn is valid or not.
#2 Updated by Greg Farnum over 9 years ago
- Status changed from New to Resolved
After discussion, this was because the directory in question had a projected parent but not a parent, as it hadn't been committed to disk. Sage pushed a fix for this to stable in commit: 56548b2eab18c66b4ab1d15e934cf0fe5ab6e155.