Class: Scenic::Adapters::Postgres
- Inherits:
-
Object
- Object
- Scenic::Adapters::Postgres
- Defined in:
- lib/ext/scenic/adapters/postgres.rb
Overview
Features of Scenic not available in v1.7.0
Instance Method Summary collapse
-
#populated?(name) ⇒ boolean
True if supplied relation name is populated.
Instance Method Details
#populated?(name) ⇒ boolean
True if supplied relation name is populated. Useful for checking the
state of materialized views which may error if created WITH NO DATA
and used before they are refreshed. True for all other relation types.
13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/ext/scenic/adapters/postgres.rb', line 13 def populated?(name) raise_unless_materialized_views_supported schemaless_name = name.split(".").last sql = "SELECT relispopulated FROM pg_class WHERE relname = '#{schemaless_name}'" relations = execute(sql) if relations.count.positive? relations.first["relispopulated"].in?(["t", true]) else false end end |