Created
October 18, 2012 17:10
-
-
Save bdurand/3913376 to your computer and use it in GitHub Desktop.
ActiveRecord Row Lock Test Output
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Current ActiveRecord code: | |
Selector Thread reports shared record exists | |
Thread 1 (0.8ms) BEGIN | |
Thread 1 running before_destroy callback | |
Thread 2 (0.6ms) BEGIN | |
Thread 2 running before_destroy callback | |
Selector Thread reports shared record exists | |
Thread 1 running before_destroy callback | |
Thread 2 running before_destroy callback | |
Selector Thread reports shared record exists | |
Thread 1 running before_destroy callback | |
Thread 2 running before_destroy callback | |
Selector Thread reports shared record exists | |
Thread 1 running before_destroy callback | |
Thread 2 running before_destroy callback | |
Selector Thread reports shared record exists | |
Thread 1 running before_destroy callback | |
Thread 2 running before_destroy callback | |
Selector Thread reports shared record exists | |
Thread 1 SQL (26.3ms) DELETE FROM "my_models" WHERE "my_models"."id" = $1 [["id", 43]] | |
Thread 1 running after_destroy callback | |
Selector Thread reports shared record exists | |
Thread 1 running after_destroy callback | |
Selector Thread reports shared record exists | |
Thread 1 running after_destroy callback | |
Selector Thread reports shared record exists | |
Thread 1 running after_destroy callback | |
Selector Thread reports shared record exists | |
Thread 1 running after_destroy callback | |
Selector Thread reports shared record exists | |
Thread 2 SQL (4934.5ms) DELETE FROM "my_models" WHERE "my_models"."id" = $1 [["id", 43]] | |
Thread 2 running after_destroy callback | |
Thread 1 (1.5ms) COMMIT | |
Selector Thread reports shared record deleted | |
Thread 2 running after_destroy callback | |
Selector Thread reports shared record deleted | |
Thread 2 running after_destroy callback | |
Selector Thread reports shared record deleted | |
Thread 2 running after_destroy callback | |
Selector Thread reports shared record deleted | |
Thread 2 running after_destroy callback | |
Selector Thread reports shared record deleted | |
Thread 2 (0.7ms) COMMIT | |
Selector Thread reports shared record deleted | |
Patched ActiveRecord code: | |
Selector Thread reports shared record exists | |
Thread 1 (0.7ms) BEGIN | |
Thread 1 (1.1ms) SELECT id FROM "my_models" WHERE "my_models"."id" = 40 FOR UPDATE | |
Thread 1 SELECT FOR UPDATE did find row | |
Thread 1 running before_destroy callback | |
Thread 2 (0.6ms) BEGIN | |
Selector Thread reports shared record exists | |
Thread 1 running before_destroy callback | |
Selector Thread reports shared record exists | |
Thread 1 running before_destroy callback | |
Selector Thread reports shared record exists | |
Thread 1 running before_destroy callback | |
Selector Thread reports shared record exists | |
Thread 1 running before_destroy callback | |
Selector Thread reports shared record exists | |
Thread 1 SQL (37.1ms) DELETE FROM "my_models" WHERE "my_models"."id" = $1 [["id", 40]] | |
Thread 1 running after_destroy callback | |
Selector Thread reports shared record exists | |
Thread 1 running after_destroy callback | |
Selector Thread reports shared record exists | |
Thread 1 running after_destroy callback | |
Selector Thread reports shared record exists | |
Thread 1 running after_destroy callback | |
Selector Thread reports shared record exists | |
Thread 1 running after_destroy callback | |
Selector Thread reports shared record exists | |
Thread 1 (1.2ms) COMMIT | |
Thread 2 (9953.0ms) SELECT id FROM "my_models" WHERE "my_models"."id" = 40 FOR UPDATE | |
Thread 2 SELECT FOR UPDATE does not find row | |
Thread 2 SQL (1.1ms) DELETE FROM "my_models" WHERE "my_models"."id" = $1 [["id", 40]] | |
Thread 2 (0.3ms) COMMIT | |
Selector Thread reports shared record deleted |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment