Skip to content
This repository

May 23, 2012

  1. Synchronize the ConnectionPool#release method to avoid thread safety …

    …issues [#6464]
    
    Fixes #6464
    
    Synchronize the contents of the release method in ConnectionPool due to
    errors when running in high concurrency environments.
    
        Detected invalid hash contents due to unsynchronized modifications
    with concurrent users
        org/jruby/RubyHash.java:1356:in `keys'
    /usr/local/rvm/gems/jruby-1.6.7@new_import/gems/activerecord-3.2.3/lib/a
    ctive_record/connection_adapters/abstract/connection_pool.rb:294:in
    `release'
    
    /usr/local/rvm/gems/jruby-1.6.7@new_import/gems/activerecord-3.2.3/lib/a
    ctive_record/connection_adapters/abstract/connection_pool.rb:282:in
    `checkin'
    Andrew Selder authored

May 19, 2012

  1. Aaron Patterson

    Merge pull request #6398 from pmahoney/threadsafe-connection-pool

    Synchronize read and modification of @reserved_connections
    tenderlove authored

Mar 13, 2012

  1. Jonathan Rochkind

    ConnectionPool.checkout takes account of ruby using 'non-blocking con…

    …dition variables' in mutex ConditionVariables
    jrochkind authored

Mar 12, 2012

  1. Aaron Patterson

    make sure connections returned after close are marked as in_use

    tenderlove authored
  2. Jonathan Rochkind

    inline docs for clear_active_connections! no longer says it cleans de…

    …ad threads, it doesn't since 3.2.0
    jrochkind authored

Mar 08, 2012

  1. Aaron Patterson

    make active_connection? return true only if there is an open connecti…

    …on in use for the current thread. fixes #5330
    tenderlove authored

Nov 29, 2011

  1. Aaron Patterson

    push synchronization in to each method. Reduces method calls and makes

    it clear which methods are synchronized.
    tenderlove authored
  2. Aaron Patterson

    Automatic closure of connections in threads is deprecated. For example

    the following code is deprecated:
    
    Thread.new { Post.find(1) }.join
    
    It should be changed to close the database connection at the end of
    the thread:
    
    Thread.new {
      Post.find(1)
      Post.connection.close
    }.join
    
    Only people who spawn threads in their application code need to worry
    about this change.
    tenderlove authored
  3. Aaron Patterson

    AbstractAdapter#close can be called to add the connection back to the

    pool.
    tenderlove authored
  4. Aaron Patterson

    Start implementing @reserved_connections in terms of connection leases.

    tenderlove authored
  5. Aaron Patterson

    Rename `checked_out` to more descriptive `active_connections`

    tenderlove authored
  6. Aaron Patterson

    Use connection lease to determine "checked_out" connections

    tenderlove authored

Nov 28, 2011

  1. Aaron Patterson

    remove unused instance variable

    tenderlove authored
  2. Aaron Patterson

    just check in all connections

    tenderlove authored
  3. Aaron Patterson

    pools are 1:1 with spec now rather than 1:1 with class

    tenderlove authored

Nov 20, 2011

  1. Aaron Patterson

    oops! I suck! :bomb:

    tenderlove authored
  2. Aaron Patterson

    pushing caching and visitors down to the connection

    tenderlove authored

Nov 13, 2011

  1. Noé Froidevaux

    Fix pull request #3609

    noefroidevaux authored

Nov 11, 2011

  1. Noé Froidevaux

    Prevent multiple SHOW TABLES calls when a table don't exists in datab…

    …ase.
    noefroidevaux authored

Oct 07, 2011

  1. Mark J. Titorenko

    use thread locals and an instance variable within QueryCache#BodyProx…

    …y to maintain appropriate linkage with AR database connection across threads
    mjtko authored

Sep 07, 2011

  1. Aaron Patterson

    Merge pull request #2897 from rsutphin/ar31-remove_connection

    Patch for issue #2820
    tenderlove authored

Aug 08, 2011

  1. Jon Leighton

    Make it the responsibility of the connection to hold onto an ARel vis…

    …itor for generating SQL. This improves the code architecture generally, and solves some problems with marshalling. Adapter authors please take note: you now need to define an Adapter.visitor_for method, but it degrades gracefully with a deprecation warning for now.
    jonleighton authored

Jun 28, 2011

  1. Aaron Patterson

    cache column defaults for AR object instantiation

    tenderlove authored

Jun 18, 2011

  1. Steve Hodgkiss

    Fix inconsistencies by being polite to the wrapped body. Needed for R…

    …ack::Sendfile to function properly. See issue #1761.

Jun 10, 2011

  1. Ken Collins

    Allow the connection pool's #table_exists? method to give the connect…

    …ions #table_exists? method a chance.
    metaskills authored

May 25, 2011

  1. Xavier Noria

    Merge branch 'master' of git://github.com/lifo/docrails

    Conflicts:
    	actionmailer/lib/action_mailer/base.rb
    	activesupport/lib/active_support/core_ext/kernel/requires.rb
    fxn authored

May 23, 2011

  1. Sebastian Martinez

    Remove extra white spaces on ActiveRecord docs.

  2. Sebastian Martinez

    Remove extra white-space on some exception messages.

Apr 23, 2011

  1. Sebastian Martinez

    Fixed punctuation errors.

    smartinez87 authored

Mar 29, 2011

  1. Aaron Patterson

    make sure that active connections are not cleared during test when an…

    … exception happens
    tenderlove authored
  2. Aaron Patterson

    clearing active connections in the ConnectionManagement middleware if…

    … an exception happens
    tenderlove authored
  3. Aaron Patterson

    proxy body responses so we close database connections after body is f…

    …lushed
    tenderlove authored
  4. Aaron Patterson

    adding active_connections? to the connection pool for finding open co…

    …nnections
    tenderlove authored

Mar 28, 2011

  1. Aaron Patterson

    adding active_connection? to the connection pool

    tenderlove authored

Feb 09, 2011

  1. Aaron Patterson

    primary keys should not be cleared on cache clear, fixing oracle tests

    tenderlove authored
Something went wrong with that request. Please try again.