Vsak udeleženec v zastoju ima vir, ki ga drugi potrebuje. Na primer, predstavljajte si dve transakciji, T1 in T2. T1 je zaklenil vir A, T2 pa je zaklenil vir B. T1 potrebuje vir B za dokončanje, vendar ga ne more dobiti, dokler T2 ne sprosti ključavnice. Podobno potrebuje T2 vir A za dokončanje, vendar ga ne more dobiti, dokler T1 ne sprosti zaklepanja. To ustvarja zastoj.
Fantomski zastoj se razlikuje od običajnega zastoja po tem, da se udeleženci ne zavedajo drug drugega. Vsak le skuša narediti svoje, a drug drugega nehote blokirata.
Fantomske zastoje je težko odkriti, ker jih ne povzroči ena sama točka okvare. Povzroča jih porazdeljena narava samega sistema. Posledično jih je lahko zelo težko razrešiti.
Eden od načinov za reševanje fantomskih zastojev je povečanje števila zaklepanja v sistemu. Zaradi tega je manj verjetno, da bosta morali dve transakciji zakleniti iste vire hkrati. Drug način za reševanje fantomskih zastojev je uporaba časovnih omejitev. Če transakcija po določenem času ne sprosti zaklepanja, se prekine in zaklepanje se sprosti.
Fantomski zastoji so redek pojav, vendar so lahko resna težava, ko se pojavijo. Če razumete, kaj so in kako jih razrešiti, lahko pomagate ohranjati nemoteno delovanje svojih porazdeljenih sistemov.