<freeStyleBuild _class='hudson.model.FreeStyleBuild'><action _class='hudson.model.CauseAction'><cause _class='com.cloudbees.jenkins.GitHubPushCause'><shortDescription>Started by GitHub push by ti-chi-bot[bot]</shortDescription></cause></action><action></action><action _class='jenkins.metrics.impl.TimeInQueueAction'><blockedDurationMillis>0</blockedDurationMillis><blockedTimeMillis>0</blockedTimeMillis><buildableDurationMillis>15468</buildableDurationMillis><buildableTimeMillis>15468</buildableTimeMillis><buildingDurationMillis>60197</buildingDurationMillis><executingTimeMillis>60197</executingTimeMillis><executorUtilization>1.0</executorUtilization><subTaskCount>0</subTaskCount><waitingDurationMillis>6648</waitingDurationMillis><waitingTimeMillis>6648</waitingTimeMillis></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><originmain _class='hudson.plugins.git.util.Build'><buildNumber>1410</buildNumber><marked><SHA1>cadf792232660895bebcb5f4bfad1d54317e6bac</SHA1><branch><SHA1>cadf792232660895bebcb5f4bfad1d54317e6bac</SHA1><name>origin/main</name></branch></marked><revision><SHA1>cadf792232660895bebcb5f4bfad1d54317e6bac</SHA1><branch><SHA1>cadf792232660895bebcb5f4bfad1d54317e6bac</SHA1><name>origin/main</name></branch></revision></originmain></buildsByBranchName><lastBuiltRevision><SHA1>cadf792232660895bebcb5f4bfad1d54317e6bac</SHA1><branch><SHA1>cadf792232660895bebcb5f4bfad1d54317e6bac</SHA1><name>origin/main</name></branch></lastBuiltRevision><remoteUrl>https://github.com/PingCAP-QE/ci.git</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><building>false</building><displayName>#1410</displayName><duration>60197</duration><estimatedDuration>83303</estimatedDuration><fullDisplayName>seed #1410</fullDisplayName><id>1410</id><inProgress>false</inProgress><keepLog>false</keepLog><number>1410</number><queueId>3249965</queueId><result>SUCCESS</result><timestamp>1770885146915</timestamp><url>https://do.pingcap.net/jenkins/view/all/job/seed/1410/</url><builtOn>default-q0219</builtOn><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>pipelines/pingcap/ticdc/latest/pull_cdc_mysql_integration_light/pipeline.groovy</affectedPath><affectedPath>pipelines/pingcap/ticdc/latest/pull_cdc_pulsar_integration_light_next_gen/pipeline.groovy</affectedPath><affectedPath>pipelines/pingcap/ticdc/release-9.0-beta/pull_cdc_mysql_integration_light.groovy</affectedPath><affectedPath>pipelines/pingcap/ticdc/latest/pull_cdc_storage_integration_heavy/pipeline.groovy</affectedPath><affectedPath>pipelines/pingcap/ticdc/latest/pull_cdc_mysql_integration_heavy_next_gen/pipeline.groovy</affectedPath><affectedPath>pipelines/pingcap/ticdc/latest/pull_cdc_mysql_integration_light_next_gen/pipeline.groovy</affectedPath><affectedPath>pipelines/pingcap/ticdc/release-9.0-beta/pull_cdc_kafka_integration_heavy.groovy</affectedPath><affectedPath>pipelines/pingcap/ticdc/latest/pull_cdc_pulsar_integration_heavy/pipeline.groovy</affectedPath><affectedPath>pipelines/pingcap/ticdc/latest/pull_cdc_kafka_integration_heavy_next_gen/pipeline.groovy</affectedPath><affectedPath>pipelines/pingcap/ticdc/release-9.0-beta/pull_cdc_storage_integration_light.groovy</affectedPath><affectedPath>pipelines/pingcap/ticdc/latest/pull_cdc_pulsar_integration_heavy_next_gen/pipeline.groovy</affectedPath><affectedPath>pipelines/pingcap/ticdc/latest/pull_cdc_storage_integration_light/pipeline.groovy</affectedPath><affectedPath>pipelines/pingcap/ticdc/latest/pull_cdc_mysql_integration_heavy/pipeline.groovy</affectedPath><affectedPath>pipelines/pingcap/ticdc/latest/pull_cdc_storage_integration_heavy_next_gen/pipeline.groovy</affectedPath><affectedPath>pipelines/pingcap/ticdc/release-9.0-beta/pull_cdc_storage_integration_heavy.groovy</affectedPath><affectedPath>prow-jobs/pingcap/ticdc/latest-presubmits-next-gen.yaml</affectedPath><affectedPath>pipelines/pingcap/ticdc/latest/pull_cdc_storage_integration_light_next_gen/pipeline.groovy</affectedPath><affectedPath>pipelines/pingcap/ticdc/latest/pull_cdc_kafka_integration_light_next_gen/pipeline.groovy</affectedPath><affectedPath>pipelines/pingcap/ticdc/latest/pull_cdc_kafka_integration_light/pipeline.groovy</affectedPath><affectedPath>pipelines/pingcap/ticdc/latest/pull_cdc_pulsar_integration_light/pipeline.groovy</affectedPath><affectedPath>pipelines/pingcap/ticdc/release-9.0-beta/pull_cdc_kafka_integration_light.groovy</affectedPath><affectedPath>pipelines/pingcap/ticdc/release-9.0-beta/pull_cdc_pulsar_integration_light.groovy</affectedPath><affectedPath>pipelines/pingcap/ticdc/latest/pull_cdc_kafka_integration_heavy/pipeline.groovy</affectedPath><affectedPath>pipelines/pingcap/ticdc/release-9.0-beta/pull_cdc_mysql_integration_heavy.groovy</affectedPath><commitId>cadf792232660895bebcb5f4bfad1d54317e6bac</commitId><timestamp>1770885119000</timestamp><author><absoluteUrl>https://do.pingcap.net/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></author><authorEmail>noreply@github.com</authorEmail><comment>fix(ticdc): skip empty log archive in integration pipelines (#4162)

