Changing port backend doesn't work since in memory value is not changed

I am facing an issue when changing the port of an already existing backend. It use to be 443, all good, but when I change it to something else the healthchecks are fine but the value in memory is still 443. Not even restarting HAProxy helps.

[root@haproxy01 ~]# echo "show servers state dmtest_ssl_back" | socat stdio /var/lib/haproxy/stats
# be_id be_name srv_id srv_name srv_addr srv_op_state srv_admin_state srv_uweight srv_iweight srv_time_since_last_change srv_check_status srv_check_result srv_check_health srv_check_state srv_agent_state bk_f_forced_id srv_f_forced_id srv_fqdn srv_port srvrecord
30 dmtest_ssl_back 1 app17 2 0 1 1 57 9 3 6 6 0 0 0 - 443 -
backend dmtest_ssl_back
  mode http
  timeout connect 5s
  timeout server 31s
  server app17 check check-ssl port 8444 inter 5s fall 4 rise 3 ssl verify none

this is the process:

[root@haproxy01 ~]# ps aux |grep hapro
root     28480  0.0  0.4 276520 146236 ?       Ss   14:02   0:00 /usr/sbin/haproxy -Ws -f /etc/haproxy/haproxy.cfg -p /run/ -sf -f /etc/haproxy/program
root     28481  0.1  0.1 724160 45468 ?        Sl   14:02   0:03 dataplaneapi --scheme=https --host= --tls-certificate=/etc/haproxy/api/ --tls-key=/etc/haproxy/api/ --tls-port=5555 --maps-dir=/etc/haproxy --update-map-files --update-map-files-period=5 --haproxy-bin=/usr/sbin/haproxy --config-file=/etc/haproxy/haproxy.cfg --reload-cmd=systemctl reload haproxy --reload-delay=5 --userlist=dataplaneapi
root     28482 29.9  0.7 542400 232752 ?       Sl   14:02  15:43 /usr/sbin/haproxy -Ws -f /etc/haproxy/haproxy.cfg -p /run/ -sf -f /etc/haproxy/program
root     31095  0.0  0.0 112712   980 pts/0    R+   14:55   0:00 grep --color=auto hapro

Program is:

program api
    command dataplaneapi --scheme=https --host= --tls-certificate=/etc/haproxy/api/ --tls-key=/etc/haproxy/api/ --tls-port=5555 --maps-dir=/etc/haproxy --update-map-files --update-map-files-period=5 --haproxy-bin=/usr/sbin/haproxy --config-file=/etc/haproxy/haproxy.cfg --reload-cmd="systemctl reload haproxy" --reload-delay=5 --userlist=dataplaneapi
    no option start-on-reload

Version is:

[root@haproxy01 ~]# haproxy -v
HA-Proxy version 2.0.14 2020/04/02 -

I think it has to do with the way we dump in memory content to state file.

[root@haproxy01 haproxy]# cat /usr/lib/systemd/system/haproxy.service
Description=HAProxy Load Balancer

Environment="CONFIG=/etc/haproxy/haproxy.cfg" "PIDFILE=/run/"
ExecStartPre=/usr/sbin/haproxy -f $CONFIG -c -q
ExecStart=/usr/sbin/haproxy -Ws -f $CONFIG -p $PIDFILE $OPTIONS
ExecReload=/usr/sbin/haproxy -f $CONFIG -c -q
ExecReload=/bin/kill -USR2 $MAINPID

and here

[root@haproxy01 haproxy]# cat /etc/haproxy/server-state/
/usr/bin/socat /var/lib/haproxy/stats - <<< "show servers state" > /etc/haproxy/server-state/state

Is this correct? To execute the dump script on reload?