rails-pg-extras 0.5.0 → 0.5.1
Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a49e217c0bc41bfafdb1d9c39fe795085934d9186b12ce278bc32d4d5f554480
|
4
|
+
data.tar.gz: fc3918cbd8381edd923ead99d16f75dfa8fd6421821e8aea0bb894d85bba0071
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4f22c9c93e980c784a5512d1ad1b0ceaeed2655f98ba3d6294377c2743fec8e751de089d06dfb488454ab97970ee1c5e7879bd065fa6cba0ae0e28ae7f628542
|
7
|
+
data.tar.gz: d99d0b10ae027d25dd877ae5cab92d9cf849add1c84dc9687cde5a5c3ebc92536a8ab466e9ff2cd5ec7f2672a73dd91c245232528375819102c606e2836215e3
|
data/lib/rails-pg-extras.rb
CHANGED
@@ -23,11 +23,15 @@ module RailsPGExtras
|
|
23
23
|
end
|
24
24
|
|
25
25
|
def self.run_query(query_name:, in_format:)
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
display_result(
|
26
|
+
result = connection.execute(
|
27
|
+
sql_for(query_name: query_name)
|
28
|
+
)
|
29
|
+
|
30
|
+
display_result(
|
31
|
+
result,
|
32
|
+
title: description_for(query_name: query_name),
|
33
|
+
in_format: in_format
|
34
|
+
)
|
31
35
|
end
|
32
36
|
|
33
37
|
def self.display_result(result, title:, in_format:)
|
@@ -55,12 +59,36 @@ module RailsPGExtras
|
|
55
59
|
end
|
56
60
|
end
|
57
61
|
|
62
|
+
def self.description_for(query_name:)
|
63
|
+
first_line = File.open(
|
64
|
+
sql_path_for(query_name: query_name)
|
65
|
+
) { |f| f.readline }
|
66
|
+
|
67
|
+
first_line[/\/\*(.*?)\*\//m, 1].strip
|
68
|
+
end
|
69
|
+
|
70
|
+
def self.sql_for(query_name:)
|
71
|
+
File.read(
|
72
|
+
sql_path_for(query_name: query_name)
|
73
|
+
)
|
74
|
+
end
|
75
|
+
|
76
|
+
def self.sql_path_for(query_name:)
|
77
|
+
File.join(File.dirname(__FILE__), "/rails-pg-extras/queries/#{query_name}.sql")
|
78
|
+
end
|
79
|
+
|
58
80
|
def self.connection
|
59
81
|
ActiveRecord::Base.connection
|
60
82
|
end
|
61
83
|
|
62
|
-
|
63
|
-
|
84
|
+
%i(
|
85
|
+
connection
|
86
|
+
display_result
|
87
|
+
sql_for
|
88
|
+
sql_path_for
|
89
|
+
).each do |method_name|
|
90
|
+
private_class_method method_name
|
91
|
+
end
|
64
92
|
end
|
65
93
|
|
66
94
|
require 'rails-pg-extras/railtie' if defined?(Rails)
|
File without changes
|
@@ -4,7 +4,7 @@ require 'rails-pg-extras'
|
|
4
4
|
|
5
5
|
namespace :pg_extras do
|
6
6
|
RailsPGExtras::QUERIES.each do |query_name|
|
7
|
-
desc RailsPGExtras.
|
7
|
+
desc RailsPGExtras.description_for(query_name: query_name)
|
8
8
|
task query_name.to_sym => :environment do
|
9
9
|
RailsPGExtras.public_send(query_name)
|
10
10
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rails-pg-extras
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- pawurb
|
@@ -62,7 +62,7 @@ files:
|
|
62
62
|
- lib/rails-pg-extras/queries/index_size.sql
|
63
63
|
- lib/rails-pg-extras/queries/index_usage.sql
|
64
64
|
- lib/rails-pg-extras/queries/locks.sql
|
65
|
-
- lib/rails-pg-extras/queries/long_running_queries.
|
65
|
+
- lib/rails-pg-extras/queries/long_running_queries.sql
|
66
66
|
- lib/rails-pg-extras/queries/mandelbrot.sql
|
67
67
|
- lib/rails-pg-extras/queries/outliers.sql
|
68
68
|
- lib/rails-pg-extras/queries/records_rank.sql
|