Skip to content

Commit d8ae85d

Browse files
author
dhavalts1989
committed
Skip 'rsync_from_disk()' call if the quarantine corpus is empty
We noticed an increase in fuzzers failing in the Coverage Client Job. We observed that the major cause was a failure during corpus pruning. Calling 'rsync_from_disk()' with an empty quarantine corpus leads to trigger unintended assertion in the corpus pruning job, which subsequently causes the Coverage Client Job to fail. To address this, we now skip the 'rsync_from_disk()' call if the quarantine corpus is empty, preventing unnecessary failures.
1 parent 1d2c8d1 commit d8ae85d

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

src/clusterfuzz/_internal/bot/tasks/utasks/corpus_pruning_task.py

+2-1
Original file line numberDiff line numberDiff line change
@@ -699,7 +699,8 @@ def do_corpus_pruning(uworker_input, context, revision) -> CorpusPruningResult:
699699
# Mapping of crash state -> CrashInfo
700700
crashes = pruner.process_bad_units(context.bad_units_path,
701701
context.quarantine_corpus_path)
702-
context.quarantine_corpus.rsync_from_disk(context.quarantine_corpus_path)
702+
if shell.get_directory_file_count(context.quarantine_corpus_path):
703+
context.quarantine_corpus.rsync_from_disk(context.quarantine_corpus_path)
703704

704705
# Store corpus stats into CoverageInformation entity.
705706
project_qualified_name = context.fuzz_target.project_qualified_name()

0 commit comments

Comments
 (0)