Login ProductsSalesSupportDownloadsAbout |
Home » Technical Support » ElevateDB Technical Support » Support Forums » ElevateDB General » View Thread |
Messages 1 to 4 of 4 total |
Server 64-bit hangs on an update. Transaction size? |
Wed, Oct 24 2018 4:06 PM | Permanent Link |
Gregory T Swain Zucchetti North America LLC | I have an update of a table (gg) from rows of another table (g).
There are about 800000 rows in gg and 140000 rows in g. Large file support is enabled. The update hangs, and a query on gg shows no rows have been updated. It looks like Elevate is trying to perform the entire update inside one internally generated transaction. Is there a way to limit the size of such transactions so I can, for instance, update 10000 rows of A at a time? Any other ideas? The query that hangs is: update hklogroomtask as gg set gg.completedstamp = ( select g.completedstamp from hktblroomtask as g where (gg.taskid = g.id) and (gg.complete > 0) ) where gg.completedstamp is null An immediately preceding query, which completes in 42 seconds on my system, is: update hklogroomtask as gg set gg.createdstamp = ( select g.createdstamp from hktblroomtask as g where (gg.taskid = g.id) ) |
Wed, Oct 24 2018 4:17 PM | Permanent Link |
Gregory T Swain Zucchetti North America LLC | Forget this post. I rewrote the hanging query. Now I have egg on my face.
Gregory T Swain wrote: I have an update of a table (gg) from rows of another table (g). There are about 800000 rows in gg and 140000 rows in g. Large file support is enabled. The update hangs, and a query on gg shows no rows have been updated. It looks like Elevate is trying to perform the entire update inside one internally generated transaction. Is there a way to limit the size of such transactions so I can, for instance, update 10000 rows of A at a time? Any other ideas? The query that hangs is:... |
Thu, Oct 25 2018 2:10 AM | Permanent Link |
Roy Lambert NLH Associates Team Elevate | Gregory
Post the rewrite - it may help someone else. Roy Lambert |
Tue, Oct 30 2018 1:34 PM | Permanent Link |
Tim Young [Elevate Software] Elevate Software, Inc. timyoung@elevatesoft.com | Gregory,
<< The update hangs, and a query on gg shows no rows have been updated. It looks like Elevate is trying to perform the entire update inside one internally generated transaction. Is there a way to limit the size of such transactions so I can, for instance, update 10000 rows of A at a time? Any other ideas? >> Just so that everyone understands how this works: ElevateDB *will* use an internal transaction with UPDATE/DELETE statements that aren't already part of a transaction, but it will also limit the number of rows that are updated (without being flushed) to 64K rows. So, it will, at the very least, force a flush every 64K rows. Tim Young Elevate Software www.elevatesoft.com |
This web page was last updated on Monday, May 6, 2024 at 03:23 PM | Privacy PolicySite Map © 2024 Elevate Software, Inc. All Rights Reserved Questions or comments ? E-mail us at info@elevatesoft.com |