Skip to content

Commit c3c8780

Browse files
authored
Compatibility with PostgreSQL 18 beta1 (patroni#3394)
1. Update list of available GUCs 2. Update regexp in postmaster.py Close patroni#3390
1 parent 9552adc commit c3c8780

File tree

2 files changed

+109
-2
lines changed

2 files changed

+109
-2
lines changed

patroni/postgresql/available_parameters/0_postgres.yml

Lines changed: 107 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,11 @@ parameters:
121121
version_from: 130000
122122
min_val: -1
123123
max_val: 2147483647
124+
autovacuum_vacuum_max_threshold:
125+
- type: Integer
126+
version_from: 180000
127+
min_val: -1
128+
max_val: 2147483647
124129
autovacuum_vacuum_scale_factor:
125130
- type: Real
126131
version_from: 90300
@@ -137,6 +142,11 @@ parameters:
137142
min_val: -1
138143
max_val: 2147483647
139144
unit: kB
145+
autovacuum_worker_slots:
146+
- type: Integer
147+
version_from: 180000
148+
min_val: 1
149+
max_val: 262143
140150
backend_flush_after:
141151
- type: Integer
142152
version_from: 90600
@@ -434,6 +444,9 @@ parameters:
434444
enable_bitmapscan:
435445
- type: Bool
436446
version_from: 90300
447+
enable_distinct_reordering:
448+
- type: Bool
449+
version_from: 180000
437450
enable_gathermerge:
438451
- type: Bool
439452
version_from: 100000
@@ -485,6 +498,9 @@ parameters:
485498
enable_presorted_aggregate:
486499
- type: Bool
487500
version_from: 160000
501+
enable_self_join_elimination:
502+
- type: Bool
503+
version_from: 180000
488504
enable_seqscan:
489505
- type: Bool
490506
version_from: 90300
@@ -506,9 +522,13 @@ parameters:
506522
exit_on_error:
507523
- type: Bool
508524
version_from: 90300
525+
extension_control_path:
526+
- type: String
527+
version_from: 180000
509528
extension_destdir:
510529
- type: String
511530
version_from: 140000
531+
version_till: 180000
512532
external_pid_file:
513533
- type: String
514534
version_from: 90300
@@ -517,6 +537,12 @@ parameters:
517537
version_from: 90300
518538
min_val: -15
519539
max_val: 3
540+
file_copy_method:
541+
- type: Enum
542+
version_from: 180000
543+
possible_values:
544+
- copy
545+
- clone
520546
force_parallel_mode:
521547
- type: EnumBool
522548
version_from: 90600
@@ -629,6 +655,12 @@ parameters:
629655
min_val: 0
630656
max_val: 2147483647
631657
unit: ms
658+
idle_replication_slot_timeout:
659+
- type: Integer
660+
version_from: 180000
661+
min_val: 0
662+
max_val: 35791394
663+
unit: min
632664
idle_session_timeout:
633665
- type: Integer
634666
version_from: 140000
@@ -647,9 +679,38 @@ parameters:
647679
io_combine_limit:
648680
- type: Integer
649681
version_from: 170000
682+
version_till: 180000
650683
min_val: 1
651684
max_val: 32
652685
unit: 8kB
686+
- type: Integer
687+
version_from: 180000
688+
min_val: 1
689+
max_val: 128
690+
unit: 8kB
691+
io_max_combine_limit:
692+
- type: Integer
693+
version_from: 180000
694+
min_val: 1
695+
max_val: 128
696+
unit: 8kB
697+
io_max_concurrency:
698+
- type: Integer
699+
version_from: 180000
700+
min_val: -1
701+
max_val: 1024
702+
io_method:
703+
- type: Enum
704+
version_from: 180000
705+
possible_values:
706+
- sync
707+
- worker
708+
- io_uring
709+
io_workers:
710+
- type: Integer
711+
version_from: 180000
712+
min_val: 1
713+
max_val: 32
653714
IntervalStyle:
654715
- type: Enum
655716
version_from: 90300
@@ -748,6 +809,9 @@ parameters:
748809
log_connections:
749810
- type: Bool
750811
version_from: 90300
812+
version_till: 180000
813+
- type: String
814+
version_from: 180000
751815
log_destination:
752816
- type: String
753817
version_from: 90300
@@ -793,6 +857,9 @@ parameters:
793857
log_line_prefix:
794858
- type: String
795859
version_from: 90300
860+
log_lock_failure:
861+
- type: Bool
862+
version_from: 180000
796863
log_lock_waits:
797864
- type: Bool
798865
version_from: 90300
@@ -873,9 +940,15 @@ parameters:
873940
log_rotation_size:
874941
- type: Integer
875942
version_from: 90300
943+
version_till: 180000
876944
min_val: 0
877945
max_val: 2097151
878946
unit: kB
947+
- type: Integer
948+
version_from: 180000
949+
min_val: 0
950+
max_val: 2147483647
951+
unit: kB
879952
log_startup_progress_interval:
880953
- type: Integer
881954
version_from: 150000
@@ -930,9 +1003,20 @@ parameters:
9301003
maintenance_work_mem:
9311004
- type: Integer
9321005
version_from: 90300
1006+
version_till: 180000
9331007
min_val: 1024
9341008
max_val: 2147483647
9351009
unit: kB
1010+
- type: Integer
1011+
version_from: 180000
1012+
min_val: 64
1013+
max_val: 2147483647
1014+
unit: kB
1015+
max_active_replication_origins:
1016+
- type: Integer
1017+
version_from: 180000
1018+
min_val: 0
1019+
max_val: 262143
9361020
max_connections:
9371021
- type: Integer
9381022
version_from: 90300
@@ -1084,6 +1168,9 @@ parameters:
10841168
version_from: 90600
10851169
min_val: 0
10861170
max_val: 262143
1171+
md5_password_warnings:
1172+
- type: Bool
1173+
version_from: 180000
10871174
min_dynamic_shared_memory:
10881175
- type: Integer
10891176
version_from: 140000
@@ -1139,6 +1226,9 @@ parameters:
11391226
min_val: 16
11401227
max_val: 131072
11411228
unit: 8kB
1229+
oauth_validator_libraries:
1230+
- type: String
1231+
version_from: 180000
11421232
old_snapshot_threshold:
11431233
- type: Integer
11441234
version_from: 90600
@@ -1336,6 +1426,9 @@ parameters:
13361426
ssl_ecdh_curve:
13371427
- type: String
13381428
version_from: 90400
1429+
ssl_groups:
1430+
- type: String
1431+
version_from: 180000
13391432
ssl_key_file:
13401433
- type: String
13411434
version_from: 90300
@@ -1372,6 +1465,9 @@ parameters:
13721465
min_val: 0
13731466
max_val: 2147483647
13741467
unit: kB
1468+
ssl_tls13_ciphers:
1469+
- type: String
1470+
version_from: 180000
13751471
standard_conforming_strings:
13761472
- type: Bool
13771473
version_from: 90300
@@ -1547,6 +1643,9 @@ parameters:
15471643
track_commit_timestamp:
15481644
- type: Bool
15491645
version_from: 90500
1646+
track_cost_delay_timing:
1647+
- type: Bool
1648+
version_from: 180000
15501649
track_counts:
15511650
- type: Bool
15521651
version_from: 90300
@@ -1671,6 +1770,11 @@ parameters:
16711770
version_from: 90300
16721771
min_val: 0
16731772
max_val: 2000000000
1773+
vacuum_max_eager_freeze_failure_rate:
1774+
- type: Real
1775+
version_from: 180000
1776+
min_val: 0
1777+
max_val: 1
16741778
vacuum_multixact_failsafe_age:
16751779
- type: Integer
16761780
version_from: 140000
@@ -1686,6 +1790,9 @@ parameters:
16861790
version_from: 90300
16871791
min_val: 0
16881792
max_val: 2000000000
1793+
vacuum_truncate:
1794+
- type: Bool
1795+
version_from: 180000
16891796
wal_buffers:
16901797
- type: Integer
16911798
version_from: 90300

patroni/postgresql/postmaster.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -177,15 +177,15 @@ def pg_ctl_kill(self, mode: str, pg_ctl: str) -> Optional[bool]:
177177
return not self.is_running()
178178

179179
def wait_for_user_backends_to_close(self, stop_timeout: Optional[float]) -> None:
180-
# These regexps are cross checked against versions PostgreSQL 9.1 .. 17
180+
# These regexps are cross checked against versions PostgreSQL 9.1 .. 18
181181
aux_proc_re = re.compile("(?:postgres:)( .*:)? (?:(?:archiver|startup|autovacuum launcher|autovacuum worker|"
182182
"checkpointer|logger|stats collector|wal receiver|wal writer|writer)(?: process )?|"
183183
"walreceiver|wal sender process|walsender|walwriter|background writer|"
184184
"logical replication launcher|logical replication worker for subscription|"
185185
"logical replication tablesync worker for subscription|"
186186
"logical replication parallel apply worker for subscription|"
187187
"logical replication apply worker for subscription|"
188-
"slotsync worker|walsummarizer|bgworker:) ")
188+
"slotsync worker|walsummarizer|io worker|bgworker:) ")
189189

190190
try:
191191
children = self.children()

0 commit comments

Comments
 (0)