Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Commits on May 24, 2012
  1. @carlosantoniodasilva

    Merge pull request #5925 from Juanmcuello/pg_structure_dump

    carlosantoniodasilva authored
    Quote arguments in db:structure:dump for PostgreSQL.
Commits on May 23, 2012
  1. Synchronize the ConnectionPool#release method to avoid thread safety …

    Andrew Selder authored
    …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'
  2. @Juanmcuello
Commits on May 22, 2012
  1. @chancancode

    Fixes the build break caused by 9ee8528 in #6445.

    chancancode authored
    Ruby 1.8 raises a TypeError when trying to modify a frozen Hash, while
    Ruby 1.9 raises a RuntimeError instead. Also, Ruby < 1.9.3 uses a
    lowercase 'hash' in the exception message while Ruby >= 1.9.3 uses an
    uppercase 'Hash' instead. This commit normalizes those issues in the
    test case.
  2. @chancancode

    Restore the frozen state on rollback. Fixes #6417.

    chancancode authored
    This is a 3-2-stable backport for #6420 which was merged into master.
    
    Currently, when saving a frozen record, an exception would be thrown
    which causes a rollback. However, there is a bug in active record that
    "defrost" the record as a side effect:
    
        >> t = Topic.new
        => #<Topic id: nil, ...>
        >> t.freeze
        => #<Topic id: nil, ...>
        >> t.save
        RuntimeError: can't modify a frozen Hash
        >> t.frozen?
        => false
        >> t.save
        => true
    
    This patch fixes the bug by explictly restoring the frozen state on the
    attributes Hash after every rollback.
Commits on May 21, 2012
  1. @pwnall
Commits on May 20, 2012
  1. @drogus

    Fix uniqueness validator with `allow_nil: false` also for mysql

    drogus authored
    MySQL's adapter was changing value for case sensitive comparison. We
    don't need to do it for `nil`.
  2. @drogus

    Fix `validates_uniqueness_off :field, :allow_nil => false`

    drogus authored
    Closes (#5853)
    
    Uniqueness validator was not properly checking if there are any existing
    records, when value was `nil` and column was text type. `nil` was
    converted to string, which resulted in queries looking like:
    
    ```sql
    SELECT 1 FROM "posts" WHERE "posts"."title" = '' LIMIT 1
    ```
    
    instead of
    
    ```sql
    SELECT 1 FROM "posts" WHERE "posts"."title" IS NULL LIMIT 1
    ```
Commits on May 19, 2012
  1. @tenderlove

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

    tenderlove authored
    Synchronize read and modification of @reserved_connections
  2. @drogus

    Ensure that CollectionAssociation#replace returns proper target

    drogus authored
    The fix commited in e2a070c was returning the `new_target`, as
    a try to return whatever user replaced association with. The
    problem is, the resulting association target may be ordered
    differently. In such case we want to return the target that
    will be later used for that association.
Commits on May 18, 2012
  1. @ernie
  2. @jonleighton
  3. @jonleighton

    Perf: Don't load the association for #delete_all.

    jonleighton authored
    Bug #6289
    
    Conflicts:
    
    	activerecord/test/cases/associations/has_many_associations_test.rb
Commits on May 17, 2012
  1. @drogus

    Fix CollectionAssociation#replace to return new target (closes #6231)

    drogus authored
    Conflicts:
    
    	activerecord/test/cases/associations/has_many_associations_test.rb
Commits on May 11, 2012
  1. @alexeymuranov
Commits on May 10, 2012
  1. @pixeltrix

    Return false for exists? with new records - fixes #6199.

    pixeltrix authored
    (cherry picked from commit fa21b73)
  2. @jeremy

    Merge pull request #6221 from alexeymuranov/deprecate__instantiate_fi…

    jeremy authored
    …xtures__arity
    
    Deprecate ActiveRecord::Fixtures.instantiate_fixtures unused parameter
Commits on May 9, 2012
  1. @alexeymuranov
  2. @alexeymuranov

    Deprecate ::instantiate_fixtures unused parameter

    alexeymuranov authored
    Deprecate the use of AcitiveRecord::Fixtures::instantiate_fixtures(object, fixture_set_name, fixture_set, load_instances = true), use instead instantiate_fixtures(object, fixture_set, load_instances = true).
    
    To be changed in master branch.
  3. @drogus

    Merge pull request #6219 from frodsan/fix_build

    drogus authored
    Fix build - 3.2
  4. @carlosantoniodasilva

    Stop showing deprecations for Ruby 1.8.7 with remove_column

    carlosantoniodasilva authored
    String is Enumerable in 1.8.7, which means that passing a String to
    remove_column was generating deprecation warnings during tests.
  5. Fix build

    Francesco Rodriguez authored
Commits on May 5, 2012
  1. @tenderlove

    Merge pull request #6128 from frodsan/delete_all_limit_32

    tenderlove authored
    Fix #4979 against 3-2-stable
Commits on May 2, 2012
  1. Fix #4979 against 3-2-stable - delete_all raise an error if a limit i…

    Francesco Rodriguez authored
    …s provided
  2. @drogus
Commits on Apr 30, 2012
  1. @rafaelfranca
Commits on Apr 24, 2012
  1. @carlosantoniodasilva
  2. @kennyj @sikachu

    Fix build. It seems that the Mocha's behavior were changed.

    kennyj authored sikachu committed
Commits on Apr 23, 2012
  1. @arunagw
Commits on Apr 19, 2012
  1. @amatsuda @jeremy

    Be sure to correctly fetch PK name from MySQL even if the PK has some…

    amatsuda authored jeremy committed
    … custom option
    
    Backports #5900
    
    Conflicts:
    
    	activerecord/lib/active_record/connection_adapters/abstract_mysql_adapter.rb
    	activerecord/test/cases/adapters/mysql/mysql_adapter_test.rb
  2. @benedikt
  3. @benedikt

    Revert "Revert "Fix #5667. Preloading should ignore scoping.""

    benedikt authored
    This reverts commit 1166d49.
    
    Conflicts:
    
    	activerecord/test/cases/associations/eager_test.rb
  4. @benedikt

    Adds test to check that circular preloading does not modify Model.uns…

    benedikt authored
    …coped (as described in #5667)
    
    Conflicts:
    
    	activerecord/test/cases/associations/eager_test.rb
  5. @benedikt

    Removes caching from ActiveRecord::Core::ClassMethods#relation

    benedikt authored
    The #relation method gets called in four places and the return value was instantly cloned in three of them. The only place that did not clone was ActiveRecord::Scoping::Default::ClassMethods#unscoped. This introduced a bug described in #5667 and should really clone the relation, too. This means all four places would clone the relation, so it doesn't make a lot of sense caching it in the first place.
    
    The four places with calls to relations are:
    
    activerecord/lib/active_record/scoping/default.rb:110:in `block in build_default_scope'"
    activerecord/lib/active_record/scoping/default.rb:42:in `unscoped'"
    activerecord/lib/active_record/scoping/named.rb:38:in `scoped'"
    activerecord/lib/active_record/scoping/named.rb:52:in `scope_attributes'"
    
    Conflicts:
    
    	activerecord/lib/active_record/core.rb
  6. @jeremy

    Revert "Fix #5667. Preloading should ignore scoping."

    jeremy authored
    Causes a subtle regression where record.reload includes the default
    scope. Hard to reproduce in isolation. Seems like the relation is
    getting infected by some previous usage.
    
    This reverts commit dffbb52.
Something went wrong with that request. Please try again.