## Summary

- fix log collection in TiCDC integration pipelines when
`/tmp/tidb_cdc_test/` contains no `*.log`
- replace direct `tar ... $(find ... '*.log')` with a guarded flow:
  - collect log file list first
  - only run `tar` when list is non-empty
  - print a skip message when no logs are found
- apply the same behavior across:
  - `pipelines/pingcap/ticdc/latest/*`
  - `pipelines/pingcap/ticdc/latest/*_next_gen/*`
  - `pipelines/pingcap/ticdc/release-9.0-beta/*`

## Root Cause

When `find` returns an empty result, `tar` is called without input files
and exits with:

- `tar: Cowardly refusing to create an empty archive`
- exit code `2`

This causes the post-failure log collection step to fail unexpectedly.

## Testing

- reproduced old behavior locally: empty log directory + original `tar`
invocation returns exit code `2`
- verified new guarded snippet behavior:
  - no log files: step exits normally and prints skip message
  - with log files: tarball is created successfully
- pre-commit hooks passed during commit

---------

Signed-off-by: tenfyzhong &lt;tenfy@tenfy.cn&gt;
</comment><date>2026-02-12 08:31:59 +0000</date><id>cadf792232660895bebcb5f4bfad1d54317e6bac</id><msg>fix(ticdc): skip empty log archive in integration pipelines (#4162)</msg><path><editType>edit</editType><file>pipelines/pingcap/ticdc/latest/pull_cdc_mysql_integration_light_next_gen/pipeline.groovy</file></path><path><editType>edit</editType><file>pipelines/pingcap/ticdc/latest/pull_cdc_pulsar_integration_light_next_gen/pipeline.groovy</file></path><path><editType>edit</editType><file>pipelines/pingcap/ticdc/release-9.0-beta/pull_cdc_kafka_integration_heavy.groovy</file></path><path><editType>edit</editType><file>pipelines/pingcap/ticdc/latest/pull_cdc_kafka_integration_heavy/pipeline.groovy</file></path><path><editType>edit</editType><file>pipelines/pingcap/ticdc/release-9.0-beta/pull_cdc_mysql_integration_heavy.groovy</file></path><path><editType>edit</editType><file>pipelines/pingcap/ticdc/latest/pull_cdc_storage_integration_heavy_next_gen/pipeline.groovy</file></path><path><editType>edit</editType><file>pipelines/pingcap/ticdc/release-9.0-beta/pull_cdc_storage_integration_heavy.groovy</file></path><path><editType>edit</editType><file>pipelines/pingcap/ticdc/latest/pull_cdc_kafka_integration_light/pipeline.groovy</file></path><path><editType>edit</editType><file>pipelines/pingcap/ticdc/latest/pull_cdc_storage_integration_light/pipeline.groovy</file></path><path><editType>edit</editType><file>pipelines/pingcap/ticdc/latest/pull_cdc_pulsar_integration_light/pipeline.groovy</file></path><path><editType>edit</editType><file>pipelines/pingcap/ticdc/latest/pull_cdc_pulsar_integration_heavy_next_gen/pipeline.groovy</file></path><path><editType>edit</editType><file>pipelines/pingcap/ticdc/release-9.0-beta/pull_cdc_mysql_integration_light.groovy</file></path><path><editType>edit</editType><file>pipelines/pingcap/ticdc/latest/pull_cdc_mysql_integration_heavy/pipeline.groovy</file></path><path><editType>edit</editType><file>prow-jobs/pingcap/ticdc/latest-presubmits-next-gen.yaml</file></path><path><editType>edit</editType><file>pipelines/pingcap/ticdc/latest/pull_cdc_pulsar_integration_heavy/pipeline.groovy</file></path><path><editType>edit</editType><file>pipelines/pingcap/ticdc/latest/pull_cdc_storage_integration_light_next_gen/pipeline.groovy</file></path><path><editType>edit</editType><file>pipelines/pingcap/ticdc/latest/pull_cdc_storage_integration_heavy/pipeline.groovy</file></path><path><editType>edit</editType><file>pipelines/pingcap/ticdc/latest/pull_cdc_kafka_integration_heavy_next_gen/pipeline.groovy</file></path><path><editType>edit</editType><file>pipelines/pingcap/ticdc/release-9.0-beta/pull_cdc_storage_integration_light.groovy</file></path><path><editType>edit</editType><file>pipelines/pingcap/ticdc/latest/pull_cdc_mysql_integration_light/pipeline.groovy</file></path><path><editType>edit</editType><file>pipelines/pingcap/ticdc/latest/pull_cdc_mysql_integration_heavy_next_gen/pipeline.groovy</file></path><path><editType>edit</editType><file>pipelines/pingcap/ticdc/release-9.0-beta/pull_cdc_pulsar_integration_light.groovy</file></path><path><editType>edit</editType><file>pipelines/pingcap/ticdc/latest/pull_cdc_kafka_integration_light_next_gen/pipeline.groovy</file></path><path><editType>edit</editType><file>pipelines/pingcap/ticdc/release-9.0-beta/pull_cdc_kafka_integration_light.groovy</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>https://do.pingcap.net/jenkins/user/noreply</absoluteUrl><fullName>noreply</fullName></culprit></freeStyleBuild>