Skip to content

Improve gbak logging of ignored records with skip/include (schema) data by mentioning the table name #9075

Description

@mrotteveel

Currently, looking at Firebird 5.0.4, and snapshot of 6.0.0, when using gbak with -skip_data, -include_data, -skip_schema_data or -include_schema_data on restore (i.e. the backup does include data for the tables), the gbak output mentions that records are ignored, but not the table.

For example, when using -SKIP_DATA TAB_1_%, the log output is:

gbak:restoring table "PUBLIC"."TAB_1_A"
gbak:    restoring column "ID"
gbak:restoring table "PUBLIC"."TAB_1_B"
gbak:    restoring column "ID"
gbak:restoring table "PUBLIC"."TAB_2_A"
gbak:    restoring column "ID"
gbak:restoring table "PUBLIC"."TAB_2_B"
gbak:    restoring column "ID"
gbak:committing metadata
gbak:restoring data for table "PUBLIC"."TAB_2_B"
gbak:   1 records restored
gbak:restoring data for table "PUBLIC"."TAB_2_A"
gbak:   1 records restored
gbak:     1 records ignored
gbak:     1 records ignored

The following lines are in my opinion not very helpful:

gbak:     1 records ignored
gbak:     1 records ignored

They don't mention the tables (i.e. "PUBLIC"."TAB_1_A" and "PUBLIC"."TAB_1_B"), making the log lines confusing at best.

I suggest that we change the logging to explicitly mention the table, for example like:

gbak: skipping data for table "PUBLIC"."TAB_1_A"
gbak:   1 records ignored
gbak: skipping data for table "PUBLIC"."TAB_1_B"
gbak:   1 records ignored

or, more compact:

gbak: skipped 1 records for table "PUBLIC"."TAB_1_A"
gbak: skipped 1 records for table "PUBLIC"."TAB_1_B"

Or something like 1 records ignored for table "PUBLIC"."TAB_1_A", but I think using the verb skip makes more explicit this is related to the skip/include feature.

(Also, separately, the indentation seems off for those 1 records ignored lines.)

Metadata

Metadata

Assignees

No one assigned
    No fields configured for Feature.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions