Skip to content

Refactor handling exceptions in base fuzzing flow method #658

Closed
@EgorkaKulikov

Description

@EgorkaKulikov

Description

Current implementation of base fuzzing flow method contains the following code:

catch (e: CancellationException) {
            logger.debug { "Cancelled by timeout" }
        } catch (e: ConcreteExecutionFailureException) {
            emitFailedConcreteExecutionResult(initialEnvironmentModels, e)
        } catch (e: Throwable) {
            emit(UtError("Default concrete execution failed", e))
        }

There are several problems:

  1. catching Throwable looks like a black hole to hide real problems
  2. it is unclear why any throwable in the last catch block relates toConcreteExecutor
  3. A message default concrete execution failed is absolutely unclear either for the user or for the developer

Metadata

Metadata

Assignees

Labels

comp-fuzzingIssue is related to the fuzzingctg-refactoringIssue related to refactoring process

Type

No type

Projects

Status

Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions