Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Commits on Dec 8, 2011
  1. @vijaydev

    fix comments

    vijaydev authored
  2. @josevalim

    Remove NilClass whiners feature.

    josevalim authored
    Removing this feature causes boost in performance when using Ruby 1.9.
    Ruby 1.9 started to do implicit conversions using `to_ary` and `to_str`
    in some STDLIB methods (like Array#join). To do such implicit conversions,
    Ruby 1.9 always dispatches the method and rescues the NoMethodError exception
    in case one is raised.
    Therefore, since the whiners feature defined NilClass#method_missing, such
    implicit conversions for nil became much, much slower. In fact, just defining
    NilClass#method_missing (even without the whiners feature) already causes a
    massive slow down. Here is a snippet that shows such slow down:
        require "benchmark"
        Benchmark.realtime { 1_000.times { [nil,nil,nil].join } }
        class NilClass
          def method_missing(*args)
            raise NoMethodError
        Benchmark.realtime { 1_000.times { [nil,nil,nil].join } }
  3. @tenderlove
  4. @tenderlove
  5. @tenderlove
  6. @tenderlove
Commits on Dec 7, 2011
  1. @tenderlove
  2. @tenderlove
  3. @kelyar
Commits on Dec 6, 2011
  1. @nashby @tenderlove

    add prefix and suffix to renamed tables, closes #1510

    nashby authored tenderlove committed
Commits on Dec 5, 2011
  1. @tenderlove
  2. @jadeforrest

    Speed up table_exists? for databases with a large number of tables

    jadeforrest authored
    At New Relic, we have hundreds of thousands of tables, and our migrations took 30 minutes without this similar patch. This cuts it down to a more reasonable amount of time.
    The rescue false part is ugly, but necessary as far as I can tell. I don't know of a cross-database statement you can make that will work without trapping errors.
Commits on Dec 4, 2011
  1. @josevalim

    Merge pull request #3854 from exviva/validates_associated_marked_for_…

    josevalim authored
    Do not validate associated records marked for destruction
  2. @exviva

    Do not validate associated records marked for destruction

    exviva authored
    The main reason for this change is to fix a bug where
    `validates_associated` would prevent `accepts_nested_attributes_for`
    with `allow_destroy: true` from destroying invalid associated records.
  3. @jonleighton

    Merge pull request #3851 from ebeigarts/fix_sequence_name

    jonleighton authored
    Fix sequence name with abstract classes.
  4. @fxn
  5. @fxn
  6. @fxn

    Merge branch 'explain'

    fxn authored
  7. @fxn

    implements a much faster auto EXPLAIN, closes #3843 [José Valim & Xav…

    fxn authored
    …ier Noria]
    This commit vastly reduces the impact of auto
    explain logging when enabled, while keeping
    a negligible cost when disabled.
    The first implementation was based on the idea
    of subscribing to "sql.active_record" when
    needed, and unsubscribing once done. This is
    the idea behind AR::Relation#explain. Subscribe,
    collect, unsubscribe.
    But with the current implementation of notifications
    unsubscribing is costly, because it wipes an internal
    cache and that puts a penalty on the next event.
    So we are switching to an approach where a long-running
    subscriber is listening. Instead of collecting the
    queries with a closure in a dedicated subscriber, now
    we setup a thread local.
    If the feature is disabled by setting the threshold
    to nil, the subscriber will call a method that does
    nothing. That's totally cheap.
  8. @ebeigarts
  9. @carlosantoniodasilva
  10. @arunagw

    SQlite3 Bump

    arunagw authored
Commits on Dec 3, 2011
  1. @jonleighton

    Fix #3837.

    jonleighton authored
    We also need to time zone convert time zone aware attributes when
    accessed via read_attribute, not only when via direct access.
  2. @fxn

    removes the convenience instance version of AR::Base.silence_auto_exp…

    fxn authored
    Rationale: As discussed with José and Jon, this convenience
    shortcut is not clearly justified and it could let the user
    thing the disabled EXPLAINs are related to the model instance
    rather than being globally disabled.
  3. @jonleighton

    Merge pull request #3820 from jaylevitt/nested_loading_through_assoc

    jonleighton authored
    reintroduce patch from #726 to handle nested eager loading via associations
  4. @jonleighton

    Merge pull request #3833 from kennyj/fix_3678-3

    jonleighton authored
    Use show create table (fix 3678: third time).
Commits on Dec 2, 2011
  1. @fxn

    yield >

    fxn authored
  2. @fxn
  3. @fxn
  4. @arunagw

    indentation fix warning

    arunagw authored
  5. @kennyj

    Use show create table.

    kennyj authored
  6. @fxn
  7. @jonleighton

    Revert "Roflscaling!" (for now)

    jonleighton authored
    This reverts commit f6b5046.
    Fear not, the roflscale will return when I have a bit more time and
    figure out a better way to do it. (In particular, a way that doesn't
    break the build.)
  8. @fxn
Commits on Dec 1, 2011
  1. @jonleighton
Something went wrong with that request. Please try again.