[lkml]   [2008]   [Jan]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: [RFC] ext3: per-process soft-syncing data=ordered mode
    Chris Snook wrote:
    > Al Boldi wrote:
    > > Greetings!
    > >
    > > data=ordered mode has proven reliable over the years, and it does this
    > > by ordering filedata flushes before metadata flushes. But this
    > > sometimes causes contention in the order of a 10x slowdown for certain
    > > apps, either due to the misuse of fsync or due to inherent behaviour
    > > like db's, as well as inherent starvation issues exposed by the
    > > data=ordered mode.
    > >
    > > data=writeback mode alleviates data=order mode slowdowns, but only works
    > > per-mount and is too dangerous to run as a default mode.
    > >
    > > This RFC proposes to introduce a tunable which allows to disable fsync
    > > and changes ordered into writeback writeout on a per-process basis like
    > > this:
    > >
    > > echo 1 > /proc/`pidof process`/softsync
    > >
    > >
    > > Your comments are much welcome!
    > This is basically a kernel workaround for stupid app behavior.

    Exactly right to some extent, but don't forget the underlying data=ordered
    starvation problem, which looks like a genuinely deep problem maybe related
    to blockIO.

    > It
    > wouldn't be the first time we've provided such an option, but we shouldn't
    > do it without a very good justification. At the very least, we need a
    > test case that demonstrates the problem

    See the 'konqueror deadlocks in 2.6.22' thread.

    > and benchmark results that prove that this approach actually fixes it.

    8M-record insert into indexed db-table:
    ordered writeback
    sqlite3: 75m22s 8m45s
    mysql4 : 23m35s 5m29s

    > I suspect we can find a cleaner fix for the problem.

    I hope so, but even with a fix available addressing the data=ordered
    starvation issue, this tunable could remain useful for those apps that



     \ /
      Last update: 2008-01-26 06:33    [W:0.023 / U:0.992 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site