From: Takahiro Yasui <tyasui@redhat.com>
To: device-mapper development <dm-devel@redhat.com>
Subject: Re: Re: [RFC][PATCH 0/4] dm-log: support multi-log devices
Date: Mon, 01 Dec 2008 23:52:22 -0500 [thread overview]
Message-ID: <4934BF06.7010500@redhat.com> (raw)
In-Reply-To: <49340C59.4070504@cfl.rr.com>
Phillip Susi wrote:
> Takahiro Yasui wrote:
>> log disks are updated in parallel and we do not know which disk has the
>> latest and correct data if the system crashes during write operations
>> on log devices. But there is no problem about it.
>
> Once the IO request has been completed, the data needs to be stable on
> the disk. This means that either you have to wait until the data has
> been written to all underlying mirror devices before completing the
> request ( slow ) or you have to have some way of knowing which disk(s)
> got written to, and which ones need updated after a crash. Are you
> saying you take the former path?
Yes, write I/O to all underlying mirror devices need to be completed.
I understand your concern and think that there is a room to study about
performance enhancement.
>> There are two cases we need to think about.
>>
>> 1) Some log devices contain "clean", but mirror devices are not synchronized
>>
>> This case is problematic, but never happens, because data is written on
>> mirror devices after marking log devices "dirty", and make it "clean"
>> after write I/Os on mirror devices completed and mirrors get synchronized.
>
> Does the entire log-data-log update cycle complete before dm completes
> the higher level IO request? That would maintain data integrity, but at
> significant cost to performance.
I/O request returns to the higher level after data I/O completed, and
an update of the log device is done later.
> For performance sake, don't you want to allow write requests to be
> completed before the log is necessarily marked as clean again? That way
> multiple writes to the same data zone do not require multiple log
> dirty/clean updates. Also for performance reasons, don't you want to
> allow the data to be written to only one mirror before completing the
> request? Then go back and do lazy synchronization?
I am also thinking exactly what you mentioned, and it will improve performance
of dm-mirror. I am now trying to improve performance in terms of:
> FUTURE WORKS
> * Independent header and bitmap I/O
> * Partial bitmap update
Thanks,
---
Takahiro Yasui
Hitachi Computer Products (America) Inc.
next prev parent reply other threads:[~2008-12-02 4:52 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-11-26 0:01 [RFC][PATCH 0/4] dm-log: support multi-log devices Takahiro Yasui
2008-11-26 18:56 ` Phillip Susi
2008-11-27 7:50 ` Takahiro Yasui
2008-11-28 20:06 ` Phillip Susi
2008-12-01 7:00 ` Takahiro Yasui
2008-12-01 11:09 ` Michał Mirosław
2008-12-02 6:05 ` Takahiro Yasui
2008-12-01 16:10 ` Phillip Susi
2008-12-02 4:52 ` Takahiro Yasui [this message]
2008-12-12 20:21 ` Jonathan Brassow
2008-12-15 14:56 ` Takahiro Yasui
2008-12-20 0:13 ` malahal
2008-12-23 0:23 ` Takahiro Yasui
2008-12-23 18:02 ` malahal
2008-12-31 20:15 ` malahal
2009-01-08 18:30 ` Jonathan Brassow
2009-01-08 19:00 ` malahal
2009-01-05 15:44 ` Takahiro Yasui
2009-01-05 16:24 ` malahal
2009-01-05 17:36 ` Takahiro Yasui
2009-01-05 18:44 ` malahal
2009-01-05 18:51 ` Alasdair G Kergon
2009-01-05 22:21 ` Takahiro Yasui
2009-01-05 22:26 ` Takahiro Yasui
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=4934BF06.7010500@redhat.com \
--to=tyasui@redhat.com \
--cc=dm-devel@redhat.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.