From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bob Peterson Date: Thu, 25 Feb 2021 14:45:25 -0500 (EST) Subject: [Cluster-devel] Recording extents in GFS2 In-Reply-To: References: <93452e4c-af81-225f-34f5-f297473164ae@redhat.com> <899455839.58326316.1614278886083.JavaMail.zimbra@redhat.com> Message-ID: <578920647.58334818.1614282325621.JavaMail.zimbra@redhat.com> List-Id: To: cluster-devel.redhat.com MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit ----- Original Message ----- > On Thu, Feb 25, 2021 at 7:48 PM Bob Peterson wrote: > > > ----- Original Message ----- > > > >> once we change the journal format, in addition to recording block > > numbers > > > >> as extents, there are some additional issues we should address at the > > same > > > >> time: > > > > One thing I've always thought we should improve upon was the way we manage > > our bitmaps. Right now, if you allocate or free a block, unless it's on the > > first block of the rgrp, we need to write two blocks: (1) One for the > > bitmap > > that needs to change and, (2) Another for the rgrp to adjust its allocated > > and > > free numbers. The rgrplvb code will make this faster, but it would be nice > > if > > we would somehow keep "version 2" bitmaps such that each keeps its own > > statistics. > > > > That way we only need to journal and write the affected bitmap, and not > > necessarily its rgrp block as well. I could see us keep separate glocks > > for each bitmap, for example, and allowing multiple nodes to work on the > > same portion of the file system, but on unique bitmaps. > > > > On the other hand, we currently only need to look at the first block of > each resource group to figure out if a resource group is suitable for an > allocation. If we move that information into the bitmap blocks, we'll have > to look at each of those blocks instead. That's not going to improve our > performance. > > Andreas > The LVBs will shield us from that, but they won't shield us from having to rewrite 2 blocks instead of 1. Bob