Project

General

Profile

Actions

Bug #5175

closed

leveldb: LOG and MANIFEST file grow without bound (LOG being _text_ log !)

Added by Sylvain Munaut almost 11 years ago. Updated over 10 years ago.

Status:
Resolved
Priority:
High
Category:
Monitor
Target version:
-
% Done:

0%

Source:
other
Tags:
Backport:
Regression:
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

leveldb has two files that seem to grow without bound and are only cleared on db open.

The first is the LOG file which is a textual debug log that leveldb creates. It's opened when the db is opened and is never closed or cycled (and leveldb doesn't have any method to make it cycle other than close/reopen).

To make matter worse, if this file is on XFS, it's subject to XFS pre-allocation (so each time the file size reaches the currently on-disk allocated size, the allocated size doubles, and so you get used disk space of 2M/4M/.../256M/512M giving big jumps in used disk space as reported by 'du -sh')

The second file is the MANIFEST file which grows a little at each compaction and is also only trimmed on db open.

For long running (i.e. weeks/month), those can actually grow quite a bit (especially LOG).

Note that the same issue exists on OSD as well but they seem to receive a whole lot less updates than mon so it shows less.

Actions

Also available in: Atom PDF