-
first off there are some patches on
http://dev.rubyonrails.org/attachment/ticket/9640
that look sane to me (and maybe have slipped under the radar because
they weren’t in their own ticket).
Secondly it has been very rightly pointed out that the
include_eager_conditions? and include_eager_order? functions that
preloading leans on to decide whether to fallback to the old eager
loading code aren’t smart enough (specifically they understand
other_table.foo, but notother_table
.foos
).
It’s not as completely straightforward as adding that to the regex
(currently /([.\w]+).\w+/) since the change to be made obviously
depends on how that particular database quotes table & column names.
Anyone have a smart idea for generating the right regular expression ?
perhaps lean on connection.quote_table_name and
connection.quote_column_name to generate the right delimiters and then
the expression is/#{table_delimiter}?([.\w]+)#{table_delimiter}?
.#{column_delimiter}?\w+#{column_delimiter}/
Thoughts?
Fred