| In manifest puppetdb/master/routes.pp a decision is made as to what format to use for the facts cache in the puppetserver configuration based on the '$serverversion' server fact. Since '$serverversion is defined by and set on the catalog compilation server, the resulting setting may not be correct on the targeted puppetserver instances since those instances may not run the same puppetserver version as is used on the catalog compilation server. This was discovered at a site that uses a cluster of catalog compilers which transioned, server by server, from puppet server version 6 to version 7. Puppet servers would experience varying facts cache settings depending on which catalog compilation server they would hit with their own puppet agent runs. One way to resolve this issue more coherently is to use the client fact '$puppetversion' to configure the routes setting. This fact normally matches (in its major version component) the puppet server version installed on that machine. cf. module puppetdb 7.9.0, manifest/mastwer/routes.pp, line 25 |