Skip to content
  • Edouard CHIN's avatar
    30e4c199
    Don't run concurrent transaction test on sqlite3: · 30e4c199
    Edouard CHIN authored
    - #37798 had to be reverted because a new flakyness appeared ([see
      CI build](https://buildkite.com/rails/rails/builds/65467#efaa1dd5-aaf4-43a1-a204-d1c42abf614d))
    
      This failure isn't related to the change itself.
      If you apply this diff, the test will some time to time fail.
      Even without my changes.
    
      ```diff
      diff --git a/activerecord/test/cases/transactions_test.rb b/activerecord/test/cases/transactions_test.rb
    index b5c1cac3d9..09fe0ddd7f 100644
    --- a/activerecord/test/cases/transactions_test.rb
    +++ b/activerecord/test/cases/transactions_test.rb
    @@ -1127,7 +1127,6 @@ def test_no_automatic_savepoint_for_inner_transaction
       end
     end if Topic.connection.supports_savepoints?
    
    -if ActiveRecord::Base.connection.supports_transaction_isolation?
       class ConcurrentTransactionTest < TransactionTest
         # This will cause transactions to overlap and fail unless they are performed on
         # separate database connections.
    @@ -1198,4 +1197,3 @@ def test_transaction_isolation__read_committed
           assert_equal original_salary, Developer.find(1).salary
         end
       end
    -end
      ```
    
      SQlite3 isn't safe to run in a multi threaded environment unless
      sqlite is compiled with a special flag which isn't our case.
      Ref https://www.sqlite.org/threadsafe.html
    30e4c199
    Don't run concurrent transaction test on sqlite3:
    Edouard CHIN authored
    - #37798 had to be reverted because a new flakyness appeared ([see
      CI build](https://buildkite.com/rails/rails/builds/65467#efaa1dd5-aaf4-43a1-a204-d1c42abf614d))
    
      This failure isn't related to the change itself.
      If you apply this diff, the test will some time to time fail.
      Even without my changes.
    
      ```diff
      diff --git a/activerecord/test/cases/transactions_test.rb b/activerecord/test/cases/transactions_test.rb
    index b5c1cac3d9..09fe0ddd7f 100644
    --- a/activerecord/test/cases/transactions_test.rb
    +++ b/activerecord/test/cases/transactions_test.rb
    @@ -1127,7 +1127,6 @@ def test_no_automatic_savepoint_for_inner_transaction
       end
     end if Topic.connection.supports_savepoints?
    
    -if ActiveRecord::Base.connection.supports_transaction_isolation?
       class ConcurrentTransactionTest < TransactionTest
         # This will cause transactions to overlap and fail unless they are performed on
         # separate database connections.
    @@ -1198,4 +1197,3 @@ def test_transaction_isolation__read_committed
           assert_equal original_salary, Developer.find(1).salary
         end
       end
    -end
      ```
    
      SQlite3 isn't safe to run in a multi threaded environment unless
      sqlite is compiled with a special flag which isn't our case.
      Ref https://www.sqlite.org/threadsafe.html
Loading