question

aimyee avatar image
aimyee asked

Adding Itentity Column - how long shoud I wait?

How long should I let this query run.. ALTER TABLE CPR.DBO.tblLineTable ADD ID [int] IDENTITY(1,1) NOT NULL It has over 800,000 rows.. and I see the following task state = suspended command= alter table wait type = pageiolatch_sh.. Thank in advance! I'm wondering if I should just let let run, or if something is wrong.
sql-serveridentity
2 comments
10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

KenJ avatar image KenJ commented ·
did you let it run or kill it? how long did it take?
1 Like 1 ·
Kev Riley avatar image Kev Riley ♦♦ commented ·
@aimyee this is a continuation/repetition of your earlier question http://ask.sqlservercentral.com/questions/94323/adding-column-taking-over-hour.html Please don't duplicate questions. If you are still having issues after the answers on the original question, please post there and engage with those who have already started to help you.
0 Likes 0 ·

1 Answer

JohnM avatar image
JohnM answered
The pageiolatch_sh is the server waiting for I believe a latch on a page in the buffer pool. Updating 800K rows with a new column very well could take some time depending on your disk IO subsystem and how your table is structured. If time is a concern, you could think about creating a new table with the new column and then import the data into the new structure, drop the old structure and then rename the new table to the old name. I would highly recommend that you test this first to see if it would be a faster alternative. Or you could just let it wait it out. Hope this helps!
10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.