Repository: digitalocean/doctl
Pull request #1613 (2024-11-14 15:36:18)

Doctl Changes for MySQL Log Output and other missing configs
JIRA:
https://do-internal.atlassian.net/browse/DBAAS-5587


Patch:
diff --git a/commands/displayers/database.go b/commands/displayers/database.go
index 169d8a47..604e33a4 100644
--- a/commands/displayers/database.go
+++ b/commands/displayers/database.go
@@ -1191,6 +1191,48 @@ func (dc *MySQLConfiguration) KV() []map[string]any {
 			"value": *c.BinlogRetentionPeriod,
 		})
 	}
+	if c.InnodbChangeBufferMaxSize != nil {
+		o = append(o, map[string]any{
+			"key":   "InnodbChangeBufferMaxSize",
+			"value": *c.InnodbChangeBufferMaxSize,
+		})
+	}
+	if c.InnodbFlushNeighbors != nil {
+		o = append(o, map[string]any{
+			"key":   "InnodbFlushNeighbors",
+			"value": *c.InnodbFlushNeighbors,
+		})
+	}
+	if c.InnodbReadIoThreads != nil {
+		o = append(o, map[string]any{
+			"key":   "InnodbReadIoThreads",
+			"value": *c.InnodbReadIoThreads,
+		})
+	}
+	if c.InnodbThreadConcurrency != nil {
+		o = append(o, map[string]any{
+			"key":   "InnodbThreadConcurrency",
+			"value": *c.InnodbThreadConcurrency,
+		})
+	}
+	if c.InnodbWriteIoThreads != nil {
+		o = append(o, map[string]any{
+			"key":   "InnodbWriteIoThreads",
+			"value": *c.InnodbWriteIoThreads,
+		})
+	}
+	if c.NetBufferLength != nil {
+		o = append(o, map[string]any{
+			"key":   "NetBufferLength",
+			"value": *c.NetBufferLength,
+		})
+	}
+	if c.LogOutput != nil {
+		o = append(o, map[string]any{
+			"key":   "LogOutput",
+			"value": *c.LogOutput,
+		})
+	}
 
 	return o
 }
@@ -1578,6 +1620,26 @@ func (dc *PostgreSQLConfiguration) KV() []map[string]any {
 			"value": *c.TimeScaleDB.MaxBackgroundWorkers,
 		})
 	}
+
+	if c.SynchronousReplication != nil {
+		o = append(o, map[string]any{
+			"key":   "SynchronousReplication",
+			"value": *c.SynchronousReplication,
+		})
+	}
+	if c.StatMonitorEnable != nil {
+		o = append(o, map[string]any{
+			"key":   "StatMonitorEnable",
+			"value": *c.StatMonitorEnable,
+		})
+	}
+	if c.MaxFailoverReplicationTimeLag != nil {
+		o = append(o, map[string]any{
+			"key":   "MaxFailoverReplicationTimeLag",
+			"value": *c.MaxFailoverReplicationTimeLag,
+		})
+	}
+
 	return o
 }
 
