TLDR: I would like to backport https://github.com/rails/rails/pull/35089 
all query caches for current thread") to 5.2-stable branch.
The issue comes from this patch which enables query cache for all 
connection pools - https://github.com/rails/rails/pull/28869.

Longer text:

I'm using active_record_slave 
<https://github.com/rocketjob/active_record_slave> to read some records 
from slave database. It uses special abstract model which connects to slave 
database using establish_connection and all reads go through this model by 

My case (consider this happens inside http request/response cycle):

   1. fetch some record - it will be read from slave and this query will be 
   2. delete that record - this query will go through 
   AR::Base.connection_pool to master database and this will clear the 
   cache for this connection pool but not for connection pool of the model for 
   slave database.
   3. fetch the same record from step №1 using the same query - this will 
   return the record from cache, because all reads go to slave by default.

AR.uncached cannot be used because it works only for 

Can I make a backport?

You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Core" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to rubyonrails-core+unsubscr...@googlegroups.com.
To view this discussion on the web visit 

Reply via email to