Hi
The variable list_of_rowid doesn't keep track of rows to be deleted.
If this list is empty simply return 0 since '_rowid' is being used to highlight the row for which error is occurred in only insert and update operation.
Please find attached patch and review.
Thanks,
Surinder Kumar