Details
-
Bug
-
Status: Closed
-
Normal
-
Resolution: Fixed
-
None
-
None
-
None
-
Systems Engineering
-
2
-
Server 2017-06-14
-
Bug Fix
-
Description
We saw some errors in PE-10057 that looked like this:
2015-05-05 17:40:29,649 ERROR [puppet-server] Puppet
|
puppetlabs.services.jruby.puppet_environments$environment_registry$reify__12408.isExpired(puppet_environments.clj:27)
|
puppetlabs.services.jruby.puppet_environments$environment_registry$reify__12408.isExpired(puppetlabs/services/jruby/puppet_environments.clj:27)
|
The line that's happening on is here:
That line could theoretically return a `nil`, which might cause some kind of exception since the Java interface specifies a boolean as the return type:
I thought that the code paths through Puppet would guarantee that we'd always registered an environment prior to calling isExpired, so it would be good to investigate that and make sure we understand what's going on, but in either case it's probably best to go ahead and fix the clojure code to explicitly return false if the value doesn't exist.