diff --git a/CHANGELOG.md b/CHANGELOG.md
index 68321b9..de33b95 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2,6 +2,19 @@
All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](http://semver.org).
+## [v4.0.0](https://github.com/puppetlabs/puppetlabs-pe_databases/tree/v4.0.0) (2023-06-23)
+
+[Full Changelog](https://github.com/puppetlabs/puppetlabs-pe_databases/compare/v3.0.0...v4.0.0)
+
+### Changed
+
+- \(SUP-3952\) Remove Puppet 6 as a supported platform [\#118](https://github.com/puppetlabs/puppetlabs-pe_databases/pull/118) ([elainemccloskey](https://github.com/elainemccloskey))
+
+### Added
+
+- \(SUP-3972\) Add activity tables to repack [\#123](https://github.com/puppetlabs/puppetlabs-pe_databases/pull/123) ([m0dular](https://github.com/m0dular))
+- \(SUP-4193\) Puppet 8 Compatibility [\#120](https://github.com/puppetlabs/puppetlabs-pe_databases/pull/120) ([MartyEwings](https://github.com/MartyEwings))
+
## [v3.0.0](https://github.com/puppetlabs/puppetlabs-pe_databases/tree/v3.0.0) (2022-11-08)
[Full Changelog](https://github.com/puppetlabs/puppetlabs-pe_databases/compare/v2.3.0...v3.0.0)
diff --git a/REFERENCE.md b/REFERENCE.md
index 7b76f66..da27aa2 100644
--- a/REFERENCE.md
+++ b/REFERENCE.md
@@ -7,11 +7,11 @@
### Classes
* [`pe_databases`](#pe_databases): Tuning, maintenance for PE PostgreSQL.
-* [`pe_databases::pg_repack`](#pe_databasespg_repack): Provides systemd timers to pg_repack tables in the pe-puppetdb database
+* [`pe_databases::pg_repack`](#pe_databases--pg_repack): Provides systemd timers to pg_repack tables in a given database
### Defined types
-* [`pe_databases::collect`](#pe_databasescollect): Create systemd units for repacking a given database type
+* [`pe_databases::collect`](#pe_databases--collect): Create systemd units for repacking a given database type
### Tasks
@@ -27,37 +27,38 @@ Tuning, maintenance for PE PostgreSQL.
The following parameters are available in the `pe_databases` class:
-* [`manage_database_maintenance`](#manage_database_maintenance)
-* [`disable_maintenance`](#disable_maintenance)
-* [`install_dir`](#install_dir)
-* [`scripts_dir`](#scripts_dir)
-* [`facts_tables_repack_timer`](#facts_tables_repack_timer)
-* [`catalogs_tables_repack_timer`](#catalogs_tables_repack_timer)
-* [`other_tables_repack_timer`](#other_tables_repack_timer)
-* [`manage_postgresql_settings`](#manage_postgresql_settings)
-* [`manage_table_settings`](#manage_table_settings)
-* [`reports_tables_repack_timer`](#reports_tables_repack_timer)
-* [`resource_events_tables_repack_timer`](#resource_events_tables_repack_timer)
-
-##### `manage_database_maintenance`
+* [`manage_database_maintenance`](#-pe_databases--manage_database_maintenance)
+* [`disable_maintenance`](#-pe_databases--disable_maintenance)
+* [`install_dir`](#-pe_databases--install_dir)
+* [`scripts_dir`](#-pe_databases--scripts_dir)
+* [`facts_tables_repack_timer`](#-pe_databases--facts_tables_repack_timer)
+* [`catalogs_tables_repack_timer`](#-pe_databases--catalogs_tables_repack_timer)
+* [`other_tables_repack_timer`](#-pe_databases--other_tables_repack_timer)
+* [`activity_tables_repack_timer`](#-pe_databases--activity_tables_repack_timer)
+* [`manage_postgresql_settings`](#-pe_databases--manage_postgresql_settings)
+* [`manage_table_settings`](#-pe_databases--manage_table_settings)
+* [`reports_tables_repack_timer`](#-pe_databases--reports_tables_repack_timer)
+* [`resource_events_tables_repack_timer`](#-pe_databases--resource_events_tables_repack_timer)
+
+##### `manage_database_maintenance`
Data type: `Boolean`
true or false (Default: true)
Manage the inclusion of the pg_repack class
-Default value: ``true``
+Default value: `true`
-##### `disable_maintenance`
+##### `disable_maintenance`
Data type: `Boolean`
true or false (Default: false)
Disable or enable maintenance mode
-Default value: ``false``
+Default value: `false`
-##### `install_dir`
+##### `install_dir`
Data type: `String[1]`
@@ -65,7 +66,7 @@ Directory to install module into (Default: "/opt/puppetlabs/pe_databases")
Default value: `'/opt/puppetlabs/pe_databases'`
-##### `scripts_dir`
+##### `scripts_dir`
Data type: `String[1]`
@@ -73,63 +74,63 @@ Directory to install scripts into (Default: "${install_dir}/scripts")
Default value: `"${install_dir}/scripts"`
-##### `facts_tables_repack_timer`
+##### `facts_tables_repack_timer`
Data type: `String[1]`
The Systemd timer for the pg_repack job affecting the 'facts' tables
-Default value: `'Tue,Sat *-*-* 04:30:00'`
-
-##### `catalogs_tables_repack_timer`
+##### `catalogs_tables_repack_timer`
Data type: `String[1]`
The Systemd timer for the pg_repack job affecting the 'catalog' tables
-Default value: `'Sun,Thu *-*-* 04:30:00'`
-
-##### `other_tables_repack_timer`
+##### `other_tables_repack_timer`
Data type: `String[1]`
The Systemd timer for the pg_repack job affecting the 'other' tables
-Default value: `'*-*-20 05:30:00'`
+##### `activity_tables_repack_timer`
-##### `manage_postgresql_settings`
+Data type: `String[1]`
-Data type: `Optional[Boolean]`
+The Systemd timer for the pg_repack job affecting the 'activity' tables
+##### `manage_postgresql_settings`
+Data type: `Optional[Boolean]`
-Default value: ``undef``
+Deprecated Parameter will be removed in future releases
-##### `manage_table_settings`
+Default value: `undef`
-Data type: `Optional[Boolean]`
+##### `manage_table_settings`
+Data type: `Optional[Boolean]`
+Deprecated Parameter will be removed in future releases
-Default value: ``undef``
+Default value: `undef`
-##### `reports_tables_repack_timer`
+##### `reports_tables_repack_timer`
Data type: `Optional[String]`
+Deprecated Parameter will be removed in future releases
+Default value: `undef`
-Default value: ``undef``
-
-##### `resource_events_tables_repack_timer`
+##### `resource_events_tables_repack_timer`
Data type: `Optional[String]`
+Deprecated Parameter will be removed in future releases
+Default value: `undef`
-Default value: ``undef``
-
-### `pe_databases::pg_repack`
+### `pe_databases::pg_repack`
Maintenance pg_repack
@@ -137,32 +138,61 @@ Maintenance pg_repack
The following parameters are available in the `pe_databases::pg_repack` class:
-* [`disable_maintenance`](#disable_maintenance)
-* [`jobs`](#jobs)
-* [`facts_tables_repack_timer`](#facts_tables_repack_timer)
-* [`catalogs_tables_repack_timer`](#catalogs_tables_repack_timer)
-* [`other_tables_repack_timer`](#other_tables_repack_timer)
-* [`reports_tables_repack_timer`](#reports_tables_repack_timer)
-* [`resource_events_tables_repack_timer`](#resource_events_tables_repack_timer)
+* [`fact_tables`](#-pe_databases--pg_repack--fact_tables)
+* [`catalog_tables`](#-pe_databases--pg_repack--catalog_tables)
+* [`other_tables`](#-pe_databases--pg_repack--other_tables)
+* [`activity_tables`](#-pe_databases--pg_repack--activity_tables)
+* [`disable_maintenance`](#-pe_databases--pg_repack--disable_maintenance)
+* [`jobs`](#-pe_databases--pg_repack--jobs)
+* [`facts_tables_repack_timer`](#-pe_databases--pg_repack--facts_tables_repack_timer)
+* [`catalogs_tables_repack_timer`](#-pe_databases--pg_repack--catalogs_tables_repack_timer)
+* [`other_tables_repack_timer`](#-pe_databases--pg_repack--other_tables_repack_timer)
+* [`activity_tables_repack_timer`](#-pe_databases--pg_repack--activity_tables_repack_timer)
+* [`reports_tables_repack_timer`](#-pe_databases--pg_repack--reports_tables_repack_timer)
+* [`resource_events_tables_repack_timer`](#-pe_databases--pg_repack--resource_events_tables_repack_timer)
+
+##### `fact_tables`
+
+Data type: `Array`
+
+Array of 'fact' tables to repack
+
+##### `catalog_tables`
+
+Data type: `Array`
+
+Array of 'catalog' tables to repack
+
+##### `other_tables`
-##### `disable_maintenance`
+Data type: `Array`
+
+Array of 'other' tables to repack
+
+##### `activity_tables`
+
+Data type: `Array`
+
+Array of 'activity' tables to repack
+
+##### `disable_maintenance`
Data type: `Boolean`
true or false (Default: false)
Disable or enable maintenance mode
-Default value: ``false``
+Default value: `false`
-##### `jobs`
+##### `jobs`
Data type: `Integer`
How many jobs to run in parallel
-Default value: `/`
+Default value: `$facts['processors']['count'] / 4`
-##### `facts_tables_repack_timer`
+##### `facts_tables_repack_timer`
Data type: `String[1]`
@@ -170,7 +200,7 @@ The Systemd timer for the pg_repack job affecting the 'facts' tables
Default value: `$pe_databases::facts_tables_repack_timer`
-##### `catalogs_tables_repack_timer`
+##### `catalogs_tables_repack_timer`
Data type: `String[1]`
@@ -178,7 +208,7 @@ The Systemd timer for the pg_repack job affecting the 'catalog' tables
Default value: `$pe_databases::catalogs_tables_repack_timer`
-##### `other_tables_repack_timer`
+##### `other_tables_repack_timer`
Data type: `String[1]`
@@ -186,25 +216,33 @@ The Systemd timer for the pg_repack job affecting the 'other' tables
Default value: `$pe_databases::other_tables_repack_timer`
-##### `reports_tables_repack_timer`
-
-Data type: `Optional[String]`
+##### `activity_tables_repack_timer`
+Data type: `String[1]`
+The Systemd timer for the pg_repack job affecting the 'activity' tables
-Default value: ``undef``
+Default value: `$pe_databases::activity_tables_repack_timer`
-##### `resource_events_tables_repack_timer`
+##### `reports_tables_repack_timer`
Data type: `Optional[String]`
+Deprecated Parameter will be removed in future releases
+Default value: `undef`
-Default value: ``undef``
+##### `resource_events_tables_repack_timer`
+
+Data type: `Optional[String]`
+
+Deprecated Parameter will be removed in future releases
+
+Default value: `undef`
## Defined types
-### `pe_databases::collect`
+### `pe_databases::collect`
Create systemd units for repacking a given database type
@@ -212,12 +250,13 @@ Create systemd units for repacking a given database type
The following parameters are available in the `pe_databases::collect` defined type:
-* [`database_type`](#database_type)
-* [`command`](#command)
-* [`disable_maintenance`](#disable_maintenance)
-* [`on_cal`](#on_cal)
+* [`database_type`](#-pe_databases--collect--database_type)
+* [`command`](#-pe_databases--collect--command)
+* [`disable_maintenance`](#-pe_databases--collect--disable_maintenance)
+* [`on_cal`](#-pe_databases--collect--on_cal)
+* [`tables`](#-pe_databases--collect--tables)
-##### `database_type`
+##### `database_type`
Data type: `String`
@@ -225,29 +264,37 @@ The database to repack, uses titles from pg_repack.pp
Default value: `$title`
-##### `command`
+##### `command`
Data type: `String`
defined in pg_repack.pp
-Default value: ``undef``
+Default value: `undef`
-##### `disable_maintenance`
+##### `disable_maintenance`
Data type: `Boolean`
to disable maintenance mode (Default: false)
-Default value: ``false``
+Default value: `false`
-##### `on_cal`
+##### `on_cal`
Data type: `String`
values can be found in pg_repack.pp
-Default value: ``undef``
+Default value: `undef`
+
+##### `tables`
+
+Data type: `Array`
+
+Array of tables to repack
+
+Default value: `undef`
## Tasks
diff --git a/metadata.json b/metadata.json
index 4449f21..aa6b093 100644
--- a/metadata.json
+++ b/metadata.json
@@ -1,6 +1,6 @@
{
"name": "puppetlabs-pe_databases",
- "version": "3.0.0",
+ "version": "4.0.0",
"author": "puppetlabs",
"summary": "A Puppet Module for Maintaining Your Puppet Enterprise Databases",
"license": "Apache-2.0",