What Is The Difference Between The Success and The Completion Value Of Precedence Constraint In SSIS Package

Precedence Constraints are the arrows those we use in Control Flow Pane to connect the Tasks. Precedence Constraints are used to control the execution flow of Tasks as well under what condition pass execution control to which Task.

The default constraint is Success that is represented with Green Arrow between Tasks.
Fig 1: Precedence Constraint on Success

In Fig 1, The Execute SQL Task has to execute successfully to pass execution control to Data Flow Tasks. If Execute SQL task will fail then Data Flow Tasks will not execute.
Fig 2: On Successful Execution of Execute SQL Task

If Execute SQL Task task fails, then control will not pass to Data Flow Tasks as shown in Fig 3.
Fig 3: On Failure of Execute SQL Task

There could be requirements in which even Execute SQL Task executes successfully or fail, we always want to execute Data Flow Tasks. For this requirement, We need to configure Precedence Constraint to Completion.
Double click on the Green Arrow between the Tasks and then configure as shown below in Fig 4.
Fig 4: Configure Precedence Constraint for Completion

The Data Flow Tasks will execute on Completion of Execute SQL Task ( Completion can be success or failure status).

Fig 5: Execution of SSIS Package (Precedence Constraint Completion configuration)