Uploaded image for project: 'camunda BPM'
  1. camunda BPM
  2. CAM-5404

Migration Validation error messages are meaningless

    XMLWordPrintable

    Details

    • Type: Bug Report
    • Status: Closed
    • Priority: L3 - Default
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 7.5.0, 7.5.0-alpha3
    • Component/s: engine
    • Labels:

      Description

      The error message for migration validation errors are currently useless. Make them useful.

      Validation

      • PEC list of validators
      • Validate equality (configurable)
      • minimal interface

      What is validated

      • Activity Validator (not configurable)
      • Compile -> Migration Plan/Instruction Validator
      • Runtime -> Migration (Instance) validator

      Equality Validator

      • Interface:
      • two activities as input -> boolean as output
      • Assumption: unique equality
      class MigrationActivityComparator {
        boolean equal(ActivityImpl source, ActivityImpl target);
      }
      

      Validation at Compile/Design time

      Generation

      • Generator only allows same scope for example
      • Validate that an activity is supported (Activity Validator)
      • Validate that two activities are equal (Equal Validator)
      • Validate that the set of instructions is valid (Instruction Validator)
      • remove invalid instructions from set
      class MigrationActivityValidator {
        boolean valid(MigratingActivity source);
      }
      
      class MigrationInstructionValidator {
      
        void valid(ValidatingInstruction instruction, ValidatingMigrationPlan plan
                   ValidationReport report);
      
      }
      

      Creation

      • Validate set of instructions and explode

      Validation at Runtime

      • Check that an actual instance can be migrated by the plan, i.e. async,
        activity mapping missing
      class MigrationInstructionInstanceValidator<T extends MigratingInstance> {
      
        void valid(ValidatingMigratingProcessInstance processInstance,
                   T migratingInstance,
                   ValidationReport report);
      
      }
      

        Attachments

          Activity

            People

            Assignee:
            thorben.lindhauer Thorben Lindhauer
            Reporter:
            sebastian.menski Sebastian Menski
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: