• Nils Goroll's avatar
    shard director: add optional weight parameter to .add_backend() · 8b298014
    Nils Goroll authored
    We implement weights by scaling the number of replicas of each backend.
    The replicas parameter of .reconfigure() remains a minimum.
    
    For existing vtcs, the Debug hashcircle output has been compared
    before/after this change to ensure that behaviour is exactly equivalent.
    
    For for wighted backends, it has been checked that the number of
    instances per host on the hashcircle matches the expectation.
    
    Also refactor and clean up some of the code:
    
    - consistently make the number of ring points a uint32_t
    - some constification
    
    Ref #3276
    
     Conflicts:
    	lib/libvmod_directors/shard_cfg.c
    	lib/libvmod_directors/shard_dir.h
    	lib/libvmod_directors/vmod.vcc
    8b298014
Name
Last commit
Last update
..
tests Loading commit data...
tests.disabled Loading commit data...
Makefile.am Loading commit data...
cmds.h Loading commit data...
flint.lnt Loading commit data...
flint.sh Loading commit data...
gensequences Loading commit data...
hpack.h Loading commit data...
huffman_gen.py Loading commit data...
huffman_input Loading commit data...
programs.h Loading commit data...
sequences Loading commit data...
teken.3 Loading commit data...
teken.c Loading commit data...
teken.h Loading commit data...
teken_scs.h Loading commit data...
teken_subr.h Loading commit data...
teken_subr_compat.h Loading commit data...
teken_wcwidth.h Loading commit data...
vmods.h Loading commit data...
vtc.c Loading commit data...
vtc.h Loading commit data...
vtc_barrier.c Loading commit data...
vtc_client.c Loading commit data...
vtc_h2_enctbl.h Loading commit data...
vtc_h2_hpack.c Loading commit data...
vtc_h2_priv.h Loading commit data...
vtc_h2_stattbl.h Loading commit data...
vtc_h2_tbl.c Loading commit data...
vtc_haproxy.c Loading commit data...
vtc_http.c Loading commit data...
vtc_http.h Loading commit data...
vtc_http2.c Loading commit data...
vtc_log.c Loading commit data...
vtc_logexp.c Loading commit data...
vtc_main.c Loading commit data...
vtc_misc.c Loading commit data...
vtc_process.c Loading commit data...
vtc_proxy.c Loading commit data...
vtc_server.c Loading commit data...
vtc_subr.c Loading commit data...
vtc_syslog.c Loading commit data...
vtc_varnish.c Loading commit data...
witness.py Loading commit data...