summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
2b23ad0)
If "lfs migrate" returns an error, possibly because it is refusing
to migrate an IGIF FID, fall back to using rsync to copy the file
and rename it. Print a message in this case so the user knows it
is not a fatal error yet.
Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Change-Id: I114006afb93d8c8d78923a874f3b914200500c1e
Reviewed-on: http://review.whamcloud.com/8616
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Faccini Bruno <bruno.faccini@intel.com>
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
2> /dev/null)
[ -z "$COUNT" -o -z "$SIZE" ] && UNLINK=""
2> /dev/null)
[ -z "$COUNT" -o -z "$SIZE" ] && UNLINK=""
+ SIZE=${LFS_SIZE_OPT}${SIZE}
fi
# first try to migrate inside lustre
# if failed go back to old rsync mode
if [[ $RSYNC_MODE == false ]]; then
fi
# first try to migrate inside lustre
# if failed go back to old rsync mode
if [[ $RSYNC_MODE == false ]]; then
- $LFS migrate -c${COUNT} ${LFS_SIZE_OPT}${SIZE} $OLDNAME
- if [[ $? == 0 ]]; then
+ if $LFS migrate -c${COUNT} ${SIZE} "$OLDNAME"; then
$ECHO "done"
continue
else
$ECHO "done"
continue
else
+ echo "falling back to rsync-based migration"
- [ "$UNLINK" ] && $LFS setstripe -c${COUNT} \
- ${LFS_SIZE_OPT}${SIZE} "$NEWNAME"
+ [ "$UNLINK" ] && $LFS setstripe -c${COUNT} ${SIZE} "$NEWNAME"
# we use --inplace, since we created our own temp file already
if ! $RSYNC -a --inplace $RSYNC_OPTS "$OLDNAME" "$NEWNAME";then
# we use --inplace, since we created our own temp file already
if ! $RSYNC -a --inplace $RSYNC_OPTS "$OLDNAME" "$NEWNAME";then
SWAP_LAYOUTS_KEEP_MTIME |
SWAP_LAYOUTS_KEEP_ATIME);
if (rc == -EAGAIN) {
SWAP_LAYOUTS_KEEP_MTIME |
SWAP_LAYOUTS_KEEP_ATIME);
if (rc == -EAGAIN) {
- fprintf(stderr, "file dataversion for %s has changed"
- " during copy, migration is aborted\n",
- name);
+ fprintf(stderr, "%s: dataversion changed during copy, "
+ "migration aborted\n", name);
goto error;
}
if (rc != 0)
goto error;
}
if (rc != 0)
- fprintf(stderr, "cannot swap layouts between %s and "
- "a volatile file (%s)\n",
+ fprintf(stderr, "%s: swap layout to new file failed: %s\n",
name, strerror(-rc));
error:
name, strerror(-rc));
error: