Sha256: 0d2eb007b9e879f255d1fefb761207a5da4c8742580d13c292f89f7deb74b4bb

Contents?: true

Size: 648 Bytes

Versions: 1

Compression:

Stored size: 648 Bytes

Contents

# frozen_string_literal: true

module RailsPGExtras
  def self.all_locks_description
    "Queries with active locks"
  end

  def self.all_locks_sql
    <<-EOS
SELECT
  pg_stat_activity.pid,
  pg_class.relname,
  pg_locks.transactionid,
  pg_locks.granted,
  pg_locks.mode,
  pg_stat_activity.query AS query_snippet,
  age(now(),pg_stat_activity.query_start) AS "age"
FROM pg_stat_activity,pg_locks left
OUTER JOIN pg_class
  ON (pg_locks.relation = pg_class.oid)
WHERE pg_stat_activity.query <> '<insufficient privilege>'
  AND pg_locks.pid = pg_stat_activity.pid
  AND pg_stat_activity.pid <> pg_backend_pid() order by query_start;
EOS
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rails-pg-extras-0.4.1 lib/rails-pg-extras/queries/all_locks.rb