# node-ttl not working as expected

Hi,

So I'm a bit confused about how node-ttl and node-purge-ttl should work. I have them setup in the database.ini file. node-ttl is set to 35m and node-purge-ttl is set to 5m. From the puppetdb docs I draw the conclusion that with these settings, a node will be expired after 35 minutes of inactivity e.g. node is dead and didn't check in with master for 35 minutes, and after 5 minutes the node should be purged from the db.

But this doesn't seem to happen. The node is still there looking alive and happy even after more than 40 minutes after it was terminated. However, the node seems to disappear after the db performs the compaction according to gc-interval.

Am I understanding this functionality correctly? And if I am, what am I doing wrong? I'm using latest versions of puppetdb and puppetserver.

These are the parameters set in my database.ini file:

# How often (in minutes) to compact the database
# gc-interval = 60
gc-interval = 60

# Number of seconds before any SQL query is considered 'slow'; offending
# queries will not be interrupted, but will be logged at the WARN log level.
log-slow-statements = 10
syntax_pgs = true
node-ttl = 35m
node-purge-ttl = 5m
report-ttl = 14d
conn-max-age = 60
conn-keep-alive = 45