[Pvfs2-developers] genconfig handle assignment
Sam Lang
slang at mcs.anl.gov
Tue Dec 19 16:17:17 EST 2006
On Dec 19, 2006, at 10:44 AM, Pete Wyckoff wrote:
> We're trying to upgrade from HEAD as of 2006-04-15 to 2.6.1.
> There's little fixes I will check in, but I need some advice on
> this patch below.
>
> It works around changes to genconfig that went in on 2006-06-10
> by slang:
> http://www.pvfs.org/fisheye/browse/PVFS/src/apps/admin/pvfs2-
> genconfig?r1=1.54&r2=1.55
>
> We would like to preserve the same handle ranges, and specify
> on the genconfig command line:
>
> --first-handle=4 \
> --last-handle=4294967298 \
> --root-handle=1048576 \
>
> but the $count in the code as it was, was just data servers. The
> handle range needs to include metadata servers too. Tell me if this
> should be handled better than how I hacked around the issue.
Your change looks fine. You probably could just pass ($meta_count +
$io_count) to emIt_filesystem, but this is perl, so cleanliness is
hardly something to argue over. :-)
>
> Turns out it won't matter this time as we have to rebuild the
> data storage anyway due to the "dir_ent" -> "de" change. There was
> no warning on server startup about that, though.
Did you run the migration tool? If not, then the server should have
complained about storage version mismatch. If you did run the
migration tool, all your 'dir_ent' keyvals should now be 'de'.
-sam
>
> -- Pete
>
>
> --- src/apps/admin/pvfs2-genconfig 2006-12-19 11:17:04.000000000 -0500
> +++ oscbw 2006-12-19 11:28:04.000000000 -0500
> @@ -222,11 +222,13 @@
>
> # divide handle range space equally among servers ((2^32)-1
> for now)
> my($total_num_handles_available, $start, $end, $i, $step,
> $num_ranges);
> - $num_ranges = $count;
> $total_num_handles_available = $last_handle - $first_handle + 1;
>
> # since meta and data handle ranges must be split, increment
> # num nodes for calculation purposes below
> + my @meta_aliases = get_aliases($META_ENDPOINT);
> + my @io_aliases = get_aliases($IO_ENDPOINT);
> + $num_ranges = scalar(@meta_aliases) + scalar(@io_aliases);
> $step = sprintf("%lu",($total_num_handles_available /
> $num_ranges));
>
> print $target "\n<Filesystem>\n";
> @@ -241,7 +243,6 @@
>
> $start = $end = $first_handle - 1;
>
> - my @meta_aliases = get_aliases($META_ENDPOINT);
> @meta_aliases = sort @meta_aliases;
> foreach my $ma (@meta_aliases)
> {
> @@ -253,7 +254,6 @@
> print $target "\t</MetaHandleRanges>\n";
> print $target "\t<DataHandleRanges>\n";
>
> - my @io_aliases = get_aliases($IO_ENDPOINT);
> @io_aliases = sort @io_aliases;
> foreach my $ia (@io_aliases)
> {
> _______________________________________________
> Pvfs2-developers mailing list
> Pvfs2-developers at beowulf-underground.org
> http://www.beowulf-underground.org/mailman/listinfo/pvfs2-developers
>
More information about the Pvfs2-developers
mailing list