| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This fixes a bug when merging relations of different classes.
```
Given:
Post.joins(:author).merge(Author.order(name: :desc)).to_sql
Before:
SELECT "posts".* FROM "posts"
INNER JOIN "authors" ON "authors"."id" = "posts"."author_id"
ORDER BY "posts"."name" DESC
After:
SELECT "posts".* FROM "posts"
INNER JOIN "authors" ON "authors"."id" = "posts"."author_id"
ORDER BY "authors"."name" DESC
```
|
|
|
|
|
|
|
|
| |
constant"
This reverts commit fbcd46b1a0d255a34d29caa77bbd31c287446333.
This is not needed anymore. See 7280965
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit 22f80ae57b26907f662b7fd50a7270a6381e527e.
See
https://github.com/rails/rails/commit/22f80ae57b26907f662b7fd50a7270a6381e527e#commitcomment-4640676
Conflicts:
activerecord/CHANGELOG.md
|
| |
|
| |
|
|
|
|
| |
Fix travis failures.
|
|\
| |
| |
| |
| |
| |
| | |
Checks to see if the record contains the foreign_key to set the inverse automatically
Conflicts:
activerecord/CHANGELOG.md
|
| |
| |
| |
| | |
automatically
|
| |
| |
| |
| | |
FoxyFixturesTest#test_ignores_belongs_to_symbols_if_association_and_foreign_key_are_named_the_same
|
| |
| |
| |
| | |
test/cases/validations/i18n_generate_message_validation_test.rb and test/cases/validations/uniqueness_validation_test.rb
|
| | |
|
|\ \
| | |
| | |
| | |
| | | |
dougbarth/dont_swallow_exceptions_during_transactional_statements_in_mysql
Don't swallow exceptions in transctional statements
|
| | |
| | |
| | |
| | | |
From PR, @tenderlove would prefer to not maintain these tests.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The MySQL connection adapater swallows all StandardError exceptions,
which includes Mysql::Error and Mysql2::Error. The comment in the
exception clause claims errors thrown here indicate that transactions
aren't supported by the server but that isn't necessarily true. It's
possible the MySQL server has gone away and swallowing a failed commit
may let the application return a successful response when the data has
not been saved. Also, replication libraries like Galera require that the
application handle exceptions thrown at BEGIN/COMMIT.
I'm unable to determine what version of MySQL threw an exception for
transactional statements. I tried as far back as 3.23.49 with InnoDB
disabled but BEGIN & COMMIT statements do not throw an error. If there's
a real case for this logic to continue, we could instead push this
behavior into a configuration setting.
The exception swallowing has been there since the beginning:
db045dbbf60b53dbe013ef25554fd013baf88134
|
|\ \ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Explicitly exit with status "1" for create and drop task failures
Conflicts:
activerecord/CHANGELOG.md
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
* A non-zero exit status allows subsequent shell commands to be chained
together such as: `rake db:reset test:prepare && rspec && cap deploy`
(if you're feeling brave :)
* Any exceptions raised during the `create` and `drop` tasks are caught
in order to print a "pretty" message to the user. Unfortunately doing
so prevents rake from aborting with a non-zero exit status to the shell.
* Therefore we re-raise the exceptions after the "pretty" message and
re-catch them in the task.
* From the task we explicitly exit with a non-zero status. This method
was chosen (rather than just letting rake fail from the exception) so
that the backtrace is suppressed and the output to stderr is
unchanged.
* Update activerecord CHANGELOG
|
| | | | |
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
atom_feed_helper_test.rb to fail with "SystemStackError: stack level too deep".
This reverts commit d3a1ce1cdc60d593de1682c5f4e3230c8db9a0fd.
|
| | | |
| | | |
| | | |
| | | | |
association empty?/any? predicates any more (there is still a problem when select is applied to a relation, or if you try association#exists? -- but its easier to work around)
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
* Fix incorrectly named tests
* Restore Object#to_param behavior
* Ensure param is derived from a squished and truncated string
|
|\ \ \ \
| | | | |
| | | | | |
Used Yield instead of block.call
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | | |
attribute or method.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Add No Touching
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
| | | | | | |
|
|/ / / / / |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
when destroying a record on a has_many :through association.
:destroy method has own counter_cache callbacks.
|
| | | | | |
|
| | | | | |
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | | |
addresses "ArgumentError: comparison of VerySpecialComment with SpecialComment failed" in ActiveRecord::DelegationRelationTest#test_#sort!_delegation_is_deprecated
|
| | | | |
| | | | |
| | | | |
| | | | | |
Without this, some tests here were not actually testing anything.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Fixes problem with replacing has_one association record with itself
|
| |/ / / / |
|
| | | | |
| | | | |
| | | | |
| | | | | |
[ci skip]
|
|\ \ \ \ \
| |/ / / /
|/| | | |
| | | | | |
Add test for ActiveRecord::Relation YAML serialization, for #5303 issue
|
| | | | | |
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
(No database connection) sounds not be
able to connect database.
see more #12804
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The log output used to be confusing in situation where type casting has
"unexpected" effects. For example when finding records with a `String`.
BEFORE:
irb(main):002:0> Event.find("im-no-integer")
D, [2013-11-09T11:10:28.998857 #1706] DEBUG -- : Event Load (4.5ms) SELECT "events".* FROM "events" WHERE "events"."id" = $1 LIMIT 1 [["id", "im-no-integer"]]
AFTER:
irb(main):002:0> Event.find("im-no-integer")
D, [2013-11-09T11:10:28.998857 #1706] DEBUG -- : Event Load (4.5ms) SELECT "events".* FROM "events" WHERE "events"."id" = $1 LIMIT 1 [["id", 0]]
|
| | | | |
| | | | |
| | | | |
| | | | | |
This will avoid the broken window effect in our test suite
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
We can conditional define the tests depending on the adapter or
connection.
Lets keep the skip for fail tests that need to be fixed.
|
| |_|_|/
|/| | | |
|
| |_|/
|/| | |
|
| | |
| | |
| | |
| | |
| | | |
This allows to assign both `String` and `Symbol` values to the enum
without having to call `to_sym`, which is a security problem.
|