Module: PgpoolNoLoadBalance

Defined in:
lib/pgpool_no_load_balance.rb,
lib/pgpool_no_load_balance/railtie.rb,
lib/pgpool_no_load_balance/version.rb,
lib/pgpool_no_load_balance/arel/select_manager.rb,
lib/pgpool_no_load_balance/active_record/querying.rb,
lib/pgpool_no_load_balance/active_record/explain_subscriber.rb,
lib/pgpool_no_load_balance/active_record/relation/query_methods.rb,
lib/pgpool_no_load_balance/active_record/connection_adapters/postgresql_adapter.rb

Defined Under Namespace

Modules: ActiveRecord, Arel Classes: PostgreSQLAdapterMissing, Railtie

Constant Summary collapse

NLB_COMMENT =
'/*NO LOAD BALANCE*/'
VERSION =
"1.1.0"

Class Method Summary collapse

Class Method Details

.setup!Object



14
15
16
17
18
19
20
21
22
23
24
# File 'lib/pgpool_no_load_balance.rb', line 14

def self.setup!
  unless ::ActiveRecord::Base.respond_to?(:postgresql_connection)
    raise PostgreSQLAdapterMissing, "No postgresql adapter specified by 'config/database.yml', or 'ActiveRecord::Base.establish_connection' method is not called."
  end
  ::ActiveRecord::Base.extend PgpoolNoLoadBalance::ActiveRecord::Querying
  ::ActiveRecord::Relation.prepend PgpoolNoLoadBalance::ActiveRecord::QueryMethods
  ::ActiveRecord::Relation::VALID_UNSCOPING_VALUES << :pgpool_nlb
  ::Arel::SelectManager.include PgpoolNoLoadBalance::Arel::SelectManager
  ::ActiveRecord::ConnectionAdapters::PostgreSQLAdapter.prepend PgpoolNoLoadBalance::ActiveRecord::ConnectionAdapters::PostgreSQLAdapter
  ::ActiveRecord::ExplainSubscriber.prepend PgpoolNoLoadBalance::ActiveRecord::ExplainSubscriber
end