mirror of
https://git.postgresql.org/git/postgresql.git
synced 2025-01-12 18:34:36 +08:00
Truncate filenames in the leadning end in pg_basebackup verbose output
When truncating at the end, like before, the output would often end up just showing the path instead of the filename. Also increase the length of the filename by 5, which still keeps us at less than 80 characters in most outputs.
This commit is contained in:
parent
f3af53441e
commit
d7e9ca7ff7
@ -422,6 +422,7 @@ progress_report(int tablespacenum, const char *filename)
|
||||
totaldone / 1024);
|
||||
snprintf(totalsize_str, sizeof(totalsize_str), INT64_FORMAT, totalsize);
|
||||
|
||||
#define VERBOSE_FILENAME_LENGTH 35
|
||||
if (verbose)
|
||||
{
|
||||
if (!filename)
|
||||
@ -431,18 +432,29 @@ progress_report(int tablespacenum, const char *filename)
|
||||
* call)
|
||||
*/
|
||||
fprintf(stderr,
|
||||
ngettext("%s/%s kB (100%%), %d/%d tablespace %35s",
|
||||
"%s/%s kB (100%%), %d/%d tablespaces %35s",
|
||||
ngettext("%s/%s kB (100%%), %d/%d tablespace %*s",
|
||||
"%s/%s kB (100%%), %d/%d tablespaces %*s",
|
||||
tablespacecount),
|
||||
totaldone_str, totalsize_str,
|
||||
tablespacenum, tablespacecount, "");
|
||||
tablespacenum, tablespacecount,
|
||||
VERBOSE_FILENAME_LENGTH + 5, "");
|
||||
else
|
||||
{
|
||||
bool truncate = (strlen(filename) > VERBOSE_FILENAME_LENGTH);
|
||||
|
||||
fprintf(stderr,
|
||||
ngettext("%s/%s kB (%d%%), %d/%d tablespace (%-30.30s)",
|
||||
"%s/%s kB (%d%%), %d/%d tablespaces (%-30.30s)",
|
||||
ngettext("%s/%s kB (%d%%), %d/%d tablespace (%s%-*.*s)",
|
||||
"%s/%s kB (%d%%), %d/%d tablespaces (%s%-*.*s)",
|
||||
tablespacecount),
|
||||
totaldone_str, totalsize_str, percent,
|
||||
tablespacenum, tablespacecount, filename);
|
||||
tablespacenum, tablespacecount,
|
||||
/* Prefix with "..." if we do leading truncation */
|
||||
truncate ? "..." : "",
|
||||
truncate ? VERBOSE_FILENAME_LENGTH - 3 : VERBOSE_FILENAME_LENGTH,
|
||||
truncate ? VERBOSE_FILENAME_LENGTH - 3 : VERBOSE_FILENAME_LENGTH,
|
||||
/* Truncate filename at beginning if it's too long */
|
||||
truncate ? filename + strlen(filename) - VERBOSE_FILENAME_LENGTH + 3 : filename);
|
||||
}
|
||||
}
|
||||
else
|
||||
fprintf(stderr,
|
||||
|
Loading…
Reference in New Issue
Block a user