Message ID | 1376672566-5446-1-git-send-email-sbehrens@giantdisaster.de (mailing list archive) |
---|---|
State | Not Applicable |
Headers | show |
On 8/16/13 12:02 PM, Stefan Behrens wrote: > The btrfs-progs tools changed the output: > - 100GiB instead of 100GB > - The number of spaces was changed ugh. > > Signed-off-by: Stefan Behrens <sbehrens@giantdisaster.de> > --- > common/filter | 2 +- > common/filter.btrfs | 3 ++- > tests/btrfs/006 | 6 +++--- > tests/btrfs/006.out | 36 ++++++++++++++++++------------------ > 4 files changed, 24 insertions(+), 23 deletions(-) > > diff --git a/common/filter b/common/filter > index dbb1674..ee738ca 100644 > --- a/common/filter > +++ b/common/filter > @@ -262,7 +262,7 @@ _filter_uuid() > # Filter out sizes like 6.14MB etc > _filter_size() > { > - sed -e "s/[0-9\.]\+\s\?[b|k|m|g|t][b]\?/<SIZE>/ig" > + sed -e "s/[0-9\.]\+\s\?[b|k|m|g|t][i]\?[b]\?/<SIZE>/ig" > } makes sense But for the rest, is the output change intentional, or sloppiness/accidental? If it's really intentional, then: Reviewed-by: Eric Sandeen <sandeen@redhat.com> > # Convert string read from stdin like 128K to bytes and print it to stdout > diff --git a/common/filter.btrfs b/common/filter.btrfs > index e9a2bc2..1584596 100644 > --- a/common/filter.btrfs > +++ b/common/filter.btrfs > @@ -33,6 +33,7 @@ _filter_btrfs_filesystem_show() > # the uniq collapses all device lines into 1 > _filter_uuid $UUID | _filter_scratch | _filter_scratch_pool | \ > _filter_size | _filter_btrfs_version | _filter_devid | \ > + _filter_spaces | \ > sed -e "s/\(Total devices\) $NUMDEVS/\1 $NUM_SUBST/g" | \ > uniq > } > @@ -51,7 +52,7 @@ _filter_btrfs_device_stats() > UNIQ_OPT="" > fi > > - _filter_scratch | _filter_scratch_pool | \ > + _filter_scratch | _filter_scratch_pool | _filter_spaces | \ > sed -e "s/[0-9]\+$/<NUM>/g" | sort | uniq $UNIQ_OPT | \ > sed -e "s/$NUMDEVS /<NUMDEVS> /g" > } > diff --git a/tests/btrfs/006 b/tests/btrfs/006 > index 9f7beff..f323cc4 100755 > --- a/tests/btrfs/006 > +++ b/tests/btrfs/006 > @@ -82,13 +82,13 @@ echo "== Sync filesystem" > $BTRFS_UTIL_PROG filesystem sync $SCRATCH_MNT | _filter_scratch > > echo "== Show device stats by mountpoint" > -$BTRFS_UTIL_PROG device stats $SCRATCH_MNT | _filter_btrfs_device_stats $TOTAL_DEVS > +$BTRFS_UTIL_PROG device stats $SCRATCH_MNT | _filter_btrfs_device_stats $TOTAL_DEVS | _filter_spaces > echo "== Show device stats by first/scratch dev" > $BTRFS_UTIL_PROG device stats $SCRATCH_DEV | _filter_btrfs_device_stats > echo "== Show device stats by second dev" > -$BTRFS_UTIL_PROG device stats $FIRST_POOL_DEV | sed -e "s,$FIRST_POOL_DEV,FIRST_POOL_DEV,g" > +$BTRFS_UTIL_PROG device stats $FIRST_POOL_DEV | sed -e "s,$FIRST_POOL_DEV,FIRST_POOL_DEV,g" | _filter_spaces > echo "== Show device stats by last dev" > -$BTRFS_UTIL_PROG device stats $LAST_POOL_DEV | sed -e "s,$LAST_POOL_DEV,LAST_POOL_DEV,g" > +$BTRFS_UTIL_PROG device stats $LAST_POOL_DEV | sed -e "s,$LAST_POOL_DEV,LAST_POOL_DEV,g" | _filter_spaces > > # success, all done > status=0 > diff --git a/tests/btrfs/006.out b/tests/btrfs/006.out > index ab33b7e..413a5a8 100644 > --- a/tests/btrfs/006.out > +++ b/tests/btrfs/006.out > @@ -4,38 +4,38 @@ > TestLabel.006 > == Mount. > == Show filesystem by label > -Label: 'TestLabel.006' uuid: <UUID> > +Label: 'TestLabel.006' uuid: <UUID> > Total devices <EXACTNUM> FS bytes used <SIZE> > - devid <DEVID> size <SIZE> used <SIZE> path SCRATCH_DEV > + devid <DEVID> size <SIZE> used <SIZE> path SCRATCH_DEV > > == Show filesystem by UUID > -Label: 'TestLabel.006' uuid: <EXACTUUID> > +Label: 'TestLabel.006' uuid: <EXACTUUID> > Total devices <EXACTNUM> FS bytes used <SIZE> > - devid <DEVID> size <SIZE> used <SIZE> path SCRATCH_DEV > + devid <DEVID> size <SIZE> used <SIZE> path SCRATCH_DEV > > == Sync filesystem > FSSync 'SCRATCH_MNT' > == Show device stats by mountpoint > - <NUMDEVS> [SCRATCH_DEV].corruption_errs <NUM> > - <NUMDEVS> [SCRATCH_DEV].flush_io_errs <NUM> > - <NUMDEVS> [SCRATCH_DEV].generation_errs <NUM> > - <NUMDEVS> [SCRATCH_DEV].read_io_errs <NUM> > - <NUMDEVS> [SCRATCH_DEV].write_io_errs <NUM> > + <NUMDEVS> [SCRATCH_DEV].corruption_errs <NUM> > + <NUMDEVS> [SCRATCH_DEV].flush_io_errs <NUM> > + <NUMDEVS> [SCRATCH_DEV].generation_errs <NUM> > + <NUMDEVS> [SCRATCH_DEV].read_io_errs <NUM> > + <NUMDEVS> [SCRATCH_DEV].write_io_errs <NUM> > == Show device stats by first/scratch dev > [SCRATCH_DEV].corruption_errs <NUM> > -[SCRATCH_DEV].flush_io_errs <NUM> > +[SCRATCH_DEV].flush_io_errs <NUM> > [SCRATCH_DEV].generation_errs <NUM> > -[SCRATCH_DEV].read_io_errs <NUM> > -[SCRATCH_DEV].write_io_errs <NUM> > +[SCRATCH_DEV].read_io_errs <NUM> > +[SCRATCH_DEV].write_io_errs <NUM> > == Show device stats by second dev > -[FIRST_POOL_DEV].write_io_errs 0 > -[FIRST_POOL_DEV].read_io_errs 0 > -[FIRST_POOL_DEV].flush_io_errs 0 > +[FIRST_POOL_DEV].write_io_errs 0 > +[FIRST_POOL_DEV].read_io_errs 0 > +[FIRST_POOL_DEV].flush_io_errs 0 > [FIRST_POOL_DEV].corruption_errs 0 > [FIRST_POOL_DEV].generation_errs 0 > == Show device stats by last dev > -[LAST_POOL_DEV].write_io_errs 0 > -[LAST_POOL_DEV].read_io_errs 0 > -[LAST_POOL_DEV].flush_io_errs 0 > +[LAST_POOL_DEV].write_io_errs 0 > +[LAST_POOL_DEV].read_io_errs 0 > +[LAST_POOL_DEV].flush_io_errs 0 > [LAST_POOL_DEV].corruption_errs 0 > [LAST_POOL_DEV].generation_errs 0 > -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Fri, 16 Aug 2013 12:10:31 -0500, Eric Sandeen wrote: > On 8/16/13 12:02 PM, Stefan Behrens wrote: >> The btrfs-progs tools changed the output: >> - 100GiB instead of 100GB >> - The number of spaces was changed > > ugh. > >> >> Signed-off-by: Stefan Behrens <sbehrens@giantdisaster.de> >> --- >> common/filter | 2 +- >> common/filter.btrfs | 3 ++- >> tests/btrfs/006 | 6 +++--- >> tests/btrfs/006.out | 36 ++++++++++++++++++------------------ >> 4 files changed, 24 insertions(+), 23 deletions(-) >> >> diff --git a/common/filter b/common/filter >> index dbb1674..ee738ca 100644 >> --- a/common/filter >> +++ b/common/filter >> @@ -262,7 +262,7 @@ _filter_uuid() >> # Filter out sizes like 6.14MB etc >> _filter_size() >> { >> - sed -e "s/[0-9\.]\+\s\?[b|k|m|g|t][b]\?/<SIZE>/ig" >> + sed -e "s/[0-9\.]\+\s\?[b|k|m|g|t][i]\?[b]\?/<SIZE>/ig" >> } > > makes sense > > But for the rest, is the output change intentional, or sloppiness/accidental? > > If it's really intentional, then: > > Reviewed-by: Eric Sandeen <sandeen@redhat.com> > Thanks for the review, Eric! Since this commit is not yet added to the repo, I just took the time to create a cleaner fix. The tools didn't change the number of spaces in the output. The root cause was that I had 11 devices in SCRATCH_DEV_POOL for the first time. And this caused changes in the number of spaces in the output wherever things like %4d was used. One problem was the output of "uniq -c" which added spaces depending on the size of the count value (e.g. one space less for 10+ devices). The second problem was that "btrfs fi show" was doing the same: "devid %4llu size %s used %s path %s". Please scratch this patch out, I'll send two better patches instead which address the real problems. >> # Convert string read from stdin like 128K to bytes and print it to stdout >> diff --git a/common/filter.btrfs b/common/filter.btrfs >> index e9a2bc2..1584596 100644 >> --- a/common/filter.btrfs >> +++ b/common/filter.btrfs >> @@ -33,6 +33,7 @@ _filter_btrfs_filesystem_show() >> # the uniq collapses all device lines into 1 >> _filter_uuid $UUID | _filter_scratch | _filter_scratch_pool | \ >> _filter_size | _filter_btrfs_version | _filter_devid | \ >> + _filter_spaces | \ >> sed -e "s/\(Total devices\) $NUMDEVS/\1 $NUM_SUBST/g" | \ >> uniq >> } >> @@ -51,7 +52,7 @@ _filter_btrfs_device_stats() >> UNIQ_OPT="" >> fi >> >> - _filter_scratch | _filter_scratch_pool | \ >> + _filter_scratch | _filter_scratch_pool | _filter_spaces | \ >> sed -e "s/[0-9]\+$/<NUM>/g" | sort | uniq $UNIQ_OPT | \ >> sed -e "s/$NUMDEVS /<NUMDEVS> /g" >> } >> diff --git a/tests/btrfs/006 b/tests/btrfs/006 >> index 9f7beff..f323cc4 100755 >> --- a/tests/btrfs/006 >> +++ b/tests/btrfs/006 >> @@ -82,13 +82,13 @@ echo "== Sync filesystem" >> $BTRFS_UTIL_PROG filesystem sync $SCRATCH_MNT | _filter_scratch >> >> echo "== Show device stats by mountpoint" >> -$BTRFS_UTIL_PROG device stats $SCRATCH_MNT | _filter_btrfs_device_stats $TOTAL_DEVS >> +$BTRFS_UTIL_PROG device stats $SCRATCH_MNT | _filter_btrfs_device_stats $TOTAL_DEVS | _filter_spaces >> echo "== Show device stats by first/scratch dev" >> $BTRFS_UTIL_PROG device stats $SCRATCH_DEV | _filter_btrfs_device_stats >> echo "== Show device stats by second dev" >> -$BTRFS_UTIL_PROG device stats $FIRST_POOL_DEV | sed -e "s,$FIRST_POOL_DEV,FIRST_POOL_DEV,g" >> +$BTRFS_UTIL_PROG device stats $FIRST_POOL_DEV | sed -e "s,$FIRST_POOL_DEV,FIRST_POOL_DEV,g" | _filter_spaces >> echo "== Show device stats by last dev" >> -$BTRFS_UTIL_PROG device stats $LAST_POOL_DEV | sed -e "s,$LAST_POOL_DEV,LAST_POOL_DEV,g" >> +$BTRFS_UTIL_PROG device stats $LAST_POOL_DEV | sed -e "s,$LAST_POOL_DEV,LAST_POOL_DEV,g" | _filter_spaces >> >> # success, all done >> status=0 >> diff --git a/tests/btrfs/006.out b/tests/btrfs/006.out >> index ab33b7e..413a5a8 100644 >> --- a/tests/btrfs/006.out >> +++ b/tests/btrfs/006.out >> @@ -4,38 +4,38 @@ >> TestLabel.006 >> == Mount. >> == Show filesystem by label >> -Label: 'TestLabel.006' uuid: <UUID> >> +Label: 'TestLabel.006' uuid: <UUID> >> Total devices <EXACTNUM> FS bytes used <SIZE> >> - devid <DEVID> size <SIZE> used <SIZE> path SCRATCH_DEV >> + devid <DEVID> size <SIZE> used <SIZE> path SCRATCH_DEV >> >> == Show filesystem by UUID >> -Label: 'TestLabel.006' uuid: <EXACTUUID> >> +Label: 'TestLabel.006' uuid: <EXACTUUID> >> Total devices <EXACTNUM> FS bytes used <SIZE> >> - devid <DEVID> size <SIZE> used <SIZE> path SCRATCH_DEV >> + devid <DEVID> size <SIZE> used <SIZE> path SCRATCH_DEV >> >> == Sync filesystem >> FSSync 'SCRATCH_MNT' >> == Show device stats by mountpoint >> - <NUMDEVS> [SCRATCH_DEV].corruption_errs <NUM> >> - <NUMDEVS> [SCRATCH_DEV].flush_io_errs <NUM> >> - <NUMDEVS> [SCRATCH_DEV].generation_errs <NUM> >> - <NUMDEVS> [SCRATCH_DEV].read_io_errs <NUM> >> - <NUMDEVS> [SCRATCH_DEV].write_io_errs <NUM> >> + <NUMDEVS> [SCRATCH_DEV].corruption_errs <NUM> >> + <NUMDEVS> [SCRATCH_DEV].flush_io_errs <NUM> >> + <NUMDEVS> [SCRATCH_DEV].generation_errs <NUM> >> + <NUMDEVS> [SCRATCH_DEV].read_io_errs <NUM> >> + <NUMDEVS> [SCRATCH_DEV].write_io_errs <NUM> >> == Show device stats by first/scratch dev >> [SCRATCH_DEV].corruption_errs <NUM> >> -[SCRATCH_DEV].flush_io_errs <NUM> >> +[SCRATCH_DEV].flush_io_errs <NUM> >> [SCRATCH_DEV].generation_errs <NUM> >> -[SCRATCH_DEV].read_io_errs <NUM> >> -[SCRATCH_DEV].write_io_errs <NUM> >> +[SCRATCH_DEV].read_io_errs <NUM> >> +[SCRATCH_DEV].write_io_errs <NUM> >> == Show device stats by second dev >> -[FIRST_POOL_DEV].write_io_errs 0 >> -[FIRST_POOL_DEV].read_io_errs 0 >> -[FIRST_POOL_DEV].flush_io_errs 0 >> +[FIRST_POOL_DEV].write_io_errs 0 >> +[FIRST_POOL_DEV].read_io_errs 0 >> +[FIRST_POOL_DEV].flush_io_errs 0 >> [FIRST_POOL_DEV].corruption_errs 0 >> [FIRST_POOL_DEV].generation_errs 0 >> == Show device stats by last dev >> -[LAST_POOL_DEV].write_io_errs 0 >> -[LAST_POOL_DEV].read_io_errs 0 >> -[LAST_POOL_DEV].flush_io_errs 0 >> +[LAST_POOL_DEV].write_io_errs 0 >> +[LAST_POOL_DEV].read_io_errs 0 >> +[LAST_POOL_DEV].flush_io_errs 0 >> [LAST_POOL_DEV].corruption_errs 0 >> [LAST_POOL_DEV].generation_errs 0 >> > -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/common/filter b/common/filter index dbb1674..ee738ca 100644 --- a/common/filter +++ b/common/filter @@ -262,7 +262,7 @@ _filter_uuid() # Filter out sizes like 6.14MB etc _filter_size() { - sed -e "s/[0-9\.]\+\s\?[b|k|m|g|t][b]\?/<SIZE>/ig" + sed -e "s/[0-9\.]\+\s\?[b|k|m|g|t][i]\?[b]\?/<SIZE>/ig" } # Convert string read from stdin like 128K to bytes and print it to stdout diff --git a/common/filter.btrfs b/common/filter.btrfs index e9a2bc2..1584596 100644 --- a/common/filter.btrfs +++ b/common/filter.btrfs @@ -33,6 +33,7 @@ _filter_btrfs_filesystem_show() # the uniq collapses all device lines into 1 _filter_uuid $UUID | _filter_scratch | _filter_scratch_pool | \ _filter_size | _filter_btrfs_version | _filter_devid | \ + _filter_spaces | \ sed -e "s/\(Total devices\) $NUMDEVS/\1 $NUM_SUBST/g" | \ uniq } @@ -51,7 +52,7 @@ _filter_btrfs_device_stats() UNIQ_OPT="" fi - _filter_scratch | _filter_scratch_pool | \ + _filter_scratch | _filter_scratch_pool | _filter_spaces | \ sed -e "s/[0-9]\+$/<NUM>/g" | sort | uniq $UNIQ_OPT | \ sed -e "s/$NUMDEVS /<NUMDEVS> /g" } diff --git a/tests/btrfs/006 b/tests/btrfs/006 index 9f7beff..f323cc4 100755 --- a/tests/btrfs/006 +++ b/tests/btrfs/006 @@ -82,13 +82,13 @@ echo "== Sync filesystem" $BTRFS_UTIL_PROG filesystem sync $SCRATCH_MNT | _filter_scratch echo "== Show device stats by mountpoint" -$BTRFS_UTIL_PROG device stats $SCRATCH_MNT | _filter_btrfs_device_stats $TOTAL_DEVS +$BTRFS_UTIL_PROG device stats $SCRATCH_MNT | _filter_btrfs_device_stats $TOTAL_DEVS | _filter_spaces echo "== Show device stats by first/scratch dev" $BTRFS_UTIL_PROG device stats $SCRATCH_DEV | _filter_btrfs_device_stats echo "== Show device stats by second dev" -$BTRFS_UTIL_PROG device stats $FIRST_POOL_DEV | sed -e "s,$FIRST_POOL_DEV,FIRST_POOL_DEV,g" +$BTRFS_UTIL_PROG device stats $FIRST_POOL_DEV | sed -e "s,$FIRST_POOL_DEV,FIRST_POOL_DEV,g" | _filter_spaces echo "== Show device stats by last dev" -$BTRFS_UTIL_PROG device stats $LAST_POOL_DEV | sed -e "s,$LAST_POOL_DEV,LAST_POOL_DEV,g" +$BTRFS_UTIL_PROG device stats $LAST_POOL_DEV | sed -e "s,$LAST_POOL_DEV,LAST_POOL_DEV,g" | _filter_spaces # success, all done status=0 diff --git a/tests/btrfs/006.out b/tests/btrfs/006.out index ab33b7e..413a5a8 100644 --- a/tests/btrfs/006.out +++ b/tests/btrfs/006.out @@ -4,38 +4,38 @@ TestLabel.006 == Mount. == Show filesystem by label -Label: 'TestLabel.006' uuid: <UUID> +Label: 'TestLabel.006' uuid: <UUID> Total devices <EXACTNUM> FS bytes used <SIZE> - devid <DEVID> size <SIZE> used <SIZE> path SCRATCH_DEV + devid <DEVID> size <SIZE> used <SIZE> path SCRATCH_DEV == Show filesystem by UUID -Label: 'TestLabel.006' uuid: <EXACTUUID> +Label: 'TestLabel.006' uuid: <EXACTUUID> Total devices <EXACTNUM> FS bytes used <SIZE> - devid <DEVID> size <SIZE> used <SIZE> path SCRATCH_DEV + devid <DEVID> size <SIZE> used <SIZE> path SCRATCH_DEV == Sync filesystem FSSync 'SCRATCH_MNT' == Show device stats by mountpoint - <NUMDEVS> [SCRATCH_DEV].corruption_errs <NUM> - <NUMDEVS> [SCRATCH_DEV].flush_io_errs <NUM> - <NUMDEVS> [SCRATCH_DEV].generation_errs <NUM> - <NUMDEVS> [SCRATCH_DEV].read_io_errs <NUM> - <NUMDEVS> [SCRATCH_DEV].write_io_errs <NUM> + <NUMDEVS> [SCRATCH_DEV].corruption_errs <NUM> + <NUMDEVS> [SCRATCH_DEV].flush_io_errs <NUM> + <NUMDEVS> [SCRATCH_DEV].generation_errs <NUM> + <NUMDEVS> [SCRATCH_DEV].read_io_errs <NUM> + <NUMDEVS> [SCRATCH_DEV].write_io_errs <NUM> == Show device stats by first/scratch dev [SCRATCH_DEV].corruption_errs <NUM> -[SCRATCH_DEV].flush_io_errs <NUM> +[SCRATCH_DEV].flush_io_errs <NUM> [SCRATCH_DEV].generation_errs <NUM> -[SCRATCH_DEV].read_io_errs <NUM> -[SCRATCH_DEV].write_io_errs <NUM> +[SCRATCH_DEV].read_io_errs <NUM> +[SCRATCH_DEV].write_io_errs <NUM> == Show device stats by second dev -[FIRST_POOL_DEV].write_io_errs 0 -[FIRST_POOL_DEV].read_io_errs 0 -[FIRST_POOL_DEV].flush_io_errs 0 +[FIRST_POOL_DEV].write_io_errs 0 +[FIRST_POOL_DEV].read_io_errs 0 +[FIRST_POOL_DEV].flush_io_errs 0 [FIRST_POOL_DEV].corruption_errs 0 [FIRST_POOL_DEV].generation_errs 0 == Show device stats by last dev -[LAST_POOL_DEV].write_io_errs 0 -[LAST_POOL_DEV].read_io_errs 0 -[LAST_POOL_DEV].flush_io_errs 0 +[LAST_POOL_DEV].write_io_errs 0 +[LAST_POOL_DEV].read_io_errs 0 +[LAST_POOL_DEV].flush_io_errs 0 [LAST_POOL_DEV].corruption_errs 0 [LAST_POOL_DEV].generation_errs 0
The btrfs-progs tools changed the output: - 100GiB instead of 100GB - The number of spaces was changed Signed-off-by: Stefan Behrens <sbehrens@giantdisaster.de> --- common/filter | 2 +- common/filter.btrfs | 3 ++- tests/btrfs/006 | 6 +++--- tests/btrfs/006.out | 36 ++++++++++++++++++------------------ 4 files changed, 24 insertions(+), 23 deletions(-)