github.com/1aal/kubeblocks@v0.0.0-20231107070852-e1c03e598921/deploy/apecloud-mysql/config/mysql-scale-vtgate-config-constraint.cue (about) 1 //Copyright (C) 2022-2023 ApeCloud Co., Ltd 2 // 3 //This file is part of KubeBlocks project 4 // 5 //This program is free software: you can redistribute it and/or modify 6 //it under the terms of the GNU Affero General Public License as published by 7 //the Free Software Foundation, either version 3 of the License, or 8 //(at your option) any later version. 9 // 10 //This program is distributed in the hope that it will be useful 11 //but WITHOUT ANY WARRANTY; without even the implied warranty of 12 //MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 //GNU Affero General Public License for more details. 14 // 15 //You should have received a copy of the GNU Affero General Public License 16 //along with this program. If not, see <http://www.gnu.org/licenses/>. 17 18 #VtGateParameter: { 19 20 // Stop buffering completely if a failover takes longer than this duration. (default 20s) 21 buffer_max_failover_duration: =~"[-+]?([0-9]*(\\.[0-9]*)?[a-z]+)+$" 22 23 // Minimum time between the end of a failover and the start of the next one (tracked per shard). Faster consecutive failovers will not trigger buffering. (default 1m0s) 24 buffer_min_time_between_failovers: =~"[-+]?([0-9]*(\\.[0-9]*)?[a-z]+)+$" 25 26 // Maximum number of buffered requests in flight (across all ongoing failovers). (default 10000) 27 buffer_size: int & >=1 28 29 // Duration for how long a request should be buffered at most. (default 10s) 30 buffer_window: =~"[-+]?([0-9]*(\\.[0-9]*)?[a-z]+)+$" 31 32 // Enable buffering (stalling) of primary traffic during failovers. (default false) 33 enable_buffer: bool 34 35 // Enable or disable logs. (default true) 36 enable_logs: bool 37 38 // Enable or disable query log. (default true) 39 enable_query_log: bool 40 41 // At startup, the tabletGateway will wait up to this duration to get at least one tablet per keyspace/shard/tablet type. (default 30s) 42 gateway_initial_tablet_timeout: =~"[-+]?([0-9]*(\\.[0-9]*)?[a-z]+)+$" 43 44 // After a duration of this time, if the client doesn't see any activity, it pings the server to see if the transport is still alive. (default 10s) 45 grpc_keepalive_time: =~"[-+]?([0-9]*(\\.[0-9]*)?[a-z]+)+$" 46 47 // After having pinged for keepalive check, the client waits for a duration of Timeout and if no activity is seen even after that the connection is closed. (default 10s) 48 grpc_keepalive_timeout: =~"[-+]?([0-9]*(\\.[0-9]*)?[a-z]+)+$" 49 50 // The health check timeout period. (default 2s) 51 healthcheck_timeout: =~"[-+]?([0-9]*(\\.[0-9]*)?[a-z]+)+$" 52 53 // Read After Write Consistency Level. Valid values are: EVENTUAL, SESSION, INSTANCE, GLOBAL. (default EVENTUAL) 54 read_after_write_consistency: string & "EVENTUAL" | "SESSION" | "INSTANCE" | "GLOBAL" 55 56 // The default timeout for read after write. (default 30.0) 57 read_after_write_timeout: number & >=0 58 59 // Enable read write splitting. Valid values are: disable, random, least_global_qps, least_qps, least_rt, least_behind_primary. (default disable) 60 read_write_splitting_policy: string & "disable" | "random" | "least_global_qps" | "least_qps" | "least_rt" | "least_behind_primary" 61 62 // Read write splitting ratio. (default 100) 63 read_write_splitting_ratio: int & (>=0 & <=100) 64 65 // Topo server timeout. (default 1s) 66 srv_topo_timeout: =~"[-+]?([0-9]*(\\.[0-9]*)?[a-z]+)+$" 67 68 // Tablet refresh interval. (default 1m0s) 69 tablet_refresh_interval: =~"[-+]?([0-9]*(\\.[0-9]*)?[a-z]+)+$" 70 71 //Which auth server implementation to use. Options: none, static, mysqlbased. (default "none") 72 mysql_auth_server_impl: string & "none" | "static" | "mysqlbased" 73 74 //JSON File to read the users/passwords from, need set mysql_auth_server_impl to static. 75 mysql_auth_server_static_file: string 76 77 //Path to ssl key for mysql server plugin SSL 78 mysql_server_ssl_key: string 79 80 //Path to the ssl cert for mysql server plugin SSL 81 mysql_server_ssl_cert: string 82 83 //Reject insecure connections but only if mysql_server_ssl_cert and mysql_server_ssl_key are provided.(default "false") 84 mysql_server_require_secure_transport: bool 85 86 ... 87 } 88 89 // SectionName is section name 90 [SectionName=_]: #VtGateParameter