Title:
Sporadic StackOverflowError involving coldfusion.security.BasicPolicy since CF2016HF12
| View in TrackerStatus/Resolution/Reason: To Test//Fixed
Reporter/Name(from Bugbase): Markus W. / ()
Created: 11/07/2019
Versions: 2016,2018
Failure Type: Others
Found In Build/Fixed In Build: 2016,0,12,315717 /
Priority/Frequency: Normal / Unknown
Locale/System: English / Win 2012 Server x64
Vote Count: 2
Problem Description:
Since CF2016HF12 we sometimes get StackOverflowError exceptions on different pages.
Steps to Reproduce:
Currently we were not able to manually trigger this error. It occurs "randomly" between every few days and several times a day on different pages and when it occurs, it's only affecting this (or those) page(s) while other pages still work.
Actual Result:
In this case it happened when trying to open the ColdFusion Administrator:
"Error","http-nio-8500-exec-5","11/07/19","12:50:32",,"'' The specific sequence of files included or processed is: C:\ColdFusion2016\cfusion\wwwroot\CFIDE\administrator\index.cfm'' "
java.lang.StackOverflowError
at java.security.AccessController.doPrivileged(Native Method)
at java.io.FilePermission.init(FilePermission.java:212)
at java.io.FilePermission.<init>(FilePermission.java:299)
at java.lang.SecurityManager.checkRead(SecurityManager.java:888)
at java.io.File.isDirectory(File.java:844)
at java.io.File.toURL(File.java:686)
at coldfusion.security.BasicPolicy$1.run(BasicPolicy.java:155)
at java.security.AccessController.doPrivileged(Native Method)
at coldfusion.security.BasicPolicy.getPermissionCollection(BasicPolicy.java:151)
at coldfusion.security.BasicPolicy.getPermissions(BasicPolicy.java:109)
at java.security.Policy.getPermissions(Policy.java:668)
at java.security.Policy.implies(Policy.java:721)
at java.security.ProtectionDomain.implies(ProtectionDomain.java:279)
at java.security.AccessControlContext.checkPermission(AccessControlContext.java:450)
at java.security.AccessController.checkPermission(AccessController.java:886)
at java.lang.SecurityManager.checkPermission(SecurityManager.java:549)
at java.lang.SecurityManager.checkPropertyAccess(SecurityManager.java:1294)
at java.lang.System.getProperty(System.java:717)
at coldfusion.util.SoftCache.get_statsOff(SoftCache.java:134)
at coldfusion.util.SoftCache.get(SoftCache.java:81)
at coldfusion.util.Utils.getCanonicalFile(Utils.java:353)
at coldfusion.security.BasicPolicy.getPermissionCollection(BasicPolicy.java:149)
at coldfusion.security.BasicPolicy.getPermissions(BasicPolicy.java:109)
[the block below repeats 75 times to a total of 1024 "at …"]
at java.security.Policy.getPermissions(Policy.java:668)
at java.security.Policy.implies(Policy.java:721)
at java.security.ProtectionDomain.implies(ProtectionDomain.java:279)
at java.security.AccessControlContext.checkPermission(AccessControlContext.java:450)
at java.security.AccessController.checkPermission(AccessController.java:886)
at java.lang.SecurityManager.checkPermission(SecurityManager.java:549)
at java.lang.SecurityManager.checkPropertyAccess(SecurityManager.java:1294)
at java.lang.System.getProperty(System.java:717)
at coldfusion.util.SoftCache.get_statsOff(SoftCache.java:134)
at coldfusion.util.SoftCache.get(SoftCache.java:81)
at coldfusion.util.Utils.getCanonicalFile(Utils.java:353)
at coldfusion.security.BasicPolicy.getPermissionCollection(BasicPolicy.java:149)
at coldfusion.security.BasicPolicy.getPermissions(BasicPolicy.java:109)
Here it happened during servlet initialization or something like that:
Nov 05, 2019 2:59:50 PM org.apache.catalina.core.StandardWrapperValve invoke
SCHWERWIEGEND: Servlet.service() for servlet [CfmServlet] in context with path [] threw exception [null] with root cause
java.lang.StackOverflowError
at java.security.AccessController.doPrivileged(Native Method)
at java.io.FilePermission.init(FilePermission.java:203)
at java.io.FilePermission.<init>(FilePermission.java:277)
at java.lang.SecurityManager.checkRead(SecurityManager.java:888)
at java.io.File.isDirectory(File.java:844)
at java.io.File.toURL(File.java:686)
at coldfusion.security.BasicPolicy$1.run(BasicPolicy.java:155)
at java.security.AccessController.doPrivileged(Native Method)
at coldfusion.security.BasicPolicy.getPermissionCollection(BasicPolicy.java:151)
at coldfusion.security.BasicPolicy.getPermissions(BasicPolicy.java:109)
[the lines below repeat 76 times]
at java.security.Policy.getPermissions(Policy.java:668)
at java.security.Policy.implies(Policy.java:721)
at java.security.ProtectionDomain.implies(ProtectionDomain.java:279)
at java.security.AccessControlContext.checkPermission(AccessControlContext.java:450)
at java.security.AccessController.checkPermission(AccessController.java:886)
at java.lang.SecurityManager.checkPermission(SecurityManager.java:549)
at java.lang.SecurityManager.checkPropertyAccess(SecurityManager.java:1294)
at java.lang.System.getProperty(System.java:717)
at coldfusion.util.SoftCache.get_statsOff(SoftCache.java:134)
at coldfusion.util.SoftCache.get(SoftCache.java:81)
at coldfusion.util.Utils.getCanonicalFile(Utils.java:353)
at coldfusion.security.BasicPolicy.getPermissionCollection(BasicPolicy.java:149)
at coldfusion.security.BasicPolicy.getPermissions(BasicPolicy.java:109)
Expected Result:
Page loads without StackOverflowError. :-)
Any Workarounds:
Restart the ColdFusion Application Server. Once the error vanished after around 15 minutes. But usually the error persists on the affected pages until the server is restarted.
Attachments:
Comments: