Database changes made using the SAP update system and passed to an update work process can run either synchronously or asynchronously. The mode is specified in the ABAP source code of SAP transactions and cannot be changed dynamically by the user.
The SAP transaction creates an update request using CALL FUNCTION … IN UPDATE TASK, and forwards the request to an update work process. At the end of a database LUW, data is written to update tables.
With synchronous updates, the program that outputs the statement COMMIT WORK AND WAIT waits until the update work process outputs the status of the update. The program can then respond to errors separately.
Synchronous updates can never be processed a second time.
As the calling program waits for the result and responds to it appropriately, you can assume that the error has been intercepted. If you try to process a synchronous update in update management (transaction SM13) again, you will get the message This update request cannot be carried out retrospectively (synchronous update).
Synchronous updates are indicated by the symbol in the Info column in update management.
Updates generated by batch-input sessions are always carried out synchronously. A batch-input with CALL TRANSACTION USING can also update synchronously or may update asynchronously. Finally, every 100th update in a background job is carried out synchronously. This helps to prevent the update system from falling behind in processing updates.
In asynchronous updating the program that issued the COMMIT WORK simply forwards the update to the update system, and does not wait for a response from the update process.
Update Techniques in the ABAP Documentation