Sha256: 9d0e23aad404cfdeeec91d5a9145bf92952e7162050bd3ae517e67e0573c82f7

Contents?: true

Size: 640 Bytes

Versions: 1

Compression:

Stored size: 640 Bytes

Contents

# frozen_string_literal: true

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

  def self.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.0 lib/rails-pg-extras/queries/all_locks.rb