matrix-docker-ansible-deploy icon indicating copy to clipboard operation
matrix-docker-ansible-deploy copied to clipboard

Investigate enabling synapse_auto_compressor from rust-synapse-compress-state

Open skepticalwaves opened this issue 3 years ago • 3 comments

Describe the solution you'd like From the authors of rust-synapse-compress-state, a new incremental synapse_auto_compressor is available to periodically run and clean up things, instead of a single massive analysis and compression.

I think its already in the docker image for rust-synapse-compress-state

skepticalwaves avatar Jun 18 '22 03:06 skepticalwaves

Taking a look at the existing command, something like this

    matrix_synapse_rust_synapse_auto_compress_state_command: >-
      {{ matrix_host_command_docker }} run --rm --name matrix_synapse_rust_synapse_auto_compress_state
      --user={{ matrix_user_uid }}:{{ matrix_user_gid }}
      --cap-drop=ALL
      --network={{ matrix_docker_network }}
      --mount type=bind,src={{ matrix_synapse_rust_synapse_compress_state_base_path }},dst=/work
      {{ matrix_synapse_rust_synapse_compress_state_docker_image }}
      /usr/local/bin/synapse_auto_compressor
      -n 100 -c 500
      -p "host={{ matrix_synapse_database_host }} user={{ matrix_synapse_database_user }} password={{ matrix_synapse_database_password }} dbname={{ matrix_synapse_database_database }}"

Is a reasonable default

skepticalwaves avatar Jun 18 '22 04:06 skepticalwaves

Looks like we'd need to run such a command on a timer.


We're currently using rust-synapse-compress-state from the mb-saces Gitlab fork, because it provides prebuilt images.

It appears to be mostly up-to-date, only lacking the latest b4f3d8adbdb1 commit.

spantaleev avatar Jun 19 '22 05:06 spantaleev

Another way to go about this is to add support for synatainer, which can run both the automatic state compressor and some other maintenance tools.

spantaleev avatar Jun 19 '22 06:06 spantaleev