Hi,
We have encountered deadlock on a table which is used to generate
sequential numbers for different categories eg typical entries
Category Value
TRADE_NO 1456
JOB_NO 267
.....
The applications reference the relevant category applicable to them
and update
the Value accordingly. This is table is very small, occupying 1 page.
However, it has no index as it was not seen to be appropriate for a
table this size.
However, can someone please advise whether
1. An index is required for row level locking
2. If an index on a table as small as above is likely to reduce the
deadlock rate.
Also, please consider the following but which I am not sure is
relevant for above query.
We noted that when we migrated the database concerned from SQL 6.5 to
SQL 2000, using DTS, that the database was NOT strictly in SQL 2000
format for non clustered indexes (NC) ie the clustered key was not
part of the NC index until the clustered index was rebuilt.
Given this should I just rebuild this table with a fake index and drop
it thereafter.
We are aware of the different techniques used to avoid deadlocks (eg
tables accessed in same order etc) and have , as much as possible,
implemented those practices.
I thank you in advance for any help you may be able to offer.
Thanks
Puvendran
We have encountered deadlock on a table which is used to generate
sequential numbers for different categories eg typical entries
Category Value
TRADE_NO 1456
JOB_NO 267
.....
The applications reference the relevant category applicable to them
and update
the Value accordingly. This is table is very small, occupying 1 page.
However, it has no index as it was not seen to be appropriate for a
table this size.
However, can someone please advise whether
1. An index is required for row level locking
2. If an index on a table as small as above is likely to reduce the
deadlock rate.
Also, please consider the following but which I am not sure is
relevant for above query.
We noted that when we migrated the database concerned from SQL 6.5 to
SQL 2000, using DTS, that the database was NOT strictly in SQL 2000
format for non clustered indexes (NC) ie the clustered key was not
part of the NC index until the clustered index was rebuilt.
Given this should I just rebuild this table with a fake index and drop
it thereafter.
We are aware of the different techniques used to avoid deadlocks (eg
tables accessed in same order etc) and have , as much as possible,
implemented those practices.
I thank you in advance for any help you may be able to offer.
Thanks
Puvendran
Comment