PSU / Docker & Persistance

Hi @adam,

I’m running PSU in a docker container for a while now, and as we are very active with development we are recreating PSU containers a lot.

Yesterday I notice, in like 2 month, that 113 Hangfire queues were create creating around 8.8 millions records of queued jobs in database :smiley: .

I wasn’t a big deal to do the cleanup, as our DBA found a way to clear that up pretty fast. But it seems that something needs to be done on the hangfire side.

What I have noticed so far:

Everytime the container is recreated with docker compose force recreate, a new container is created and thus a new container ID. Every new instance is populating in hangfire:

  • Heartbeat.containerID
  • GitSync.containerID
  • containerID.ProcessMonitor

These recurring jobs keeps populating their related queues, based on the former containerID and are filling up the backend database even though the heartbeat is is reporting the node as offline.

The other things that I notice is that in PSU console, in “Platform → Computers” all these instances are listed, but there are no options to remove them, only possibility is put them in maintenance mode. I got more than 100 nodes that I had to remove manually from the database.

would it be possible to have a “remove” button or endpoint that would proceed to clear the Hangfire queues related to the node as well as remove any trace of that node in PSU database?

We are willing to move on with PSU on K8S and it would be really nice to have some options like this.

In the meantime I’ll do some SQL cleaning during initialize but the hangfire part still need to be cleared manually.

Feel free to let me know if you want to do a zoom session or if you need any additionnal information about this.

Best regards and thanks in advance for your help :slight_smile:

Cheers

You could use the --hostname parameter of docker to set the container ID to a static host name.

 docker run --it --hostname psu1 ironmansoftware/universal:latest

image

I do agree we need to provide a way to remove the hangfire queues and computers.

Omg, can’t believe that I don’t even try that… Ewww I’ll try it right away.