diff --git a/go.mod b/go.mod
index 78549b1f..324d29da 100644
--- a/go.mod
+++ b/go.mod
@@ -5,7 +5,7 @@ go 1.22
 require (
 	github.com/blang/semver v3.5.1+incompatible
 	github.com/creack/pty v1.1.21
-	github.com/digitalocean/godo v1.129.1-0.20241113153826-8f5ac1bc9671
+	github.com/digitalocean/godo v1.130.0
 	github.com/docker/cli v24.0.5+incompatible
 	github.com/docker/docker v25.0.6+incompatible
 	github.com/docker/docker-credential-helpers v0.7.0 // indirect
@@ -30,7 +30,7 @@ require (
 	github.com/stretchr/testify v1.8.4
 	golang.org/x/crypto v0.22.0
 	golang.org/x/net v0.24.0 // indirect
-	golang.org/x/oauth2 v0.23.0
+	golang.org/x/oauth2 v0.24.0
 	golang.org/x/sys v0.25.0
 	gopkg.in/yaml.v2 v2.4.0
 	k8s.io/api v0.26.2
@@ -122,7 +122,7 @@ require (
 	go.opentelemetry.io/otel/trace v1.19.0 // indirect
 	golang.org/x/mod v0.11.0 // indirect
 	golang.org/x/text v0.14.0 // indirect
-	golang.org/x/time v0.6.0 // indirect
+	golang.org/x/time v0.8.0 // indirect
 	golang.org/x/tools v0.10.0 // indirect
 	google.golang.org/protobuf v1.33.0 // indirect
 	gopkg.in/inf.v0 v0.9.1 // indirect
diff --git a/go.sum b/go.sum
index f688b8dc..ad87a391 100644
--- a/go.sum
+++ b/go.sum
@@ -91,8 +91,8 @@ github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSs
 github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
 github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM=
 github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
-github.com/digitalocean/godo v1.129.1-0.20241113153826-8f5ac1bc9671 h1:ZWx8CdoEZ0ZM9jy+hUOVL6OZJtm9Nb6rBCVhF2sokog=
-github.com/digitalocean/godo v1.129.1-0.20241113153826-8f5ac1bc9671/go.mod h1:PU8JB6I1XYkQIdHFop8lLAY9ojp6M0XcU0TWaQSxbrc=
+github.com/digitalocean/godo v1.130.0 h1:DbJg0wvBxTkYjY5Q9S1mwzAZLd5Wht3r57yFH4yeMCk=
+github.com/digitalocean/godo v1.130.0/go.mod h1:PU8JB6I1XYkQIdHFop8lLAY9ojp6M0XcU0TWaQSxbrc=
 github.com/distribution/reference v0.6.0 h1:0IXCQ5g4/QMHHkarYzh5l+u8T3t73zM5QvfrDyIgxBk=
 github.com/distribution/reference v0.6.0/go.mod h1:BbU0aIcezP1/5jX/8MP0YiH4SdvB5Y4f/wlDRiLyi3E=
 github.com/docker/cli v24.0.5+incompatible h1:WeBimjvS0eKdH4Ygx+ihVq1Q++xg36M/rMi4aXAvodc=
@@ -517,8 +517,8 @@ golang.org/x/oauth2 v0.0.0-20200902213428-5d25da1a8d43/go.mod h1:KelEdhl1UZF7XfJ
 golang.org/x/oauth2 v0.0.0-20201109201403-9fd604954f58/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=
 golang.org/x/oauth2 v0.0.0-20201208152858-08078c50e5b5/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=
 golang.org/x/oauth2 v0.0.0-20210218202405-ba52d332ba99/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A=
-golang.org/x/oauth2 v0.23.0 h1:PbgcYx2W7i4LvjJWEbf0ngHV6qJYr86PkAV3bXdLEbs=
-golang.org/x/oauth2 v0.23.0/go.mod h1:XYTD2NtWslqkgxebSiOHnXEap4TF09sJSc7H1sXbhtI=
+golang.org/x/oauth2 v0.24.0 h1:KTBBxWqUa0ykRPLtV69rRto9TLXcqYkeswu48x/gvNE=
+golang.org/x/oauth2 v0.24.0/go.mod h1:XYTD2NtWslqkgxebSiOHnXEap4TF09sJSc7H1sXbhtI=
 golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
 golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
 golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
@@ -599,8 +599,8 @@ golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU=
 golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
 golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
 golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
-golang.org/x/time v0.6.0 h1:eTDhh4ZXt5Qf0augr54TN6suAUudPcawVZeIAPU7D4U=
-golang.org/x/time v0.6.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM=
+golang.org/x/time v0.8.0 h1:9i3RxcPv3PZnitoVGMPDKZSq1xW1gK1Xy3ArNOGZfEg=
+golang.org/x/time v0.8.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM=
 golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
 golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
 golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY=
diff --git a/vendor/github.com/digitalocean/godo/CHANGELOG.md b/vendor/github.com/digitalocean/godo/CHANGELOG.md
index 735ab4ff..68e7d48f 100644
--- a/vendor/github.com/digitalocean/godo/CHANGELOG.md
+++ b/vendor/github.com/digitalocean/godo/CHANGELOG.md
@@ -1,5 +1,10 @@
 # Change Log
 
+## [v1.130.0] - 2024-11-14
+
+- #755 - @vsharma6855  - Add Missing Database Configs for Postgresql and MYSQL
+- #754 - @blesswinsamuel - APPS-9858 Add method to obtain websocket URL to get console access into components
+
 ## [v1.129.0] - 2024-11-06
 
 - #752 - @andrewsomething - Support maps in Stringify
diff --git a/vendor/github.com/digitalocean/godo/godo.go b/vendor/github.com/digitalocean/godo/godo.go
index a399bc3e..4b9ad6b6 100644
--- a/vendor/github.com/digitalocean/godo/godo.go
+++ b/vendor/github.com/digitalocean/godo/godo.go
@@ -21,7 +21,7 @@ import (
 )
 
 const (
-	libraryVersion = "1.129.0"
+	libraryVersion = "1.130.0"
 	defaultBaseURL = "https://api.digitalocean.com/"
 	userAgent      = "godo/" + libraryVersion
 	mediaType      = "application/json"
diff --git a/vendor/golang.org/x/oauth2/README.md b/vendor/golang.org/x/oauth2/README.md
index 781770c2..48dbb9d8 100644
--- a/vendor/golang.org/x/oauth2/README.md
+++ b/vendor/golang.org/x/oauth2/README.md
@@ -5,15 +5,6 @@
 
 oauth2 package contains a client implementation for OAuth 2.0 spec.
 
-## Installation
-
-~~~~
-go get golang.org/x/oauth2
-~~~~
-
-Or you can manually git clone the repository to
-`$(go env GOPATH)/src/golang.org/x/oauth2`.
-
 See pkg.go.dev for further documentation and examples.
 
 * [pkg.go.dev/golang.org/x/oauth2](https://pkg.go.dev/golang.org/x/oauth2)
@@ -33,7 +24,11 @@ The main issue tracker for the oauth2 repository is located at
 https://github.com/golang/oauth2/issues.
 
 This repository uses Gerrit for code changes. To learn how to submit changes to
-this repository, see https://golang.org/doc/contribute.html. In particular:
+this repository, see https://go.dev/doc/contribute.
+
+The git repository is https://go.googlesource.com/oauth2.
+
+Note:
 
 * Excluding trivial changes, all contributions should be connected to an existing issue.
 * API changes must go through the [change proposal process](https://go.dev/s/proposal-process) before they can be accepted.
diff --git a/vendor/golang.org/x/time/rate/rate.go b/vendor/golang.org/x/time/rate/rate.go
index 8f6c7f49..93a798ab 100644
--- a/vendor/golang.org/x/time/rate/rate.go
+++ b/vendor/golang.org/x/time/rate/rate.go
@@ -99,8 +99,9 @@ func (lim *Limiter) Tokens() float64 {
 // bursts of at most b tokens.
 func NewLimiter(r Limit, b int) *Limiter {
 	return &Limiter{
-		limit: r,
-		burst: b,
+		limit:  r,
+		burst:  b,
+		tokens: float64(b),
 	}
 }
 
@@ -344,18 +345,6 @@ func (lim *Limiter) reserveN(t time.Time, n int, maxFutureReserve time.Duration)
 			tokens:    n,
 			timeToAct: t,
 		}
-	} else if lim.limit == 0 {
-		var ok bool
-		if lim.burst >= n {
-			ok = true
-			lim.burst -= n
-		}
-		return Reservation{
-			ok:        ok,
-			lim:       lim,
-			tokens:    lim.burst,
-			timeToAct: t,
-		}
 	}
 
 	t, tokens := lim.advance(t)
diff --git a/vendor/modules.txt b/vendor/modules.txt
index 20b23e3b..73832a0d 100644
--- a/vendor/modules.txt
+++ b/vendor/modules.txt
@@ -61,7 +61,7 @@ github.com/creack/pty
 # github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc
 ## explicit
 github.com/davecgh/go-spew/spew
-# github.com/digitalocean/godo v1.129.1-0.20241113153826-8f5ac1bc9671
+# github.com/digitalocean/godo v1.130.0
 ## explicit; go 1.22
 github.com/digitalocean/godo
 github.com/digitalocean/godo/metrics
@@ -439,7 +439,7 @@ golang.org/x/net/http2/hpack
 golang.org/x/net/idna
 golang.org/x/net/internal/socks
 golang.org/x/net/proxy
-# golang.org/x/oauth2 v0.23.0
+# golang.org/x/oauth2 v0.24.0
 ## explicit; go 1.18
 golang.org/x/oauth2
 golang.org/x/oauth2/internal
@@ -462,7 +462,7 @@ golang.org/x/text/secure/bidirule
 golang.org/x/text/transform
 golang.org/x/text/unicode/bidi
 golang.org/x/text/unicode/norm
-# golang.org/x/time v0.6.0
+# golang.org/x/time v0.8.0
 ## explicit; go 1.18
 golang.org/x/time/rate
 # golang.org/x/tools v0.10.0


Test patch:
diff --git a/integration/database_config_get_test.go b/integration/database_config_get_test.go
index 75e2c42a..71d18f33 100644
--- a/integration/database_config_get_test.go
+++ b/integration/database_config_get_test.go
@@ -177,30 +177,46 @@ SlowQueryLog                   false
 LongQueryTime                  10
 BackupHour                     18
 BackupMinute                   3
+BinlogRetentionPeriod          600
+InnodbChangeBufferMaxSize      25
+InnodbFlushNeighbors           0
+InnodbReadIoThreads            16
+InnodbThreadConcurrency        1000
+InnodbWriteIoThreads           16
+NetBufferLength                4096
+LogOutput                      NONE
 `
 
 	databaseConfigMySQLGetResponse = `
 {
-	"config": {
-		"default_time_zone": "UTC",
-		"max_allowed_packet": 67108864,
-		"sql_mode": "ANSI,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,STRICT_ALL_TABLES",
-		"sql_require_primary_key": true,
-		"innodb_change_buffer_max_size": 25,
-		"innodb_flush_neighbors": 1,
-		"innodb_ft_min_token_size": 3,
-		"innodb_ft_server_stopword_table": "",
-		"innodb_print_all_deadlocks": false,
-		"innodb_read_io_threads": 4,
-		"innodb_rollback_on_timeout": false,
-		"innodb_thread_concurrency": 0,
-		"innodb_write_io_threads": 4,
-		"net_buffer_length": 16384,
-		"slow_query_log": false,
-		"long_query_time": 10,
-		"backup_hour": 18,
-		"backup_minute": 3
-	}
+    "config": {
+        "default_time_zone": "UTC",
+        "max_allowed_packet": 67108864,
+        "sql_mode": "ANSI,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,STRICT_ALL_TABLES",
+        "sql_require_primary_key": true,
+        "innodb_change_buffer_max_size": 25,
+        "innodb_flush_neighbors": 1,
+        "innodb_ft_min_token_size": 3,
+        "innodb_ft_server_stopword_table": "",
+        "innodb_print_all_deadlocks": false,
+        "innodb_read_io_threads": 4,
+        "innodb_rollback_on_timeout": false,
+        "innodb_thread_concurrency": 0,
+        "innodb_write_io_threads": 4,
+        "net_buffer_length": 16384,
+        "slow_query_log": false,
+        "long_query_time": 10,
+        "backup_hour": 18,
+        "backup_minute": 3,
+        "binlog_retention_period": 600,
+        "innodb_change_buffer_max_size": 25,
+        "innodb_flush_neighbors": 0,
+        "innodb_read_io_threads": 16,
+        "innodb_thread_concurrency": 1000,
+        "innodb_write_io_threads": 16,
+        "net_buffer_length": 4096,
+        "log_output": "NONE"
+    }
 }`
 
 	databaseConfigPGGetOutput = `
@@ -231,42 +247,49 @@ PgBouncer.AutodbPoolSize            0
 PgBouncer.AutodbMaxDbConnections    0
 PgBouncer.AutodbIdleTimeout         0
 BackupHour                          18
-BackupMinute                        26`
+BackupMinute                        26
+WorkMem                             4
+SynchronousReplication              off
+StatMonitorEnable                   false
+MaxFailoverReplicationTimeLag       12`
 
 	databaseConfigPGGetResponse = `{
-"config": {
-	"autovacuum_naptime": 60,
-	"autovacuum_vacuum_threshold": 50,
-	"autovacuum_analyze_threshold": 50,
-	"autovacuum_vacuum_scale_factor": 0.2,
-	"autovacuum_analyze_scale_factor": 0.2,
-	"autovacuum_vacuum_cost_delay": 20,
-	"autovacuum_vacuum_cost_limit": -1,
-	"bgwriter_flush_after": 512,
-	"bgwriter_lru_maxpages": 100,
-	"bgwriter_lru_multiplier": 2,
-	"idle_in_transaction_session_timeout": 0,
-	"jit": true,
-	"log_autovacuum_min_duration": -1,
-	"log_min_duration_statement": -1,
-	"max_prepared_transactions": 0,
-	"max_parallel_workers": 8,
-	"max_parallel_workers_per_gather": 2,
-	"temp_file_limit": -1,
-	"wal_sender_timeout": 60000,
-	"pgbouncer": {
-	"server_reset_query_always": false,
-	"min_pool_size": 0,
-	"server_idle_timeout": 0,
-	"autodb_pool_size": 0,
-	"autodb_max_db_connections": 0,
-	"autodb_idle_timeout": 0
-	},
-	"backup_hour": 18,
-	"backup_minute": 26,
-	"timescaledb": {},
-	"stat_monitor_enable": false
-}
+    "config": {
+        "autovacuum_naptime": 60,
+        "autovacuum_vacuum_threshold": 50,
+        "autovacuum_analyze_threshold": 50,
+        "autovacuum_vacuum_scale_factor": 0.2,
+        "autovacuum_analyze_scale_factor": 0.2,
+        "autovacuum_vacuum_cost_delay": 20,
+        "autovacuum_vacuum_cost_limit": -1,
+        "bgwriter_flush_after": 512,
+        "bgwriter_lru_maxpages": 100,
+        "bgwriter_lru_multiplier": 2,
+        "idle_in_transaction_session_timeout": 0,
+        "jit": true,
+        "log_autovacuum_min_duration": -1,
+        "log_min_duration_statement": -1,
+        "max_prepared_transactions": 0,
+        "max_parallel_workers": 8,
+        "max_parallel_workers_per_gather": 2,
+        "temp_file_limit": -1,
+        "wal_sender_timeout": 60000,
+        "pgbouncer": {
+            "server_reset_query_always": false,
+            "min_pool_size": 0,
+            "server_idle_timeout": 0,
+            "autodb_pool_size": 0,
+            "autodb_max_db_connections": 0,
+            "autodb_idle_timeout": 0
+        },
+        "backup_hour": 18,
+        "backup_minute": 26,
+        "timescaledb": {},
+        "stat_monitor_enable": false,
+        "work_mem": 4,
+        "synchronous_replication": "off",
+        "max_failover_replication_time_lag": 12
+    }
 }`
 
 	databaseConfigRedisGetOutput = `
@@ -282,89 +305,89 @@ RedisACLChannelsDefault      allchannels
 `
 
 	databaseConfigRedisGetResponse = `{
-	"config": {
-	  "redis_maxmemory_policy": "volatile-lru",
-	  "redis_lfu_log_factor": 10,
-	  "redis_lfu_decay_time": 1,
-	  "redis_ssl": true,
-	  "redis_timeout": 600,
-	  "redis_notify_keyspace_events": "",
-	  "redis_persistence": "rdb",
-	  "redis_acl_channels_default": "allchannels"
-	}
-  }`
+    "config": {
+        "redis_maxmemory_policy": "volatile-lru",
+        "redis_lfu_log_factor": 10,
+        "redis_lfu_decay_time": 1,
+        "redis_ssl": true,
+        "redis_timeout": 600,
+        "redis_notify_keyspace_events": "",
+        "redis_persistence": "rdb",
+        "redis_acl_channels_default": "allchannels"
+    }
+}`
 
 	databaseConfigMongoDBGetResponse = `{
-	"config": {
-	  "default_read_concern": "local",
-	  "default_write_concern": "majority",
-	  "slow_op_threshold_ms": 100,
-	  "transaction_lifetime_limit_seconds": 60,
-	  "verbosity": 1
-	}
-  }`
+    "config": {
+        "default_read_concern": "local",
+        "default_write_concern": "majority",
+        "slow_op_threshold_ms": 100,
+        "transaction_lifetime_limit_seconds": 60,
+        "verbosity": 1
+    }
+}`
 
 	databaseConfigKafkaGetResponse = `{
-	"config": {
-	  "group_initial_rebalance_delay_ms": 3000,
-	  "group_min_session_timeout_ms": 6000,
-	  "group_max_session_timeout_ms": 1800000,
-	  "message_max_bytes": 1048588,
-	  "log_cleaner_delete_retention_ms": 86400000,
-	  "log_cleaner_min_compaction_lag_ms": 0,
-	  "log_flush_interval_ms": 9223372036854776000,
-	  "log_index_interval_bytes": 4096,
-	  "log_message_downconversion_enable": true,
-	  "log_message_timestamp_difference_max_ms": 9223372036854776000,
-	  "log_preallocate": false,
-	  "log_retention_bytes": -1,
-	  "log_retention_hours": 168,
-	  "log_retention_ms": 604800000,
-	  "log_roll_jitter_ms": 0,
-	  "log_segment_delete_delay_ms": 60000,
-	  "auto_create_topics_enable": true
-	}
-  }`
+    "config": {
+        "group_initial_rebalance_delay_ms": 3000,
+        "group_min_session_timeout_ms": 6000,
+        "group_max_session_timeout_ms": 1800000,
+        "message_max_bytes": 1048588,
+        "log_cleaner_delete_retention_ms": 86400000,
+        "log_cleaner_min_compaction_lag_ms": 0,
+        "log_flush_interval_ms": 9223372036854776000,
+        "log_index_interval_bytes": 4096,
+        "log_message_downconversion_enable": true,
+        "log_message_timestamp_difference_max_ms": 9223372036854776000,
+        "log_preallocate": false,
+        "log_retention_bytes": -1,
+        "log_retention_hours": 168,
+        "log_retention_ms": 604800000,
+        "log_roll_jitter_ms": 0,
+        "log_segment_delete_delay_ms": 60000,
+        "auto_create_topics_enable": true
+    }
+}`
 
 	databaseConfigOpensearchGetResponse = `{
-	"config": {
-	  "ism_enabled": true,
-	  "ism_history_enabled": true,
-	  "ism_history_max_age_hours": 24,
-	  "ism_history_max_docs": 2500000,
-	  "ism_history_rollover_check_period_hours": 8,
-	  "ism_history_rollover_retention_period_days": 30,
-	  "http_max_content_length_bytes": 100000000,
-	  "http_max_header_size_bytes": 8192,
-	  "http_max_initial_line_length_bytes": 4096,
-	  "indices_query_bool_max_clause_count": 1024,
-	  "search_max_buckets": 10000,
-	  "indices_fielddata_cache_size_percentage": 0,
-	  "indices_memory_index_buffer_size_percentage": 10,
-	  "indices_memory_min_index_buffer_size_mb": 48,
-	  "indices_memory_max_index_buffer_size_mb": 0,
-	  "indices_queries_cache_size_percentage": 10,
-	  "indices_recovery_max_mb_per_sec": 40,
-	  "indices_recovery_max_concurrent_file_chunks": 2,
-	  "action_auto_create_index_enabled": true,
-	  "action_destructive_requires_name": false,
-	  "plugins_alerting_filter_by_backend_roles_enabled": false,
-	  "enable_security_audit": false,
-	  "thread_pool_search_size": 0,
-	  "thread_pool_search_throttled_size": 0,
-	  "thread_pool_search_throttled_queue_size": 0,
-	  "thread_pool_search_queue_size": 0,
-	  "thread_pool_get_size": 0,
-	  "thread_pool_get_queue_size": 0,
-	  "thread_pool_analyze_size": 0,
-	  "thread_pool_analyze_queue_size": 0,
-	  "thread_pool_write_size": 0,
-	  "thread_pool_write_queue_size": 0,
-	  "thread_pool_force_merge_size": 0,
-	  "override_main_response_version": false,
-	  "script_max_compilations_rate": "use-context",
-	  "cluster_max_shards_per_node": 0,
-	  "cluster_routing_allocation_node_concurrent_recoveries": 2
-	}
-  }`
+    "config": {
+        "ism_enabled": true,
+        "ism_history_enabled": true,
+        "ism_history_max_age_hours": 24,
+        "ism_history_max_docs": 2500000,
+        "ism_history_rollover_check_period_hours": 8,
+        "ism_history_rollover_retention_period_days": 30,
+        "http_max_content_length_bytes": 100000000,
+        "http_max_header_size_bytes": 8192,
+        "http_max_initial_line_length_bytes": 4096,
+        "indices_query_bool_max_clause_count": 1024,
+        "search_max_buckets": 10000,
+        "indices_fielddata_cache_size_percentage": 0,
+        "indices_memory_index_buffer_size_percentage": 10,
+        "indices_memory_min_index_buffer_size_mb": 48,
+        "indices_memory_max_index_buffer_size_mb": 0,
+        "indices_queries_cache_size_percentage": 10,
+        "indices_recovery_max_mb_per_sec": 40,
+        "indices_recovery_max_concurrent_file_chunks": 2,
+        "action_auto_create_index_enabled": true,
+        "action_destructive_requires_name": false,
+        "plugins_alerting_filter_by_backend_roles_enabled": false,
+        "enable_security_audit": false,
+        "thread_pool_search_size": 0,
+        "thread_pool_search_throttled_size": 0,
+        "thread_pool_search_throttled_queue_size": 0,
+        "thread_pool_search_queue_size": 0,
+        "thread_pool_get_size": 0,
+        "thread_pool_get_queue_size": 0,
+        "thread_pool_analyze_size": 0,
+        "thread_pool_analyze_queue_size": 0,
+        "thread_pool_write_size": 0,
+        "thread_pool_write_queue_size": 0,
+        "thread_pool_force_merge_size": 0,
+        "override_main_response_version": false,
+        "script_max_compilations_rate": "use-context",
+        "cluster_max_shards_per_node": 0,
+        "cluster_routing_allocation_node_concurrent_recoveries": 2
+    }
+}`
 )