Skip to content

TTLDelete + ttl_only_drop_parts does not work for volumes with prefer_not_to_merge=true #85636

@aalexfvk

Description

@aalexfvk

Company or project name

No response

Describe the unexpected behaviour

ClickHouse takes into account prefer_not_to_merge setting here. Already filtered part ranges are returned from part collector

Call sequence:

grabAllPossibleRanges()
  splitPartsByPreconditions()
    constructPreconditionsPredicate()
      part->shallParticipateInMerges()

And then we choose appropriate merge type (chooseMergesFrom) for the filtered vector of ranges.

Parts is not longer deleted by TTL on the volumes with enabled prefer_not_to_merge and ttl_only_drop_parts.

Previously we had an exclusion for ttl_only_drop_parts. It looks like this exclusion was lost in the #73294.

Which ClickHouse versions are affected?

Since 25.1

How to reproduce

TTLDelete + ttl_only_drop_parts does not work volumes with prefer_not_to_merge=true

Error message and/or stacktrace

No response

Additional context

No response

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions