Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 27 Jan 2005 10:19:05 +0100
From:      Pawel Jakub Dawidek <pjd@FreeBSD.org>
To:        Karl Denninger <karl@denninger.net>
Cc:        freebsd-geom@freebsd.org
Subject:   Re: Gmirror question - what am I doing wrong?
Message-ID:  <20050127091905.GN795@darkness.comp.waw.pl>
In-Reply-To: <20050127000529.B40650@Denninger.Net>
References:  <20050127000529.B40650@Denninger.Net>

next in thread | previous in thread | raw e-mail | index | archive | help

--24bywM+ZyrW0DJoD
Content-Type: text/plain; charset=iso-8859-2
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Thu, Jan 27, 2005 at 12:05:29AM -0600, Karl Denninger wrote:
+> Now here's the problem.
+>=20
+> Let's say that I have the system sync'd with the larger and smaller block
+> count disks online.  The SMALLER one fails.  I replace it, but the other=
=20
+> larger disk is not available, because its in the vault.  I thus replace =
the
+> disk with the SMALLER one, but I can't attach the slice on the replaceme=
nt=20
+> disk, because that disk has a smaller capacity than the only remaining
+> active mirror component, and I can't make a slice bigger than the number=
=20
+> of actual blocks that exist on the drive!
+>=20
+> I'm screwed, and have no way out of this other than to ditch the entire
+> scheme, manually recreate the smaller volume, copy all the data over, and
+> restart gmirror from scratch. =20

I need exact commands you use to perform this.
I did small simulation of your problem (if I understand it right):

I created three md(4) devices:

md0 - 12MB
md1 - 10MB
md2 - 10MB

Now, I create a mirror from two of them:

	# gmirror label foo /dev/md[01]

My mirror size is 10MB-512B.
Now I remove smaller component:

	# gmirror remove foo md1

And insert the second smaller component:

	# gmirror insert foo md2

Everything works for me.

Some more notes: When you create a mirror, gmirror takes the smallest
component's size as a size of the whole mirror, so you should be able
to insert new components which are bigger than or equal to the smallest
one (used for mirror creation).

--=20
Pawel Jakub Dawidek                       http://www.wheel.pl
pjd@FreeBSD.org                           http://www.FreeBSD.org
FreeBSD committer                         Am I Evil? Yes, I Am!

--24bywM+ZyrW0DJoD
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (FreeBSD)

iD8DBQFB+LIJForvXbEpPzQRAhHDAJ47KTK3Kfe8E6M+0AMBbo2U9qVBPgCgyam2
QHzK63f5fEWw0Kt3eucvppc=
=ZJug
-----END PGP SIGNATURE-----

--24bywM+ZyrW0DJoD--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050127091905.GN795>