मैं हाल ही में इसी तरह की समस्या से जूझ रहा था। यह पता चला कि डेटाबेस में विदेशी कुंजियों पर अनुक्रमणिकाएँ नहीं थीं। इसने Oracle को आवश्यकता से अधिक रिकॉर्ड लॉक करने का कारण बना दिया जिससे उच्च संगामिति के दौरान जल्दी से गतिरोध हो गया।
गतिरोध को ठीक करने के तरीके के बारे में बहुत सारे अच्छे विवरण, सुझाव और विवरण के साथ यहां एक उत्कृष्ट लेख है:http://www.oratechinfo.co.uk/deadlocks.html#unindex_fk