From: Oleg Drokin <green@linuxhacker.ru>
To: Paulo Marques <pmarques@grupopie.com>
Cc: Helge Hafting <helge.hafting@hist.no>,
Petter Larsen <pla@morecom.no>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
ext3 <ext3-users@redhat.com>
Subject: Re: mode data=journal in ext3. Is it safe to use?
Date: Fri, 18 Jun 2004 15:05:14 +0300 [thread overview]
Message-ID: <20040618120513.GA2394@linuxhacker.ru> (raw)
In-Reply-To: <1087558255.25904.14.camel@pmarqueslinux>
Hello!
On Fri, Jun 18, 2004 at 12:30:55PM +0100, Paulo Marques wrote:
> > > Hard to _produce_, but consider:
> > > 1. Write data to an existing file
> > > 2. Sync metadata
> > > 3. data is forced out because of ordered mode, a powerout crash happens
> > > in the middle of this. The file now has a block with a mix of new
> > > and old,
> > Well, this is not much worse than having two blocks, one from old file
> > and one from new after a crash.
> Agree. If the application needs consistency it must do some journaling
> itself. At least, until the time when an application can say "start
> transaction" "commit transaction" to the file system itself.
Right, this is my point.
> > > it may even be unreadable due to a bad sector checksum.
> > Well, in data journaled mode you may get unreadable journal, is this much
> > better? (Also original question was about CF flash media, so no bad sector
> > problems I presume).
> You got it wrong here. The sentence was "bad sector checksum", not "bad
> sector". If the sector was "half written", then the checksum would not
> match.
In any case bad sector checksum is hardware bug. Sector write is supposed to be
atomic, it either happens or not.
> If the journal is "half written" then it is just discarded (or at least
> it should be).
Well, if there is bad sector checksum inside journal block, ext3 won't be
all that happy about this for sure (and most of other journaling filesystems as
well, I am sure).
> > > With data journalling you either get the old data (because the crash
> > > happened
> > > during a write to the journal) or new data (crash happened during data
> > > write,
> > Well, while with data journaling mode your granularity is one block,
> > with data ordered it is one sector.
> Imagine that you request a 2Mb write to an ext3 filesystem with an 1Mb
> journal. There is *no way* the filesystem can do the write in an atomic
> operation. (there would be if the filesystem wrote the data to free
> blocks and updated the metadata through the journal)
True.
Even if you write 512K of data and have 1Mb journal, still there is no atomicity
guarantee.
> The point is, there is no concept of "atomic operation" at the file
> system level, so the application must do journaling itself if it wants
> to have some concept of "transactions".
Well, if you go with less than 1 block size updates (that do not cross block
boundaries), this can be done atomically. (with help of fsync and stuff).
> >From my experience with CF cards, there are some brands that do
> wear-leveling (I know that at least the TwinMOS ones do, and probably
> SanDisk too) and others that don't (Kingmax).
> With a bad CF card and an ext3 filesystem you can get bad sectors in a
> couple of hours doing some intensive writing.
Well, for flash memory there is jffs2, it does (data) journalling and supports
compression. And it can even work over conventional block devices via mtd block
emulation, I think. Basically jffs2 is one large fs-sized journal as I
understand it.
Bye,
Oleg
next prev parent reply other threads:[~2004-06-18 12:05 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <40FB8221D224C44393B0549DDB7A5CE83E31B1@tor.lokal.lan>
2004-06-15 18:09 ` mode data=journal in ext3. Is it safe to use? Petter Larsen
2004-06-15 18:20 ` Eugene Crosser
2004-06-17 8:36 ` Petter Larsen
2004-06-16 7:34 ` Oleg Drokin
2004-06-17 8:27 ` Petter Larsen
2004-06-17 17:09 ` Oleg Drokin
2004-06-18 9:41 ` Helge Hafting
2004-06-18 10:15 ` Oleg Drokin
2004-06-18 11:30 ` Paulo Marques
2004-06-18 12:05 ` Oleg Drokin [this message]
2004-06-21 17:42 ` mode data=journal in ext3. Is it safe to use? Conclusion Petter Larsen
2004-06-19 19:16 ` mode data=journal in ext3. Is it safe to use? Bernd Eckenfels
2004-06-16 15:49 ` Timothy Miller
2004-06-17 0:51 ` Daniel Pittman
2004-06-17 3:02 ` Tim Connors
2004-06-17 5:35 ` Hans Reiser
2004-06-17 10:08 ` Dave Jones
2004-06-17 16:55 ` Hans Reiser
2004-06-17 8:29 ` Petter Larsen
2004-06-17 19:30 ` Daniel Egger
[not found] ` <87wu26mto2.fsf@enki.rimspace.net>
2004-06-27 14:17 ` Petter Larsen
2004-06-28 0:22 ` Daniel Pittman
[not found] ` <1805.216.148.213.196.1087426691.squirrel@www.code-visions.com>
2004-06-17 11:23 ` Petter Larsen
2004-06-17 16:26 ` Andreas Dilger
2004-06-17 14:56 Ken Ryan
2004-06-17 16:06 ` Timothy Miller
2004-06-17 17:20 ` Hans Reiser
2004-06-17 19:15 ` Ken Ryan
2004-06-18 6:18 ` Hans Reiser
2004-06-17 19:43 ` Daniel Egger
2004-06-17 19:59 ` Ken Ryan
2004-06-19 14:49 ` Petter Larsen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20040618120513.GA2394@linuxhacker.ru \
--to=green@linuxhacker.ru \
--cc=ext3-users@redhat.com \
--cc=helge.hafting@hist.no \
--cc=linux-kernel@vger.kernel.org \
--cc=pla@morecom.no \
--cc=pmarques@grupopie.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox