Once in a while the
clamd process can get killed because of memory usage. It turns out it would always get killed when reloading the database after an update.
This is due to the fact that during a database reload clamd will load the new DB first and then drop the old one. This concurrent database reload strategy allows it to keep scanning files while loading the new database. The drawback is that it requires twice as much memory as during normal operations. As a result the clamd process would keep getting killed.
Starting from ClamAV 0.103.0 you can set
ConcurrentDatabaseReload no in your
/etc/clamav/clamd.conf to disable this behaviour.