Suppose you have two processes executing the following PHP code at the same time, what results will be printed?
| 
					 1 2 3  | 
						\DB::transaction(function (){    dump(User::where('id',1)->lockForUpdate()->first()); });  | 
					
Surprisingly, one process prints the query results, while another process prints an empty collection (array). The code that returned an empty collection did not trigger a deadlock exception as expected.
Continue reading