← Back to team overview

ecryptfs team mailing list archive

[Bug 317781] Re: Ext4 data loss

 

>But why can't the metadata writes be delayed as 
>well? Why do they have to be written every five seconds 
>instead of much later, whenever the data happens to get written?

Fundamentally the problem is "entangled commits".   Normally there are
multiple things happening all at once in a filesystem.   One process is
truncating a file and rewriting it, and other process is creating a new
file and allocating blocks, and so (for example) both process might
touch the block allocation bitmap as they do their various operations.
So it's not as simple as "delaying the truncate"; you can delay
committing all operations in the journal, but you can't just delay one
transaction but not another.   This is the case with SQL as well; you
can issue various commands, such as an SQL "INSERT" and an SQL "DROP"
command, but you can't delay one SQL statement beyond another one;
although you can control when you send the "COMMIT" statement.

So you can change the journal commit interval from 5 seconds to say 30
seconds, or 600 seconds.  Laptop mode for example will by default change
the journal commit time to 30 seconds.  That will do part of what you
want; if you make the journal commit interval much larger than the
default writeback time, that will achieve most of what you want.
However, various disk buffers will get pinned in memory until the commit
takes place, so extending commits may end up chewing up more memory used
by the kernel.   TNSTAAFL.

-- 
Ext4 data loss
https://bugs.launchpad.net/bugs/317781
You received this bug notification because you are a member of eCryptfs,
which is subscribed to ecryptfs-utils in ubuntu.

Status in “ecryptfs-utils” source package in Ubuntu: Invalid
Status in “linux” source package in Ubuntu: Confirmed
Status in ecryptfs-utils in Ubuntu Jaunty: Invalid
Status in linux in Ubuntu Jaunty: Confirmed

Bug description:
I recently installed Kubuntu Jaunty on a new drive, using Ext4 for all my data.

The first time i had this problem was a few days ago when after a power loss ktimetracker's config file was replaced by a 0 byte version . No idea if anything else was affected.. I just noticed ktimetracker right away.

Today, I was experimenting with some BIOS settings that made the system crash right after loading the desktop. After a clean reboot pretty much any file written to by any application (during the previous boot) was 0 bytes.
For example Plasma and some of the KDE core config files were reset. Also some of my MySQL databases were killed...

My EXT4 partitions all use the default settings with no performance tweaks. Barriers on, extents on, ordered data mode..

I used Ext3 for 2 years and I never had any problems after power losses or system crashes.

Jaunty has all the recent updates except for the kernel that i don't upgrade because of bug #315006

ProblemType: Bug
Architecture: amd64
DistroRelease: Ubuntu 9.04
NonfreeKernelModules: nvidia
Package: linux-image-2.6.28-4-generic 2.6.28-4.6
ProcCmdLine: root=UUID=81942248-db70-46ef-97df-836006aad399 ro rootfstype=ext4 vga=791 all_generic_ide elevator=anticipatory
ProcEnviron:
 LANGUAGE=
 LANG=en_US.UTF-8
 SHELL=/bin/bash
ProcVersionSignature: Ubuntu 2.6.28-4.6-generic
SourcePackage: linux



Follow ups