Note: "permalinks" may not be as permanent as we would like,
direct links of old sources may well be a few messages off.
On Wed, Jan 09, 2008 at 04:44:51PM +0100, Tomasz Chmielewski wrote: > I just noticed that it is possible to sync a bigger device to a smaller > device (i.e., drbd will sync a 500 GB device onto a 450 GB device). > > > drbd_receiver.c will even warn us of a "considerable difference", but > the sync will progress: > > > /* warn if the arguments differ by more than 12.5% */ > static void warn_if_differ_considerably(struct drbd_conf *mdev, > const char *s, sector_t a, sector_t b) > { > sector_t d; > if (a == 0 || b == 0) > return; > d = (a > b) ? (a - b) : (b - a); > if ( d > (a>>3) || d > (b>>3)) > WARN("Considerable difference in %s: %llus vs. %llus\n", s, > (unsigned long long)a, (unsigned long long)b); > } > > > > What's the point in trying to synchronize a bigger device on a smaller one? > > Just asking, perhaps there are some valid uses. cat /proc/partitions if you configure drbd, and for some reason have one node with 450GB, the other node with 500GB, then drbd will of course know that it can only use the minimum. mainly its just convenience for you, we don't force you to configure exactly identically sized backing store. differences of some sectors or even tracks can be seen often. that is why drbd only warns you when it thinks you maybe did not mean to waste those 50GB. but if you want to, its up to you. maybe you have two vgs with different pe size, and the older does not align with the newer one, you introduce drbd after the fact etc... -- : Lars Ellenberg http://www.linbit.com : : DRBD/HA support and consulting sales at linbit.com : : LINBIT Information Technologies GmbH Tel +43-1-8178292-0 : : Vivenotgasse 48, A-1120 Vienna/Europe Fax +43-1-8178292-82 : __ please use the "List-Reply" function of your email client.