|
6 | 6 | # @param disable_maintenance [Boolean] true or false (Default: false) |
7 | 7 | # Disable or enable maintenance mode |
8 | 8 | # @param jobs [Integer] How many jobs to run in parallel |
| 9 | +# @param facts_tables_repack_timer [String] The Systemd timer for the pg_repack job affecting the 'facts' tables |
| 10 | +# @param catalogs_tables_repack_timer [String]The Systemd timer for the pg_repack job affecting the 'catalog' tables |
| 11 | +# @param other_tables_repack_timer [String] The Systemd timer for the pg_repack job affecting the 'other' tables |
| 12 | +# @param reports_tables_repack_timer [String] The Systemd timer for the pg_repack job affecting the 'reports' tables |
| 13 | +# @param resource_events_tables_repack_timer [String] The Systemd timer for the pg_repack job affecting the 'resource_events' tables |
9 | 14 | class pe_databases::pg_repack ( |
10 | | - Boolean $disable_maintenance = false, |
11 | | - Integer $jobs = $facts['processors']['count'] / 4 |
| 15 | + Boolean $disable_maintenance = false, |
| 16 | + Integer $jobs = $facts['processors']['count'] / 4, |
| 17 | + String[1] $facts_tables_repack_timer = $pe_databases::facts_tables_repack_timer, |
| 18 | + String[1] $catalogs_tables_repack_timer = $pe_databases::catalogs_tables_repack_timer, |
| 19 | + String[1] $other_tables_repack_timer = $pe_databases::other_tables_repack_timer, |
| 20 | + String[1] $reports_tables_repack_timer = $pe_databases::reports_tables_repack_timer, |
| 21 | + String[1] $resource_events_tables_repack_timer = $pe_databases::resource_events_tables_repack_timer, |
12 | 22 | ) { |
13 | 23 | # PE 2019.1 starting shipping versioned pe-postgres packages where all paths are versioned. |
14 | 24 | # So, prior to 2019.1 use a non-versioned path, and after use a versioned path. |
|
33 | 43 | pe_databases::collect { 'facts': |
34 | 44 | disable_maintenance => $disable_maintenance, |
35 | 45 | command => "${repack} ${repack_jobs} ${facts_tables}", |
36 | | - on_cal => 'Tue,Sat *-*-* 04:30:00', |
| 46 | + on_cal => $facts_tables_repack_timer, |
37 | 47 | } |
38 | 48 |
|
39 | 49 | pe_databases::collect { 'catalogs': |
40 | 50 | disable_maintenance => $disable_maintenance, |
41 | 51 | command => "${repack} ${repack_jobs} ${catalogs_tables}", |
42 | | - on_cal => 'Sun,Thu *-*-* 04:30:00', |
| 52 | + on_cal => $catalogs_tables_repack_timer, |
43 | 53 | } |
44 | 54 |
|
45 | 55 | pe_databases::collect { 'other': |
46 | 56 | disable_maintenance => $disable_maintenance, |
47 | 57 | command => "${repack} ${repack_jobs} ${other_tables}", |
48 | | - on_cal => '*-*-20 05:30:00', |
| 58 | + on_cal => $other_tables_repack_timer, |
49 | 59 | } |
50 | 60 |
|
51 | 61 | if versioncmp($facts['pe_server_version'], '2019.7.0') < 0 { |
52 | 62 | pe_databases::collect { 'reports': |
53 | 63 | disable_maintenance => $disable_maintenance, |
54 | 64 | command => "${repack} ${repack_jobs} ${reports_table}", |
55 | | - on_cal => '*-*-10 05:30:00', |
| 65 | + on_cal => $reports_tables_repack_timer, |
56 | 66 | } |
57 | 67 | } |
58 | 68 |
|
59 | 69 | if versioncmp($facts['pe_server_version'], '2019.3.0') < 0 { |
60 | 70 | pe_databases::collect { 'resource_events': |
61 | 71 | disable_maintenance => $disable_maintenance, |
62 | 72 | command => "${repack} ${repack_jobs} ${resource_events_table}", |
63 | | - on_cal => '*-*-15 05:30:00', |
| 73 | + on_cal => $resource_events_tables_repack_timer, |
64 | 74 | } |
65 | 75 | } |
66 | 76 |
|
|
0 commit comments