Since merge of LU-11510, lfs migrate on a non-existing file will give
the following error "lfs migrate: can't create composite layout from
file /some/path/to/file" and will exit with code 0, potentially
leaving a calling script unaware of the error.
This patch fixes it by using errno which is set in the call to
llapi_layout_get_by_path()
Lustre-change: https://review.whamcloud.com/38953
Lustre-commit:
52d7cb5913c1e653a89d3a4de5f39c0e596dd28c
Signed-off-by: Sebastien Piechurski <sebastien.piechurski@atos.net>
Change-Id: I910eae78445f6071ff4e741afd43d140f554ab22
Fixes:
8bedfa377fbd ("LU-11510 lfs: migrate a composite layout file correctly")
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/40709
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Olaf Faaland <faaland1@llnl.gov>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Gian-Carlo DeFazio <defazio1@llnl.gov>
for (fname = argv[optind]; fname != NULL; fname = argv[++optind]) {
if (from_copy) {
layout = llapi_layout_get_by_path(template ?: fname, 0);
- if (layout == NULL) {
- fprintf(stderr, "%s: can't create composite "
- "layout from file %s.\n",
- progname, template ?: fname);
+ if (!layout) {
+ fprintf(stderr,
+ "%s: can't create composite layout from file %s: %s\n",
+ progname, template ?: fname,
+ strerror(errno));
+ result = -errno;
goto error;
}
}