Commit Graph

578 Commits (3076d5bf5c845a60ddb513cd2681854528c3e0d6)

Author SHA1 Message Date
Ibrar Ahmed 3076d5bf5c PG-373: Remove wal fields for PG12 and below. 2022-12-07 15:03:14 +00:00
Muhammad Usama 913064b68d
PG-435: Adding new counters that are available in PG15 (#329)
In line with pg_stat_statments for PG15, This commit adds eight new cumulative
counters for jit operations, making it easier to diagnose how JIT is used in an
installation. And two new columns, temp_blk_read_time, and temp_blk_write_time,
respectively, show the time spent reading and writing temporary file blocks
on disk.
Moreover, The commit also contains a few indentations and API adjustments.
2022-12-07 15:40:13 +05:00
Naeem Akhter 4a254a538b PG-553: Add a testcase to verify columns names in PGSM. 2022-12-01 12:06:08 +05:00
Ibrar Ahmed f7860b472f
PG-310: Bucket is “Done” vs still being current/last. (#321)
A new column is added to mention that bucket is active or done. there is    
some timing based adjustment was required with that too.   

Co-authored-by: Hamid Akhtar <hamid.akhtar@percona.com>
2022-11-23 02:23:28 +05:00
Naeem Akhter b4ab2ccc84
PG-557: Update PGSM+PMM GH workflows to pick intended target branch. (#323) 2022-11-23 02:22:13 +05:00
Naeem Akhter 8e265b9bfb
PG-556: Fix expected output of test case version. (#322) 2022-11-23 02:21:33 +05:00
Naeem Akhter fe83f56ab7
PG-554: Remove redundant files and fix regression. (#319)
PG-554: Remove reduntant files and fix regression.

Removed old files with same name and add these files to fix sql regression
on PG 14 & 15.

1- regression/expected/error_1.out
2- regression/expected/error_insert_1.out
3- regression/expected/top_query_1.out
2022-11-23 02:20:43 +05:00
Muhammad Usama 2f2c40ed22
PG-555 :Infrastructure to allow multiple SQL APIs (#320)
Creating the infrastructure that'll allow using newer versions
of the loadable module with old SQL declarations.
Also updating the build version to 2.0.0-dev
2022-11-21 18:27:21 +05:00
Naeem Akhter 7f015b5a16
Merge pull request #318 from ibrarahmad/PG544
PG-544: Regression cleanup.
2022-11-17 04:52:54 +05:00
Ibrar Ahmed 1bc14fb759 PG-544: Regression cleanup. 2022-11-16 21:31:16 +00:00
Naeem Akhter 741dea66a8
Merge pull request #317 from ibrarahmad/PG-544
PG-544: Regression cleanup.
2022-11-17 01:18:48 +05:00
Ibrar Ahmed 6643854c47
Merge branch 'percona:main' into PG-544 2022-11-17 01:08:13 +05:00
Naeem Akhter fcb6dac321
Merge pull request #316 from ibrarahmad/PG320
PG-320: Removing the query state code from the view.
2022-11-17 00:56:16 +05:00
Ibrar Ahmed a3830624bb PG-544: Regression cleanup. 2022-11-16 19:47:07 +00:00
Ibrar Ahmed 710103cd0d PG-320: Removing the query state code from the view. 2022-11-16 19:37:15 +00:00
Naeem Akhter 7f743b142a
Merge pull request #315 from ibrarahmad/PG-306
PG-306: The bucket start time should be timestamp instead of TEXT.
2022-11-16 00:44:20 +05:00
Naeem Akhter 2f62ee695b
Merge pull request #314 from ibrarahmad/PG-518
PG-518: Drop the internal function permission from PUBLIC.
2022-11-16 00:44:06 +05:00
Naeem Akhter 4f281a8c12
Merge pull request #313 from ibrarahmad/PG-552
PG-552: Remove unnecessary columns from PostgreSQL 11 and 12 views.
2022-11-16 00:43:50 +05:00
Naeem Akhter bcb1a3b1b8
Merge pull request #312 from ibrarahmad/PG-320
PG-320: Removing the query state code from the view.
2022-11-16 00:43:16 +05:00
Ibrar Ahmed bc19c99c0b PG-306: The bucket start time should be timestamp instead of TEXT. 2022-11-15 18:11:10 +00:00
Ibrar Ahmed a392c98b5c PG-518: Drop the internal function permission from PUBLIC.
It will be a security problem to provide the internal function access to PUBLIC.
This commit will revoke all permission of internal functions from PUBLIC.
2022-11-15 17:45:42 +00:00
Ibrar Ahmed 40afdce2eb PG-552: Remove unnecessary columns from PostgreSQL 11 and 12 views.
There was a typo while checking the PostgreSQL version in the SQL file. This commit
will fix the typo, and only the necessary columns will be visible in the view.
2022-11-15 17:10:42 +00:00
Ibrar Ahmed db5a6aa30e PG-320: Removing the query state code from the view.
The query status monitoring code was used to track the current query state, for example,     
parsing, executing and finishing. After careful review, we have figured out that  
it does not make sense while a lot of time same query is running. Therefore it  
is also consuming resources. This commit will remove that feature. The upgrade
SQL from 1.0 - 2.0 is also updated.
2022-11-15 16:31:37 +00:00
Kai Wagner fddc0967e3
Merge pull request #311 from EngineeredVirus/main
Merging changes back to the main branch after the 1.1.1 release
2022-11-11 10:14:18 +01:00
Puneet Kala 00067680de PMM-7 Adding updates on integration pipelines (#308)
* PMM-7 Fix the github action

* PMM-7 fix version 12

* PMM-7 Fix Typo

* PMM-7 Fix Typo

* PMM-7 Increase timeout

* PMM-7 Increase timeout

* PMM-7 Add support for pgsql13

* PMM-7 Adding support for PG 14

* PMM-7 Increase timer

* PMM-7 Adding integration with PG15

* PMM-7 Handle PG 11 changes

* PMM-7 handle PG 12 changes

* PMM-7 Temp commit for regression

* PMM-7 Adding commit

* PMM-7 UI tests branch

* PMM-7 Revert temp branch

* PMM-7 Revert temp branch

* PMM-7 revert temp branch

* PMM-7 Revert the changes
2022-11-08 23:31:11 +05:00
Kai Wagner 2cef796e92 PG-526: bump version to 1.1.1 and adding release notes
Signed-off-by: Kai Wagner <kai.wagner@percona.com>
2022-11-08 23:31:01 +05:00
Naeem Akhter af2da8885a PG-525: Update PGSM TAP Test Cases to accommodate PG15 changes.
Following changes are included in this commit:

1. Updated pgsm.pm to enable runtime loading of PG server version dependent
perl modules that are needed for TAP testing. Similarly removed unneeded
code from this file that is not needed right now.

2. Added generic settings and helper functions to pgsm.pm that could be used
across different test cases.

3.Updated following TAP test case to use pgsm.pm based global settings and helper
functions while making sure that we reduce the clutter and duplicate code in
test cases, where possible.

t/001_settings_default.pl
t/002_settings_pgsm_track_planning.pl
t/003_settings_pgms_extract_comments.pl
t/004_settings_pgsm_track.pl
t/005_settings_pgsm_enable_query_plan.pl
t/006_settings_pgsm_overflow_target.pl
t/007_settings_pgsm_query_shared_buffer.pl
t/008_settings_pgsm_histogram_buckets.pl
t/009_settings_pgsm_histogram_max.pl
t/010_settings_pgsm_histogram_min.pl
t/011_settings_pgsm_bucket_time.pl
t/012_settings_pgsm_max_buckets.pl
t/013_settings_pgsm_normalized_query.pl
t/014_settings_pgsm_track_utility.pl
t/015_settings_pgsm_query_max_len.pl
t/016_settings_pgsm_max.pl
t/017_execution_stats.pl
t/019_insufficient_shared_space.pl
t/020_buffer_overflow.pl
t/021_misc_1.pl
t/022_misc_2.pl
t/023_missing_queries.pl
t/024_check_timings.pl
t/025_compare_pgss.pl
t/026_shared_blocks.pl
t/027_local_blocks.pl
t/028_temp_block.pl

4. Removed following TAP test cases as these are no longer needed and are
covered by existing other test cases.

0001_settings_pgsm_track_planning.pl
0002_settings_pgsm_enable_query_plan.pl

5. Added more out files for histogram sql test cases to cover the behavior for
bucket_start_time and server versions.

regression/expected/histogram_3.out
regression/expected/histogram_4.out
regression/expected/histogram_5.out
regression/expected/histogram_6.out

6. Added following out file that is PG server version 15 specific.

t/expected/007_settings_pgsm_query_shared_buffer.out.15
2022-11-08 23:30:39 +05:00
Muhammad Usama 0fe9908d5f PG-520 pg_stat_monitor does not work with PG15
PG 15 requires additional shared memory and LWLocks requests to be made from the
newly introduced shmem_request_hook and disallows the requests initiated
from outside the hook.
The commit makes moves the additional shared memory and LWLocks requests
from _PG_init to shmem_request_hook for PG15
2022-11-08 23:30:29 +05:00
Ibrar Ahmed 634f0ce580
PG-174: Code cleanup. (#310)
pg_stat_monitor is a bit longer; therefore, it requires some code cleanup.
Therefore I decided to turn these tasks into multiple commits and PR to avoid
various changes in one PR. This will ease the review and Q/A process.
In this commit, I have done these tasks.

1 - Fixing compilation issue, cause by previous commit, where we removed
the benchmarking code. It was causing problem for PostgreSQL-12.
2022-10-25 01:04:23 +05:00
Hamid Akhtar d7e8a0ae79
Merge pull request #309 from ibrarahmad/PG174
PG-174: Code cleanup.
2022-10-24 23:19:43 +05:00
Ibrar Ahmed 0af6295513 PG-174: Code cleanup.
pg_stat_monitor is a bit longer; therefore, it requires some code cleanup.
Therefore I decided to turn these tasks into multiple commits and PR to avoid
various changes in one PR. This will ease the review and Q/A process.
In this commit, I have done these tasks.

1 - Remove all benchmarking and debugging code.
2022-10-24 17:42:38 +00:00
Ibrar Ahmed c622bf35a8 PG-174: Code cleanup.
pg_stat_monitor is a bit longer; therefore, it requires some code cleanup.
Therefore I decided to turn these tasks into multiple commits and PR to avoid
various changes in one PR. This will ease the review and Q/A process.
In this commit, I have done these tasks.

 1 - Delete all the SQL.in files because these version-dependent files
 are becoming significant in quantity. Now added a single SQL file for which
 contains the dynamic SQL based on the PostgreSQL Version.

 2 - New SQL files (pg_stat_monitor--2.0.sql) added for pg_stat_monitor version 2.

 3 - A new SQL file (pg_stat_monitor--1.0--2.0.sql) is created, which will be
 used to upgrade from version 1.0 to 2.0. Currently, this file is empty. But
 whenever we add some API changes into 2.0, we need to update that file too.

 4 - The control file (pg_stat_monitor.control) is updated for version 2.0.
 This change will make the CREATE EXTENSION default to pg_stat_monitor version 2.0
2022-10-24 17:21:59 +00:00
Hamid Akhtar b920224e0f
Merging the 1.1.0 branch back to main branch (#303)
* PG-475: Inconsistent behaviour of PGSM

Reverting the bucket locking mechanism to previous behavior. This has
a lot of room for improvement that needs to be part of a major refactoring
in the 2.x release.

* PG-481 Release notes 1.1.0 (#294)

modified:   RELEASE_NOTES.md

* PG-500: Bump the version of pg_stat_monitor to 1.1.0 (#297)

* PG-501: Missing Buckets and incorrect calls count. (#298)

prev_bucket_sec holds the actual time at which the previous bucket was created
and it is used to compute if the previous bucket time has elapsed and when is
the time to create a new one. But since the bucket start time is rounded down
to logical time window start, that makes the prev_bucket_sec and bucket start
time out of sync with each other, and depending on the query arrival time there
is a high probability that a bucket gets missed especially when the last bucket
was created around the end of the bucket time window.

Solution is to keep the prev_bucket_sec and bucket start time in-sync.

Moreover, we are using the unint64 for storing the prev_bucket_sec which is kind
of an overkill and a simple uint should be good enough for the purpose. But that
change can be taken up as part of the create-bucket function refactoring task.

* PG-501: Missing Buckets and incorrect calls count.

Ensuring the outer bound for the bucket is an exclusive boundary and it
as it belongs to the next bucket. To explain the point further, a set of
five second bucket would be:
    Bucket 1: 00:00:00.00 -> 00:00:04.99...
    Bucket 2: 00:00:00.05 -> 00:00:09.99...
    Bucket 3: 00:00:00.10 -> 00:00:14.99...
    ...

Co-authored-by: Ibrar Ahmed <ibrar.ahmed@percona.com>
Co-authored-by: Anastasia Alexandrova <anastasia.alexandrova@percona.com>
Co-authored-by: Muhammad Usama <m.usama@gmail.com>
2022-09-13 15:59:39 +05:00
Vadim Yalovets 16536ae07d
Merge pull request #296 from adivinho/PG-430-Update-rpm-changelog-automatically
PG-430 update rpm changelog automatically
2022-08-29 10:33:09 +03:00
Vadim Yalovets 0dd2a89bb7 PG-430 Update rpm changelog automatically during build 2022-08-23 13:20:35 +03:00
Vadim Yalovets f9504fe2b9 PG-430 Update rpm changelog automatically during build 2022-08-23 13:20:21 +03:00
Vadim Yalovets 33df4d1717 PG-430 Update rpm changelog automatically during build 2022-08-23 13:20:01 +03:00
Naeem Akhter 3b9e180837
PG-464: Update regression status badges links. (#293)
As per discussion in the team meeting, removed status badges for Pg-11~13 jobs
from README. We should only be displaying the status badges for the latest PG
version (GA) and code coverage.
2022-08-18 14:50:58 +05:00
Naeem Akhter 2069139795
PG-477: Install perl modules in PGSM-PG12 Build workflow. (#292)
Perl tap tests dependencies were missing, those are being installed now.
Furthermore, workflow required some changes to enable logs to be available in
in case of a tap tests failure(s).
2022-08-18 14:50:43 +05:00
Ibrar Ahmed 63bc740a20
Merge pull request #289 from EngineeredVirus/main
PG-476: pg_stat_monitor causing errors : could not read file /tmp/pg_…
2022-08-09 21:22:27 +05:00
Kai Wagner f39e5b2439
Merge pull request #288 from nastena1606/PG-473-Disable-GH-pages-docs
PG-473 Drop docs and disable build on GH pages
2022-08-09 09:43:49 +02:00
Anastasia Alexadrova d499a23bdb PG-473 Drop docs and disable build on GH pages
With the documentation moved to a separate repo, remove the docs from this repository to avoid confusion where to contribute to docs. Also, removing a GH action and unpublishing the GH pages site with the docs being built on Render. Updated README and Contributing guide with the new docs repo.

deleted:    .github/workflows/doc-build.yml
	modified:   README.md
	deleted:    docs/COMPARISON.md
	deleted:    docs/REFERENCE.md
	deleted:    docs/USER_GUIDE.md
	deleted:    docs/_images/percona-favicon.ico
	deleted:    docs/_images/percona-logo.svg
	deleted:    docs/css/percona.css
	deleted:    docs/css/toctree.css
	deleted:    docs/index.md
	deleted:    docs/js/version-select.js
	deleted:    docs/overrides/404.html
	deleted:    docs/setup.md
	deleted:    requirements-doc.txt
2022-08-09 09:00:30 +02:00
Hamid Akhtar a3ad4033e0 PG-476: pg_stat_monitor causing errors : could not read file /tmp/pg_stat_monitor_query: No such file or directory
This only fixes the basic the path issue. It moves the query overflow file
from /tmp to PGSTAT folder data directory.
2022-08-04 13:47:36 +05:00
Hamid Akhtar cd61f9fa27
PG-462: adding PG15 build to our workflows (#287)
Adding SQL file for PG15. Initial version is a replica of PG14 SQL file.
Changes will be required in this file to fully support newly introduced columns
in PG15.

This currently fixes compilation and make install targets.

Also, updated the first line comments where the SQL version was mentioend as
1.1. The version remains at 1.0 for the time being.
2022-08-03 00:13:46 +05:00
Hamid Akhtar af3d91090e
PG-352: pg_stat_monitor: make error when placed under contrib folder (#286)
The Makefile is refactored and unnecessary conditional statements are removed
in favor of handling version separately.

Also, the clean target is updated to remove generated files including results
folder and the ${DATA} file.
2022-08-03 00:13:21 +05:00
Hamid Akhtar 31e3c801a9
PG-376: Enable TAP testing on PG 12 (#285)
This commit does not make any changes to the makefile. It simply ensures that
the test cases work with PG12. Necessary skip statements are added. Makefile
changes are to be done as part refactoring the Makefile.
2022-08-03 00:08:52 +05:00
Naeem Akhter cf1f7a842f
PG-464: Update regression status badges links. (#284)
Updated status badges links in README that were not carrying the correct links, workflows
(Actions) for older links have been removed from repo as those have been
replaced by distribution specific (PGDG and PPG) workflows.
2022-08-02 19:32:29 +05:00
Naeem Akhter 3bed7e675f
PG-418: Cleanup workflows in github. (#283)
1- Removed unsupported options from configure.
2- Reformatted files to break lines at 80 charachters.
3- Moved multiple 'apt install' and rm commands into a single one.
4- All workflows use and install llvm + clang version 11.
5- Updated workflows to ubuntu 22.04 where we are building PG server.
6- Added .vscode folder/files to .gitignore file.
2022-08-01 14:03:10 +05:00
Kai Wagner 326441c530
Merge pull request #282 from LenzGr/add-adopters
PG-206: Add ADOPTERS.md file
2022-07-21 12:23:56 +02:00
Lenz Grimmer c5085c08c5 PG-206: Add ADOPTERS.md file
Added a basic `ADOPTERS.md` placeholder file
for capturing user success stories.

Signed-off-by: Lenz Grimmer <lenz.grimmer@percona.com>
2022-07-21 10:13:05 +02:00