instance method
with_role_and_shard
Ruby on Rails 6.1.7.10
Since v6.1.7.10 PrivateSignature
with_role_and_shard(role, shard, prevent_writes)
No documentation comment.
Parameters
-
rolereq -
shardreq -
prevent_writesreq
Source
# File activerecord/lib/active_record/connection_handling.rb, line 376
def with_role_and_shard(role, shard, prevent_writes)
prevent_writes = true if role == reading_role
if ActiveRecord::Base.legacy_connection_handling
with_handler(role.to_sym) do
connection_handler.while_preventing_writes(prevent_writes) do
self.connected_to_stack << { shard: shard, klasses: [self] }
yield
end
end
else
self.connected_to_stack << { role: role, shard: shard, prevent_writes: prevent_writes, klasses: [self] }
return_value = yield
return_value.load if return_value.is_a? ActiveRecord::Relation
return_value
end
ensure
self.connected_to_stack.pop
end
Defined in activerecord/lib/active_record/connection_handling.rb line 376
· View on GitHub
· Improve this page
· Find usages on GitHub
Defined in ActiveRecord::ConnectionHandling