এই ক্যোয়ারী কেন অচলাবস্থার কারণ?
UPDATE TOP(1) system_Queue SET
[StatusID] = 2,
@ID = InternalID
WHERE InternalID IN (
SELECT TOP 1
InternalID FROM system_Queue
WHERE IsOutGoing = @IsOutGoing AND StatusID = 1
ORDER BY MessageID ASC, InternalID ASC)
ডেডলক গ্রাফ যুক্ত হয়েছে:
<keylock hobtid="72057594236436480" dbid="9" objectname="Z.dbo.system_Queue" indexname="PK_system_Queue" id="lock5b25cc80" mode="X" associatedObjectId="72057594236436480">
<owner-list>
<owner id="processc6fe40" mode="X"/>
</owner-list>
<waiter-list>
<waiter id="processc7b8e8" mode="S" requestType="wait"/>
</waiter-list>
</keylock>
<keylock hobtid="72057594405453824" dbid="9" objectname="Z.dbo.system_Queue" indexname="IX_system_Queue_DirectionByStatus" id="lock48cf3180" mode="S" associatedObjectId="72057594405453824">
<owner-list>
<owner id="processc7b8e8" mode="S"/>
</owner-list>
<waiter-list>
<waiter id="processc6fe40" mode="X" requestType="wait"/>
</waiter-list>
</keylock>
যোগ করেছেন:
এই ধরণের অচলাবস্থা কীভাবে এড়াতে হবে তার সমাধানের জন্য নিবন্ধটির জন্য ধন্যবাদকে ধন্যবাদ :
- পাঠকের অভিক্ষেপ থেকে অপ্রয়োজনীয় কলামগুলি অপসারণ করুন যাতে তাকে ক্লাস্টারড সূচকটি সন্ধান করতে না হয়
- সূচিটি আচ্ছাদন করার জন্য অ ক্লাস্টারযুক্ত সূচীতে প্রয়োজনীয় কলামগুলি অন্তর্ভুক্ত করুন, যাতে পাঠক ক্লাস্টারড সূচকটি না দেখে have
- ক্লাস্টারবিহীন সূচক বজায় রাখতে হবে এমন আপডেটগুলি এড়িয়ে চলুন