Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 25 Oct 2018 16:23:50 +0000
From:      bugzilla-noreply@freebsd.org
To:        bugs@FreeBSD.org
Subject:   [Bug 232683] [gmirror] gmirror could provide much better administrative introspection into decision-making processes
Message-ID:  <bug-232683-227@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D232683

            Bug ID: 232683
           Summary: [gmirror] gmirror could provide much better
                    administrative introspection into decision-making
                    processes
           Product: Base System
           Version: CURRENT
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: kern
          Assignee: bugs@FreeBSD.org
          Reporter: cem@freebsd.org
                CC: geom@FreeBSD.org, markj@FreeBSD.org
        Depends on: 232671

+++ This bug was initially created as a clone of Bug #232671 +++

I'd like the gmirror softc and individual gmirror disk elements to record t=
wo
formatted messages:

1. Why did we switch to the current state from the previous one?
2. Why *haven't* we switched to some next state, where there is an obvious
linear sequence of transitions.

Additionally, I'd like that information available in DDB and perhaps the
runtime geom commands.  It may also be useful for printing at mountroot pan=
ics.

For the scenario described in the bug this was cloned from, that might be:

root0.why_status =3D "Found enough (2/2) disks in ANY state and found 0 dir=
ty
disks (unforced)"
root0.why_not_next =3D "n/a"
root0.why_destroy =3D "0/2 mirror disks in ACTIVE or NEW state (need at lea=
st 1)"

da2p5.why_status =3D "broken (stale): old generation id N; current mirrorset
generation is M"
da2p5.why_not_next =3D "n/a"

da16p3.why_status =3D "Synchronizing: Part of active mirrorset generation (=
NN),
but initiated synchronization operation has not completed"
da16p3.why_not_next =3D "Synchronizing: progress: N/M bytes; last forward
progress at time TTTT"


In that scenario, da15p3 never made it in time for the mirror to still exis=
t,
but if it had:

da15p3.why_status =3D "Clean mirror with active mirrorset generation (NN)"
da15p3.why_not_next =3D "n/a"


Referenced Bugs:

https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D232671
[Bug 232671] [gmirror] gmirror fails to recover from degraded mirror sets in
some circumstances
--=20
You are receiving this mail because:
You are the assignee for the bug.=



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