From owner-freebsd-geom@freebsd.org Fri Jan 6 15:09:42 2017 Return-Path: Delivered-To: freebsd-geom@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id ED785CA2896 for ; Fri, 6 Jan 2017 15:09:42 +0000 (UTC) (envelope-from 000.fbsd@quip.cz) Received: from elsa.codelab.cz (elsa.codelab.cz [94.124.105.4]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id AE5751A9A; Fri, 6 Jan 2017 15:09:42 +0000 (UTC) (envelope-from 000.fbsd@quip.cz) Received: from elsa.codelab.cz (localhost [127.0.0.1]) by elsa.codelab.cz (Postfix) with ESMTP id ED0F428422; Fri, 6 Jan 2017 16:09:33 +0100 (CET) Received: from illbsd.quip.test (ip-86-49-16-209.net.upcbroadband.cz [86.49.16.209]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by elsa.codelab.cz (Postfix) with ESMTPSA id 242D528416; Fri, 6 Jan 2017 16:09:33 +0100 (CET) Subject: Re: gmirror and a flaky member To: Andriy Gapon , freebsd-geom@FreeBSD.org References: <7e4164bd-9804-02d5-5990-bc15354989e9@FreeBSD.org> <77c40117-35ab-2430-07f8-e1df6b87fe1c@FreeBSD.org> From: Miroslav Lachman <000.fbsd@quip.cz> Message-ID: <586FB32D.7050902@quip.cz> Date: Fri, 6 Jan 2017 16:09:33 +0100 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:42.0) Gecko/20100101 Firefox/42.0 SeaMonkey/2.39 MIME-Version: 1.0 In-Reply-To: <77c40117-35ab-2430-07f8-e1df6b87fe1c@FreeBSD.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-BeenThere: freebsd-geom@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: GEOM-specific discussions and implementations List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 06 Jan 2017 15:09:43 -0000 Andriy Gapon wrote on 2017/01/06 11:12: > On 06/01/2017 11:54, Andriy Gapon wrote: >> >> Can a geom mirror handle a member that gets disconnected and then reappears again? >> >> What I am seeing right now is that the mirror does not pick up the member when >> it reappears. I have to add it back manually. It is intentional to mark disappeared device as broken. If you want to remove working device from gmirror, you must use gmirror remove command (or gmirror deactivate). > To add more substance, here is what gets logged when the disk disappears: > > GEOM_MIRROR: Request failed (error=6). ada0p2[READ(offset=2517700608, length=4096)] > GEOM_MIRROR: Device swap: provider ada0p2 disconnected. > > And here's what gets logged when the disk reappears: > GEOM_MIRROR: Component ada0p2 (device swap) broken, skipping. > GEOM_MIRROR: Cannot add disk ada0p2 to swap (error=22). Was the disk removed by user or was it by some bad event? >> Even worse, the commands I have >> to execute are: >> $ gmirror forget ... >> $ gmirror insert ... >> >> This does not appear to be a graceful way of reactivating the member. You can re-activate only member which was correctly deactivated. Not one yanked out without any "graceful" command. And as gmirror doesn't work as ZFS mirror (cannot do resilver) the re-added device is always fully rebuilt. Miroslav Lachman