惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

GbyAI
GbyAI
Y
Y Combinator Blog
Martin Fowler
Martin Fowler
D
Docker
N
Netflix TechBlog - Medium
酷 壳 – CoolShell
酷 壳 – CoolShell
WordPress大学
WordPress大学
L
LangChain Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
博客园 - 三生石上(FineUI控件)
博客园_首页
量子位
罗磊的独立博客
Blog — PlanetScale
Blog — PlanetScale
云风的 BLOG
云风的 BLOG
Microsoft Azure Blog
Microsoft Azure Blog
宝玉的分享
宝玉的分享
Apple Machine Learning Research
Apple Machine Learning Research
D
DataBreaches.Net
I
InfoQ
Engineering at Meta
Engineering at Meta
The Cloudflare Blog
H
Help Net Security
V
V2EX

Ruby on Rails: Compress the complexity of modern web apps

Safer to_i coercion, custom to_fs formats, and more! This Week in Rails: May 16, 2026 This Week in Rails: May 8, 2026 This Week in Rails: May 1, 2026 Active Record gets better every week Great big Rails World 2026 update: CFP, Corporate Support tickets, workshops Query command for database queries and more Explicit query: and body: kwargs for integration tests and more! Speedup ActiveRecord::LogSubscriber#sql_color and more! This Week in Rails: March 27, 2026 Rails Versions 8.0.5 and 8.1.3 have been released! Rails Versions 7.2.3.1, 8.0.4.1, and 8.1.2.1 have been released! This Week in Rails: March 20, 2026 Validate URI scheme in Action Text and more This Week in Rails: March 6, 2026 Planning Center is the newest Rails Foundation Contributing member Action Text gets Markdown conversion, editor links in devcontainers, and more! BARRA seeks Rails developer Joe Agliozzo is looking for a Rails developer The rise of lighttpd as the alternative web server When longer is better and more is more Snowdevil: First e-tailer on Rails Natural selection for frameworks in Ruby vs Java Address book tutorial in Portuguese Becoming a better programmer with Rails 10 Things Every Java Programmer Should Know About Ruby Really Getting Started in Rails Off the Treadmill, Onto the Rails Rails 0.9.5: A world of fixes and tweaks Rich clients with Rails and XUL
This Week in Rails: connection statistics, query caching ...
David Heinemeier Hansson · 2016-11-11 · via Ruby on Rails: Compress the complexity of modern web apps

Friday, November 11, 2016
Posted by vipulnsward

Hello everyone!

And welcome to our special edition from, live from RubyConf in Cincinnati 😎.

This is Vipul along with Tim and Prathamesh teaming together to bring you all the latest news from the Rails community.  Lets get started!

Rails Contributors

This week 20 people contributed to Rails. We also got 3 first time contributors. Thanks all for your amazing contributions ❤️

If you too are looking to help out, head over to our issues.

Improved

Active Record connection pool adds a stat method

ActiveRecord::Base.connection_pool now has a stat method that returns statistics about the current status of a connection pool. For Example:

>> ActiveRecord::Base.connection_pool.stat
=> { max: 25, total: 1, busy: 1, dead: 0, idle: 0, num_waiting: 0, checkout_timeout: 5 }

Avoid unscope(:order) when limit is passed for a count query

If a limit is passed, record fetching order is very important for performance.

This fix makes changes so that we don’t unscope and remove the order from a count query when a limit clause is passed to it.

JRuby dependencies are now resolved for the latest version

As part of the ongoing effort of making Rails 5 compatible with JRuby, the test suite got updates for the JRuby version it runs on, to make it satisfy the dependencies required for the tests.

Fixed

Clear query cache during checkin, instead of an execution callback

Previously ActiveRecord::QueryCache using the new Rails executor may result in dirty query caches across threads. 

Releasing a connection in one thread may return it to the pool with cache still enabled and dirty, and the executor lost track of the connection so it may clear another, and another thread may pick up the dirty cache and never turn it off.

This fix makes changes so that query cache does not persist while a connection moves through the pool and is assigned to a new thread.

Configure query caching (per thread) on the connection pool

If the result of ActiveRecord::Base.connection is different across different threads, enabling the query cache in one thread will have been leaked, which could change the state of another.

This addresses the issue by making query caching local to the current thread.

One More Thing ™

Bona fide system testing in Rails 5.1

From DHH on Twitter:

System tests have finally taken strong hold at @Basecamp. Can't wait for us to level-up @Rails with great defaults for it in 5.1! pic.twitter.com/eptnu8OcAc

— DHH (@dhh) November 10, 2016

The work being done is soon to be bundled into a new gem inside of Rails, that will hopefully be part of Rails 5.1!

Wrapping up

That’s it from This Week in Rails! There were many other great contributions, too numerous to list here, but feel free to check them out!

Until next week!