Merge pull request #8417 from kennyj/fix_8414

Fix #8414. Performance problem with postgresql adapter primary_key function.
Conflicts:
	activerecord/lib/active_record/connection_adapters/postgresql/schema_statements.rb
Unscope update_column(s) query to ignore default scope

When applying default_scope to a class with a where clause, using
update_column(s) could generate a query that would not properly update
the record due to the where clause from the default_scope being applied
to the update query.

    class User < ActiveRecord::Base
      default_scope where(active: true)
    end

    user = User.first
    user.active = false
    user.save!

    user.update_column(:active, true) # => false

In this situation we want to skip the default_scope clause and just
update the record based on the primary key. With this change:

    user.update_column(:active, true) # => true

Backport of #8436 fix.

Conflicts:
	activerecord/CHANGELOG.md
	activerecord/lib/active_record/persistence.rb
	activerecord/test/cases/persistence_test.rb
revised the actionmailer's CHANGELOG structure
Backport #8450, the return value from mailer methods is not relevant.
Conflicts:

	actionmailer/CHANGELOG.md
	actionmailer/lib/action_mailer/base.rb
Merge pull request #8477 from senny/backport_8448

Backport #8450, the return value from mailer methods is not relevant.
Remove warning of unused variable
Added regression test for #8195.
Merge pull request #6376 from jgaskins/timestamp-microseconds

Increase numeric-timestamp precision to nanoseconds
Conflicts:
	activesupport/lib/active_support/core_ext/time/conversions.rb
Make sure the tests pass in the case closer to described in #8195
Allow users to choose the timestamp format in the cache key

This can be done using the class attribute cache_timestamp_format

Closes #8195
Add CHANGELOG entry for #6376.
Merge pull request #8441 from itzki/fix_decorate_columns

Backport test to ensure there won't be regressions.
The issue only happens on master at the moment.
Use 1.8 hash style :bomb:
Run backported serialized test without Identity Map

It fails with Identity Map because the find call returns the same
object, so the "content" attribute that we expect to raise "missing
attribute" is actually present.
Add :nsec format only for Ruby 1.9

Ruby 1.8 does not support this format in Time, so the format will only
be added to the available date formats on Ruby 1.9. Changelog entry was
changed to explain that as well.
Improve test name related to cache timestamp format [ci skip]
Merge pull request #8490 from mattv/fix_request_raw_post

Fix rewinding in ActionDispatch::Request#raw_post
Conflicts:
	actionpack/CHANGELOG.md
recognize migrations, in folders containing numbers and 'rb'.

Backport of #8500
Closes #8492

Conflicts:

	activerecord/test/cases/migrator_test.rb
Merge pull request #8504 from senny/backport_8492

Backport of #8500, recognize migrations, in folders containing numbers and 'rb'.
Clear url helper methods when routes are reloaded

Clear url helper methods when routes are reloaded by removing the
methods explicitly rather than just clearing the module because it
didn't work properly and could be the source of a memory leak.

Closes #8488.