Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-22570

Split wsrep_provider_options in several options

    XMLWordPrintable

Details

    Description

      In some cases length 2048 for wsrep_provider_options are not sufficient and the string will be truncated in show variables output and information_schema.system_variables

      set global wsrep_provider_options = "base_dir = /opt/mysql/data/; base_host = 192.168.0.1; base_port = 3607; cert.log_conflicts = no; cert.optimistic_pa = yes; debug = no; evs.auto_evict = 0; evs.causal_keepalive_period = PT1S; evs.debug_log_mask = 0x1; evs.delay_margin = PT1S; evs.delayed_keep_period = PT30S; evs.inactive_check_period = PT0.5S; evs.inactive_timeout = PT15S; evs.info_log_mask = 0; evs.install_timeout = PT7.5S; evs.join_retrans_period = PT1S; evs.keepalive_period = PT1S; evs.max_install_timeouts = 3; evs.send_window = 4; evs.stats_report_period = PT1M; evs.suspect_timeout = PT5S; evs.use_aggregate = true; evs.user_send_window = 2; evs.version = 1; evs.view_forget_timeout = P1D; gcache.dir = /opt/mysql/data/; gcache.keep_pages_size = 0; gcache.keep_plaintext_size = 128M; gcache.mem_size = 0; gcache.name = galera.cache; gcache.page_size = 128M; gcache.recover = yes; gcache.size = 128M; gcomm.thread_prio = ; gcs.fc_debug = 0; gcs.fc_factor = 1.0; gcs.fc_limit = 16; gcs.fc_master_slave = no; gcs.max_packet_size = 64500; gcs.max_throttle = 0.25; gcs.recv_q_hard_limit = 9223372036854775807; gcs.recv_q_soft_limit = 0.25; gcs.sync_donor = no; gmcast.listen_addr = ssl://0.0.0.0:3607; gmcast.mcast_addr = ; gmcast.mcast_ttl = 1; gmcast.peer_timeout = PT3S; gmcast.segment = 1; gmcast.time_wait = PT5S; gmcast.version = 0; ist.recv_addr = 192.168.0.1; pc.announce_timeout = PT3S; pc.checksum = false; pc.ignore_quorum = false; pc.ignore_sb = false; pc.linger = PT20S; pc.npvo = false; pc.recovery = true; pc.version = 0; pc.wait_prim = true; pc.wait_prim_timeout = PT30S; pc.weight = 4; protonet.backend = asio; protonet.version = 0; repl.causal_read_timeout = PT30S; repl.commit_order = 3; repl.key_format = FLAT8; repl.max_ws_size = 2147483647; repl.proto_max = 10; socket.checksum = 2; socket.recv_buf_size = auto; socket.send_buf_size = auto; socket.ssl = YES; socket.ssl_ca = /etc/my.cnf.d/pki/ca-cert.pem; socket.ssl_cert = /etc/my.cnf.d/pki/aevcitdat010-cert.pem; socket.ssl_cipher = ; socket.ssl_compression = YES; ";
       
      set global wsrep_provider_options = "socket.ssl_key = /etc/mysql/ssl/server-key";
       
      
      

      UPDATE:
      As it is anyhow not optimal to use a system variable for a long list of options it would be better to separate the different options. The list of new option can become quite long, they therefore should be added when the galera library is loaded. This comment is explaining a possible solution.

      UPDATE after issue was closed:
      The new option

      plugin-wsrep-provider=ON
      

      is required to enable this new behavior to split the Galera Cluster system variable wsrep_provider_options into separate Galera Cluster system variables, instead of managing them in one large string.

      With

      plugin-wsrep-provider=OFF
      

      the old behavior is used, with the given limitation of the max length a system variable can have.

      The default is

      plugin-wsrep-provider=ON
      

      Attachments

        Issue Links

          Activity

            People

              sysprg Julius Goryavsky
              Richard Richard Stracke
              Votes:
              0 Vote for this issue
              Watchers:
              14 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Git Integration

                  Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.