| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| | |
Fix format of `ActionController::Parameters#to_s` doc [ci skip]
|
| | |
|
|\ \
| |/
|/| |
Delete stale comment for `AR::Associations::Builder::CollectionAssociation` [ci skip]
|
|/ |
|
| |
|
|\
| |
| | |
Fallback Parameters#to_s to Hash#to_s
|
| |
| |
| | |
Fixes https://github.com/rails/rails/issues/29617
|
|\ \
| |/
|/| |
Add system tests to generate scaffold
|
| | |
|
|\ \
| | |
| | | |
[ci skip] run migration before looking at schema
|
|/ / |
|
|\ \
| | |
| | | |
Specify correct extension for text layouts
|
| | |
| | |
| | | |
When using render plain the extension for the layout needs to be .text.erb instead of .txt.erb
|
|\ \ \
| | | |
| | | | |
Should use the same connection in using query cache
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
`test_cache_is_available_when_using_a_not_connected_connection` is
always failed if running only the test since #29609.
```
% ARCONN=mysql2 be ruby -w -Itest test/cases/query_cache_test.rb -n test_cache_is_available_when_using_a_not_connected_connection
Using mysql2
Run options: -n test_cache_is_available_when_using_a_not_connected_connection --seed 15043
F
Finished in 0.070519s, 14.1806 runs/s, 28.3612 assertions/s.
1) Failure:
QueryCacheTest#test_cache_is_available_when_using_a_not_connected_connection [test/cases/query_cache_test.rb:336]:
2 instead of 1 queries were executed.
Queries:
SELECT `tasks`.* FROM `tasks` WHERE `tasks`.`id` = ? LIMIT ?
SET NAMES utf8 COLLATE utf8_unicode_ci, @@SESSION.sql_mode = CONCAT(CONCAT(@@sql_mode, ',STRICT_ALL_TABLES'), ',NO_AUTO_VALUE_ON_ZERO'), @@SESSION.sql_auto_is_null = 0, @@SESSION.wait_timeout = 2147483.
Expected: 1
Actual: 2
1 runs, 2 assertions, 1 failures, 0 errors, 0 skips
```
This failure is due to `LogSubscriber` will use not connected
`ActiveRecord::Base.connection` even if `Task.connection` is connected.
I fixed to always pass `type_casted_binds` to log subscriber to avoid
the issue.
|
|\ \ \
| | | |
| | | | |
Fix the next version of Rails from 5.3 to 6.0
|
|/ / / |
|
|\ \ \
| | | |
| | | | |
Deprecate delegating to `arel` in `Relation`
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Active Record doesn't rely delegating to `arel` in the internal since
425f2ca. The delegation is a lower priority than delegating to `klass`,
so it is pretty unclear which method is delegated to `arel`.
For example, `bind_values` method was removed at b06f64c (a series of
changes https://github.com/rails/rails/compare/79f71d3...b06f64c). But a
relation still could respond to the method because `arel` also have the
same named method (#28976).
Removing the delegation will achieve predictable behavior.
|
|\ \ \
| | | |
| | | | |
Remove unused `aliased_table_name` in `Association`
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
`aliased_table_name` in `Association` was added at a3502c4.
`aliased_table_name` in `JoinDependency` (added at 55854c4) is used, but
it looks like that added one in `Association` is never used from the
beginning.
|
|\ \ \ \
| |_|/ /
|/| | | |
Fix to scoping is correctly restored
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This regression was caused by #23004.
If STI subclass is using scoping in parent class scoping,
`current_scope` in subclass is never restored.
I fixed to restore `current_scope` to previous value correctly.
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | | |
kamipo/remove_method_missing_in_relation_delegation
Remove `method_missing` in `Relation::Delegation`
|
| | | | |
| | | | |
| | | | |
| | | | | |
The `method_missing` is never reached since 64c53d7c.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Use `quote` method rather than single quotes to identifiers in SQL
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Because identifiers in SQL could include a single quote.
Related #24950, #26784.
|
|\ \ \ \ \ \
| |_|_|/ / /
|/| | | | | |
Prevent extra `through_scope`
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
We can reuse `through_scope` for `reset_association`.
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | | |
The receiver in a scope should be a `relation`
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Currently the receiver in a scope is `klass`, not `relation`.
I think it is a strange because the receiver in `default_scope` and a
scope on association is `relation`.
I fixed to the receiver is to be a `relation` properly for consistency.
|
|\ \ \ \ \ \ \
| | | | | | | |
| | | | | | | | |
Remove unused `Subject` model in tests
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Because `subjects` table doesn't exist.
|
|\ \ \ \ \ \ \ \
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
kamipo/use_timestamp_attributes_for_update_in_model
Use `timestamp_attributes_for_update_in_model` rather than `timestamp_attributes_for_update`
|
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
`timestamp_attributes_for_update`
|
|\ \ \ \ \ \ \ \ \
| |_|_|_|_|_|_|/ /
|/| | | | | | | | |
Remove `HasAndBelongsToManyReflection#initialize`
|
| | |_|_|_|_|/ /
| |/| | | | | |
| | | | | | | |
| | | | | | | | |
It is delegating `super` only.
|
|\ \ \ \ \ \ \ \
| | | | | | | | |
| | | | | | | | | |
`Relation#locked?` should not build arel
|
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
The delegation was needed since passing `relation` with
`relation.bound_attributes`. It should use `relation.arel` in that case.
|
| | | | | | | | | |
|
|\ \ \ \ \ \ \ \ \
| | | | | | | | | |
| | | | | | | | | | |
Show query cache keys in `test_middleware_caches`
|
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
`test_middleware_caches` also failed same as #29600.
https://travis-ci.org/rails/rails/jobs/248017174#L487-L489
|
|\ \ \ \ \ \ \ \ \ \
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | | |
kamipo/fix_eager_loading_to_respect_store_full_sti_class
Fix eager loading to respect `store_full_sti_class` setting
|
| | |_|_|_|_|_|_|/ /
| |/| | | | | | | | |
|
|\ \ \ \ \ \ \ \ \ \
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | | |
kamipo/dont_passing_klass_connection_to_association_scope
Don't passing `klass.connection` to `AssociationScope`
|
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | | |
Passing `klass.connection` is redundant because `AssociationScope` is
passed an association itself and an association has `klass`.
|
|\ \ \ \ \ \ \ \ \ \ \
| | | | | | | | | | | |
| | | | | | | | | | | | |
Add a test case for unscoping `default_scope` in associations
|
| |/ / / / / / / / / /
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | | |
Unscoping `default_scope` in associations has already supported (#17360
for preloading, c9cf8b8 for eager loading).
Fixes #20679.
Closes #16531.
|
|\ \ \ \ \ \ \ \ \ \ \
| |_|_|/ / / / / / / /
|/| | | | | | | | | | |
Enable query cache if set a configurations
|
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | |
| | | | | | | | | | | |
ActiveRecord query cache is available when a connection is connected.
Therefore, query cache is unavailable when entering the ActiveRecord::Base.cache block without being connected.
```ruby
ActiveRecord::Base.cache do
Task.find(1) # access to database.
Task.find(1) # access to database. unavailable query cache
end
```
If we use query cache with batch script etc, we need to connect before that.
```ruby
Task.connection
ActiveRecord::Base.cache do
Task.find(1) # access to database.
Task.find(1) # available query cache
end
```
Before version 3.1, query cache had been enabled if a configuration was set up.
In order to solve the `DATABASE_URL` issue(#8074), ActiveRecord has checked whether a connection is connected or not.
Today, ActiveRecord.configurations respect `DATABASE_URL`.
https://github.com/rails/rails/blob/master/activerecord/lib/active_record/core.rb#L46
|