The only columns that show what they are supposed to are `database`, `table`, `name` and `disk`.
The other columns borrow values from a neighbour.
```
┌─table────────┬─partition_id─┬─name────────────────────────────────┬─disk────┬─reason─┬─min_block_number─┬─max_block_number─┬───level─┐
│ actions_log  │ ignored      │ ignored_202107_714380_714380_0      │ default │        │           202107 │           714380 │  714380 │
│ actions_log  │ ignored      │ ignored_202107_713838_713838_0      │ default │        │           202107 │           713838 │  713838 │
│ actions_log  │ ignored      │ ignored_202107_713875_713875_0      │ default │        │           202107 │           713875 │  713875 │
│ actions_log  │ ignored      │ ignored_202107_725839_725839_0      │ default │        │           202107 │           725839 │  725839 │
│ actions_log  │ ignored      │ ignored_202107_713927_713927_0      │ default │        │           202107 │           713927 │  713927 │
│ actions_log  │ ignored      │ ignored_202107_714009_714009_0      │ default │        │           202107 │           714009 │  714009 │
```
}
        }
        checksums.checkSizes(volume->getDisk(), path);
    }
    else
    {
        auto check_file_not_empty = [&path](const DiskPtr & disk_, const String & file_path)
        {
            UInt64 file_size;
            if (!disk_->exists(file_path) || (file_size = disk_->getFileSize(file_path)) == 0)
                throw Exception("Part " + fullPath(disk_, path) + " is broken: " + fullPath(disk_, file_path) + " is empty", ErrorCodes::BAD_SIZE_OF_FILE_IN_DATA_PART);
            return file_size;
        };
        
        if (!pk.column_names.empty())
            check_file_not_empty(volume->getDisk(), fs::path(path) / "primary.idx");
        if (storage.format_version >= MERGE_TREE_DATA_MIN_FORMAT_VERSION_WITH_CUSTOM_PARTITIONING)
        {
            check_file_not_empty(volume->getDisk(), fs::path(path) / "count.txt");
            if (metadata_snapshot->hasPartitionKey())
                check_file_not_empty(volume->getDisk(), fs::path(path) / "partition.dat");
            if (!parent_part)
            {
                for (const String & col_name : storage.getMinMaxColumnsNames(partition_key))
                    check_file_not_empty(volume->getDisk(), fs::path(path) / ("minmax_" + escapeForFileName(col_name) + ".idx"));
            }
        }
    }
}
void IMergeTreeDataPart::checkConsistency(bool ) const