pgdexter 0.5.3 → 0.5.5

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: d40fb941685400a6a158502895da0d8b93d94db03da0ca4551714aea36e3dae3
4
- data.tar.gz: 8b99de845f8d6f2e455e98c3505e689a0a55dac69f7c08ba6ebebabeeb1ddd63
3
+ metadata.gz: 3137009a5f3efa2ec2ba4aea403b0de5429331245f34ccc70bb98d8d12cbe518
4
+ data.tar.gz: 04e80dd31a64fd1654edad7e866697b6c87c489462ba497546489267cbef05d2
5
5
  SHA512:
6
- metadata.gz: b2b25419796e276074f5a49b2d109be72789ddf8a5c7c5cf29ba55900ac79c323e55b06bf5ab20dde4d34e4cf1e752e7362d23481d21d19a8b068a360562d13f
7
- data.tar.gz: 382792e95461d718489d36c71e1ba01940f4b1d76de1b80527f0a4a19fcc90c215366645640970271011d5ad2c264051be57e62684e3278248d52bfaae983cd2
6
+ metadata.gz: cbde2900ff5de0d67b0472af0c87232e5492f150efca54641d0334a8c87ab6fd14458d885c4e313e236fb23f2b6ad0278b40ba4e43ac7be248ca54c12fb0aa6a
7
+ data.tar.gz: 0062ae2f3584e289bcb90b0c31e02aa964ac32d38d20cbfcef1e8ac18be0c6fcf74580d0d53e27ac760a9e537b8d6b124945cebddee16beee3bcdd1bf6d98caa
data/CHANGELOG.md CHANGED
@@ -1,3 +1,13 @@
1
+ ## 0.5.5 (2024-06-02)
2
+
3
+ - Updated pg_query to 5.1+ to fix installation on Windows
4
+ - Fixed error with `--pg-stat-statements` and `--min-calls`
5
+
6
+ ## 0.5.4 (2024-04-03)
7
+
8
+ - Fixed issue with processing over 500 query fingerprints (introduced in 0.5.3)
9
+ - Require google-protobuf < 4
10
+
1
11
  ## 0.5.3 (2024-03-05)
2
12
 
3
13
  - Fixed error with hypothetical index limit
data/README.md CHANGED
@@ -12,8 +12,8 @@ First, install [HypoPG](https://github.com/HypoPG/hypopg) on your database serve
12
12
 
13
13
  ```sh
14
14
  cd /tmp
15
- curl -L https://github.com/HypoPG/hypopg/archive/1.4.0.tar.gz | tar xz
16
- cd hypopg-1.4.0
15
+ curl -L https://github.com/HypoPG/hypopg/archive/1.4.1.tar.gz | tar xz
16
+ cd hypopg-1.4.1
17
17
  make
18
18
  make install # may need sudo
19
19
  ```
data/lib/dexter/client.rb CHANGED
@@ -64,6 +64,7 @@ module Dexter
64
64
 
65
65
  o.separator "Processing options:"
66
66
  o.integer "--interval", "time to wait between processing queries, in seconds", default: 60
67
+ # TODO change to integer in 0.6.0
67
68
  o.float "--min-calls", "only process queries that have been called a certain number of times", default: 0
68
69
  o.float "--min-time", "only process queries that have consumed a certain amount of DB time, in minutes", default: 0
69
70
  o.separator ""
@@ -189,6 +189,8 @@ module Dexter
189
189
  def create_hypothetical_indexes(queries)
190
190
  candidates = {}
191
191
 
192
+ reset_hypothetical_indexes
193
+
192
194
  # get initial costs for queries
193
195
  calculate_plan(queries)
194
196
  explainable_queries = queries.select { |q| q.plans.any? && q.high_cost? }
@@ -680,7 +682,7 @@ module Dexter
680
682
  ORDER BY
681
683
  1
682
684
  SQL
683
- execute(sql, params: [@min_time * 60000, @min_calls]).map { |q| q["query"] }
685
+ execute(sql, params: [@min_time * 60000, @min_calls.to_i]).map { |q| q["query"] }
684
686
  end
685
687
 
686
688
  def with_advisory_lock
@@ -1,3 +1,3 @@
1
1
  module Dexter
2
- VERSION = "0.5.3"
2
+ VERSION = "0.5.5"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pgdexter
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.3
4
+ version: 0.5.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andrew Kane
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-03-06 00:00:00.000000000 Z
11
+ date: 2024-06-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: csv
@@ -24,6 +24,20 @@ dependencies:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: google-protobuf
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "<"
32
+ - !ruby/object:Gem::Version
33
+ version: '4'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "<"
39
+ - !ruby/object:Gem::Version
40
+ version: '4'
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: pg
29
43
  requirement: !ruby/object:Gem::Requirement
@@ -44,14 +58,14 @@ dependencies:
44
58
  requirements:
45
59
  - - "~>"
46
60
  - !ruby/object:Gem::Version
47
- version: '4'
61
+ version: '5.1'
48
62
  type: :runtime
49
63
  prerelease: false
50
64
  version_requirements: !ruby/object:Gem::Requirement
51
65
  requirements:
52
66
  - - "~>"
53
67
  - !ruby/object:Gem::Version
54
- version: '4'
68
+ version: '5.1'
55
69
  - !ruby/object:Gem::Dependency
56
70
  name: slop
57
71
  requirement: !ruby/object:Gem::Requirement
@@ -110,7 +124,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
110
124
  - !ruby/object:Gem::Version
111
125
  version: '0'
112
126
  requirements: []
113
- rubygems_version: 3.5.3
127
+ rubygems_version: 3.5.9
114
128
  signing_key:
115
129
  specification_version: 4
116
130
  summary: The automatic indexer for Postgres