ClickHouse/docs/en/operations/system-tables/part_log.md

5.2 KiB

slug
/en/operations/system-tables/part_log

part_log

The system.part_log table is created only if the part_log server setting is specified.

This table contains information about events that occurred with data parts in the MergeTree family tables, such as adding or merging data.

The system.part_log table contains the following columns:

  • query_id (String) — Identifier of the INSERT query that created this data part.
  • event_type (Enum8) — Type of the event that occurred with the data part. Can have one of the following values:
    • NEW_PART — Inserting of a new data part.
    • MERGE_PARTS — Merging of data parts.
    • DOWNLOAD_PART — Downloading a data part.
    • REMOVE_PART — Removing or detaching a data part using DETACH PARTITION.
    • MUTATE_PART — Mutating of a data part.
    • MOVE_PART — Moving the data part from the one disk to another one.
  • merge_reason (Enum8) — The reason for the event with type MERGE_PARTS. Can have one of the following values:
    • NOT_A_MERGE — The current event has the type other than MERGE_PARTS.
    • REGULAR_MERGE — Some regular merge.
    • TTL_DELETE_MERGE — Cleaning up expired data.
    • TTL_RECOMPRESS_MERGE — Recompressing data part with the.
  • merge_algorithm (Enum8) — Merge algorithm for the event with type MERGE_PARTS. Can have one of the following values:
    • UNDECIDED
    • HORIZONTAL
    • VERTICAL
  • event_date (Date) — Event date.
  • event_time (DateTime) — Event time.
  • event_time_microseconds (DateTime64) — Event time with microseconds precision.
  • duration_ms (UInt64) — Duration.
  • database (String) — Name of the database the data part is in.
  • table (String) — Name of the table the data part is in.
  • part_name (String) — Name of the data part.
  • partition_id (String) — ID of the partition that the data part was inserted to. The column takes the all value if the partitioning is by tuple().
  • path_on_disk (String) — Absolute path to the folder with data part files.
  • rows (UInt64) — The number of rows in the data part.
  • size_in_bytes (UInt64) — Size of the data part in bytes.
  • merged_from (Array(String)) — An array of names of the parts which the current part was made up from (after the merge).
  • bytes_uncompressed (UInt64) — Size of uncompressed bytes.
  • read_rows (UInt64) — The number of rows was read during the merge.
  • read_bytes (UInt64) — The number of bytes was read during the merge.
  • peak_memory_usage (Int64) — The maximum difference between the amount of allocated and freed memory in context of this thread.
  • error (UInt16) — The code number of the occurred error.
  • exception (String) — Text message of the occurred error.

The system.part_log table is created after the first inserting data to the MergeTree table.

Example

SELECT * FROM system.part_log LIMIT 1 FORMAT Vertical;
Row 1:
──────
query_id:                      983ad9c7-28d5-4ae1-844e-603116b7de31
event_type:                    NewPart
merge_reason:                  NotAMerge
merge_algorithm:               Undecided
event_date:                    2021-02-02
event_time:                    2021-02-02 11:14:28
event_time_microseconds:                    2021-02-02 11:14:28.861919
duration_ms:                   35
database:                      default
table:                         log_mt_2
part_name:                     all_1_1_0
partition_id:                  all
path_on_disk:                  db/data/default/log_mt_2/all_1_1_0/
rows:                          115418
size_in_bytes:                 1074311
merged_from:                   []
bytes_uncompressed:            0
read_rows:                     0
read_bytes:                    0
peak_memory_usage:             0
error:                         0
exception: