From: Helge Hafting <helge.hafting@hist.no>
To: Oleg Drokin <green@linuxhacker.ru>
Cc: Petter Larsen <pla@morecom.no>,
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 11:41:23 +0200 [thread overview]
Message-ID: <40D2B8C3.8090908@hist.no> (raw)
In-Reply-To: <20040617170939.GO2659@linuxhacker.ru>
Oleg Drokin wrote:
>Hello!
>
>On Thu, Jun 17, 2004 at 10:27:17AM +0200, Petter Larsen wrote:
>
>
>>>PL> Can anybody of you acknowledge or not if mode data=journal in ext3 is
>>>PL> safe to use in Linux kernel 2.6.x?
>>>PL> Wee need to have a very consistent and integrity for our filesystem, and
>>>PL> it would then be desired to journal both data and metadata.
>>>OLEG> Actually data=journal mode would gain you mostly zero extra consistency compared
>>>to data=ordered mode. (the only more consistency bit that you get is
>>>correct mtime on files that have their pages overwritten, I think).
>>>You have zero control over transaction boundaries in ext3, so you still need
>>>to design your applications in such a way that they have their own
>>>sort of transactions (if this is needed).
>>>
>>>
>>So your conclusion is that data=journal mode is useless if you do not
>>want a correct mtime?
>>
>>
>
>Well, yes.
>
>
>
>>It would be a littles sense in developing the data=journal mode if this
>>is the only benefit, don't you think?
>>>From the Linux/Documentation/filesystems/ext3.txt
>>data=journal All data are committed into the journal prior
>> to being written into the main file system.
>>data=ordered (*) All data are forced directly out to the main
>>file system prior to its metadata being committed to
>> the journal.
>>My problem is that ext3 in the latest kernel, 2.6.x and the latest
>>2.4.x, are not well documented around the web. Whitepapers and so are
>>pretty old. Much have changed I belive in ext3 since it was first
>>introduced by Dr. Tweedie. The first release was journaling both data
>>and metadata, se also the transcript from Dr. Tweedie from the Ottawa
>>Linux Symposium 20th July 2000.
>>http://olstrans.sourceforge.net/release/OLS2000-ext3/OLS2000-ext3.html
>>There he says that they are journaling both metadata and data, but that
>>the design goal is not to do that. So can this be interpreted that mode
>>data=journal is only there for historic reasons?
>>
>>
>
>May be so. Also fsync heavy loads on real disk devices with large journals
>tend to benefit from journaled data mode as well.
>
>
>
>>>PL> Data integrity is much more important for us than speed.
>>>
>>>OLEG> It is not clear what sort of extra data integrity do you expect from data
>>>journaling mode and why do you think it is there.
>>>
>>>
>>I would belive that the goal for such a mode data=journal would gain
>>extra data integrity because it also journals data. Why should it not? I
>>
>>
>
>Well, actually I bet you do not care if the data goes through journal or not
>as long as it is not lost.
>In case of ordered journaling mode, data is written first before metadata
>updates, mostly the same happens with data journal mode, only with the latter
>case date is written into journal and if transaction was not committed, after
>a reboot it won't be copied to where it should be, same scenario in ordered
>journal mode will result in data getting where it should be, but due to
>lack of metadata updates, you won't see it. (this is in case of append,
>for overwrite it will be a little bit different, but still you have no
>control over how much of stuff will be overwritten).
>
>
>
>>would belive that it makes sense to have these different modes so people
>>can choose the best mode for there applications.
>>
>>
>
>True.
>
>
>
>>>OLEG> Garbage in files should not happen in data ordered mode as data pages are
>>>written first before metadata updates are committed.
>>>
>>>
>>Are you sure?
>>
>>
>
>If you can reproduce a garbage in files in ordered journal mode, that would be a
>bug that should be fixed then.
>
>
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,
it may even be unreadable due to a bad sector checksum.
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,
the data is restored from the good copy in the journal.)
Helge Hafting
next prev parent reply other threads:[~2004-06-18 9:38 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 [this message]
2004-06-18 10:15 ` Oleg Drokin
2004-06-18 11:30 ` Paulo Marques
2004-06-18 12:05 ` Oleg Drokin
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=40D2B8C3.8090908@hist.no \
--to=helge.hafting@hist.no \
--cc=ext3-users@redhat.com \
--cc=green@linuxhacker.ru \
--cc=linux-kernel@vger.kernel.org \
--cc=pla@morecom.no \
/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