Bug #678
closedWhat if period == 0 in MDCache...purge_stray?
100%
Description
Program terminated with signal 8, Arithmetic exception.
#0 0x000000000052f8c2 in MDCache::purge_stray (this=0x240c9b0, dn=0x7f49e86c05a8) at mds/MDCache.cc:7413
7413 uint64_t num = (to + period - 1) / period;
Workaround attached.
Files
Updated by Sage Weil over 13 years ago
The question is whether this was a regular file (shouldn't have a 0 period!) or a directory (we need to delete the metadata objects, and the old purge logic is useless anyway). Either way a fix is in order, with the above 0 check for sanity.
Updated by Paul Komkoff over 13 years ago
Based on what I was doing when this asplode I'd say it's either a directory or a file created but not yet written to and client then crashed. But it's a speculation as I nuked the coredump away already.
Updated by Sage Weil over 13 years ago
- Category set to 1
- Status changed from New to Resolved
- Assignee set to Sage Weil
fixed by commit:15dcc65199fc825ca8c51a31de3be01410aca9c1
Updated by John Spray over 7 years ago
- Project changed from Ceph to CephFS
- Category deleted (
1) - Target version deleted (
v0.24.1)
Bulk updating project=ceph category=mds bugs so that I can remove the MDS category from the Ceph project to avoid confusion.