Skip to content

Releases: vitabaks/pg_auto_reindexer

v1.6

18 Aug 14:32
b25d6c2

Choose a tag to compare

Enhanced the drop_invalid_index function to handle multiple invalid indexes using regex matching and to process both ccnew and ccold suffixes.

What's Changed

Full Changelog: v1.5...v1.6

v1.5

18 Jun 07:47
a74fbce

Choose a tag to compare

This release includes improved handling of special characters in index and database names, a new --sorting-orderoption to control index processing order by size, enhanced logging with total bloat index count and per-index progress.

What's Changed

  • Fix: Remove errmsg from variable handling by @vitabaks in #15
  • Add --sorting-order option and index count progress by @vitabaks in #16
  • Fix handling of special characters or spaces by @vitabaks in #17

Full Changelog: v1.4...v1.5

v1.4

29 Apr 07:42

Choose a tag to compare

This release includes major code refactoring, bugfixes, and introduces the new --jobs option to control the number of parallel workers for faster reindexing.

What's Changed

  • Fix the shebang line for systems which do not have bash in /bin by @ivan in #8
  • Fix FATAL: database "Timing" does not exist when there is a .psqlrc containing \timing. by @ivan in #9
  • Fix Shell linter warnings by @vitabaks in #10
  • Disable failed_reindex_limit by default by @vitabaks in #11
  • Code refactoring by @vitabaks in #12
  • Fix maintenance window handling for overnight time ranges by @vitabaks in #13
  • Add –jobs option to control parallel workers for reindexing by @vitabaks in #14

New Contributors

Full Changelog: v1.3...v1.4

v1.3

15 Dec 08:41
b7d7784

Choose a tag to compare

New features and improvements

  • Added outputs with index sizes before and after the rebuild, and separate summarizing outputs after finishing each database and whole maintenance (7e50003, c8bb00a)
  • Reduce the lock_timeout to 1 second (3d371a7)
  • Added Retries (#5, #7, 9faf4b4)
    • Now every index will retry to reindex after failure (3 attempts), for example, when canceling a statement due to lock timeout.
    • If all attempts failed - the index is considered failed to reindex. The script will not stop with an error and will continue working with the next index.
    • New parameter --failed_reindex_limit. The maximum number of reindex errors during database maintenance (default: 1)
  • Code refactoring (5f18d94)

Fixes

  • Slightly reworked database connection parameters in first checks to avoid some issues when connecting to remote Postgres (such as located in clouds) (0bc336c, 2caea5b)
  • Fixed a bug which raised when using repack on the index with uppercase letters in its name (12f19cf)
  • Changed pg_repack error level to avoid skipping timeout errors (d34eded)

Tests:

Thanks, @crztssr for contributing!

Comparing changes: v1.2...v1.3

v1.2

02 Jun 11:57

Choose a tag to compare

  • drop INVALID index with suffix _ccnew (if exists) after an error performing REINDEX INDEX CONCURRENTLY (feebc35, 05ca13e, 80bb6bb, 4d3bbba)
  • check for invalid temporary indexes with the suffix "index_" after performing pg_repack (0a5888e, 0429266)
  • check PostgreSQL availability before maintenance each index (a4c9195)
  • do not continue working if an error has occurred (1138e5b)
  • add the "-X" option to the psql command (be2aecd)
  • add "return 1" to the function "warnmsg" (148c100)
  • a little code refactoring (f68df54, 9a93308, 82dc0fd, c2d5d53)

v1.1

28 Apr 09:59

Choose a tag to compare

(4fb3897) Connect via unix socket (by default)
(ddc5f28) Ignore pg_catalog indexes

v1.0

27 Apr 11:39

Choose a tag to compare

Initial release to streamline generating downstream releases.