Description
What I Did:
Using MySQL, Hera service is run with 3 workers, request_backlog_timeout is set to 6000, saturation feature is ON
Server config:
request_backlog_timeout=6000
opscfg.occ.server.saturation_recover_throttle_rate=80
opscfg.default.server.max_connections=3
Test Performed:
- I set autocommit=0 and send a DML to insert a row to a table without commit
- At the same time, I send 5 select queries to update same table using 5 threads
- Since DML is not committed, 4 of update queries go to backlog, some of them will get killed by hera service due to saturation feature
What I Expected:
I expected to see HARD_EVICTION in Hera CAL log:
[calmsg] E17:42:29.49 HARD_EVICTION 782947879 0 ^M
What I Saw Instead:
CAL log does not have HARD_EVICTION events. I see SOFT_EVICTION events
t16:14:27.95 API CLIENT_SESSION
E16:14:27.95 STRANDED RECOVERING_SATURATION_RECOVERED 0 chld_pid=21626&worker_id=0&fwk=golang&raddr=10.244.70.71:59987&laddr=10.57.210.114:10101
E16:14:27.95 CLOSE 10.244.70.71 0 fwk=occmuxgo&raddr=10.244.70.71:59987&laddr=10.57.210.114:10101
E16:14:28.04 CLOSE 10.244.70.71 0 fwk=occmuxgo&raddr=10.244.70.71:59992&laddr=10.57.210.114:10101
A16:14:27.95 EXEC 1753867003 0
E16:14:28.05 OCCWORKER recoverworker 0
T16:14:28.06 API CLIENT_SESSION 0 corr_id_=&log_id_=&session_id_=