Skip to main content
Known Participant
April 5, 2011
Question

Variable VMARGS is undefined

  • April 5, 2011
  • 2 replies
  • 1834 views

Hello,

i have a coldfusion 8.0.1 multi-instance installation, but one of our 4 instance, from about a week, has a strange behaviour when i click on the "Settings Summary" in the CFIDE administration console.. it start to print out all the summary informations, but when it start to print out the section "Java and JVM" it will throw this error:

Variable VMARGS is undefined.

The error occurred inE:\cf8_updates\cfusion\wwwroot\CFIDE\adminapi\runtime.cfc: line 1728
Called from E:\cf8_updates\cfusion\wwwroot\CFIDE\adminapi\runtime.cfc: line 1222
Called fromE:\cf8_updates\cfusion\wwwroot\CFIDE\administrator\reports\_report.cfm: line 1121
Called fromE:\cf8_updates\cfusion\wwwroot\CFIDE\administrator\reports\_report.cfm: line 1102
Called fromE:\cf8_updates\cfusion\wwwroot\CFIDE\administrator\reports\_report.cfm: line 41
Called fromE:\cf8_updates\cfusion\wwwroot\CFIDE\administrator\reports\_report.cfm: line 1
Called from E:\cf8_updates\cfusion\wwwroot\CFIDE\administrator\reports\index.cfm: line 14
-1 : Unable to display error's location in a CFML template.

I tried restarting the coldfusion instance but didn't solved.. all the instance have the same patch level (8.0.1 cumulative hotfix 4), jrun4 updater 7, and use the same jdk (1.6.0_15)

The strange things are that in the others instance, in the setting summary, i don't have a section "Java and JVM", and the paths indicated in the error details "E:\cf8_updates\cfusion\wwwroot\CFIDE\adminapi\runtime.cfc" are not existing.. we are on unix (solaris10), so i don't know where come from this "E:\"

We already had this problem with another instance, sometimes ago, and we "solved" recreating a new instance and applying again the same settings.. but i prefer to find a solution to this problem instead of recreating a new one again..

any suggestions is appreciated

Thanks in advance

Claudio

    This topic has been closed for replies.

    2 replies

    Charlie Arehart
    Community Expert
    Community Expert
    April 5, 2011

    I would be willing to bet that the CF Admin you're looking at is one that was implemented for a Server/Standard deployment, where the "java and jvm" page did appear in the CF Admin. It should not appear in a multiserver deployment.

    Since you say it appears in one and not the other instances, I would bet that the one that's failing is pointing to a CFIDE directory that's quite different from the one that the others are pointing at.

    It's not clear if you're using an external web server. If you are, I would start by looking at the web server's site definition to see if you have it either pointing to directory where the CFIDE lives, or if you have perhaps a virtual directory within the site just for CFIDE. Either way, it may be an old CFIDE, or may have files for Server/Standard that wouldn't exist for Multiserver. I've never done such a comparison. It might be interesting to know if/how they differ.

    For now, though, look then at where the CFIDE is for the sites that are working. I suspect it may be deep inside the instance, such as C:\JRun4\servers\instancename\cfusion.ear\cfusion.war\. If that's so, then change your "failing" instance to point either to that same CFIDE or one perhaps at the same location within its own instance.

    This problem of people having lots of CFIDEs all over the place (either from old installs, of from their following some recommendation to move/copy them for various reasons) is really a sore point, especially with respect to the recent hotfixes and CHFs that often involve replacing files within the CFIDE. If someone does the wrong one (or not all of them that should be updated for that given release), it can definitely cause problems.

    Hope that helps.

    /charlie

    /Charlie (troubleshooter, carehart. org)
    clagioAuthor
    Known Participant
    April 6, 2011

    Thanks both for the answer.. some clarification.. the JAVA & Jvm section wasn't here a weeks ago, and no updates have be done recently on the server/instances

    I use an external web server (apache 2.2), with several virtual host, each one forward the cfml request to its own cf instance

    The CFIDE used is the one inside the relative instance folder ([cf_home]/servers/[instance_name]/cfusion.ear/cfusion.war/CFIDE/), i don't think it's a web server configuration issue beacuse i didn't changed it and it's the same of the other instance..

    seems like something has been corrupted in the instance configuration file, we realized there was a problem because an application running on this instance starting to thrown a strange error:

    Error creating validatorIOC

    Bean creation exception during init() of ill.external.class-core.model.auth.ClassUserGatewayThe value returned from the init function is not of type ill.external.class-core.model.auth.interfaces.IAuthUserGateway.:If the component name is specified as a return type, its possible that a definition file for the component cannot be found or is not accessible.

    running the same application on one of the other instance didn't produce the error.. the application is using coldbox as framework.. i don't know if it's related.. because other simple application on this istance, are not giving any problems..

    other unsuccessfull try i did are:

    -updating the jdk to the last 1.6.0.24

    -substitute the CFIDE directory with the file from another server

    -compared the jrun.xml with the one from another working server, no difference a part from the port settings

    - listing all the instance file modified in the last 10 days, excluding log files, and comparing with the same files of the other workin instance

    - disabled the sandbox

    another strange thing i noticed just now, in the administration console in the upper left corner in the working instance there is a string "Server: [instance_name]" indicating the current server.. in the "corrupted" instance this string is missing

    Charlie Arehart
    Community Expert
    Community Expert
    April 6, 2011

    Well, I will just say that I can't see how CB running on the instance can have any impact on the CF Admin running.

    As for the problem, perhaps others will have more thoughts. I myself would want to confirm your conclusion that it's the right CFIDE.

    You could do that a couple of ways. One is to double-check your observations of the configuration, but even then I'd go a step further and do something to prove it's using what you think. One "hack" way would be to rename a file you know you're calling, and confirm you get an error.

    A more sophisticated (less obtrusive) way would be to use the CF Enterprise Server Monitor (since you're running Multiserver mode, which means you have CF Enterprise), since it shows the filenames of the requests that are executed. You'd have to change its settings to allow tracking of the Admin, and then change the slowest requests page to lower the time to 0 seconds. I talk about both things in the 4-part series I did for the Adobe Dev Center on the Server Monitor (starting at http://www.carehart.org/articles/#2007_2).

    You could even go so far (in a situation like this) as to use the CF debugger, to watch the flow of execution through pages, but that would be overkill to try to setup just for this particular problem if you don't already use it. (Also, most of the CF admin files are precompiled, so you can't see the CFML source and debug them anyway.)

    There are a lot of other things we could try to suggest. It may involve a lot of back and forth, and sometimes trying to resolve such a problem over email this way can be tedious.

    It may be one of those situations where it would be in your interest to bring someone in to remotely assist (over the web, using Adobe Connect--no firewall issues, no need to allocate a remote desktop account.) I provide such services, as do others, as I list in a category of my CF411 site: http://www.cf411.com/#cfassist. It might take someone experienced with evaluating such problems only 10-20 minutes to better understand and resolve the problem. I don't myself impose any minimum time requirement, and I also offer a satisfaction guarantee. More at the URL below. Hope that's helpful.

    /charlie arehart

    charlie@carehart.org

    Providing fast, remote, on-demand troubleshooting services for CF (and CFBuilder)

    More at http://www.carehart.org/consulting

    /Charlie (troubleshooter, carehart. org)
    Community Expert
    April 5, 2011

    Historically, the CF Admin has occasionally not worked when viewing or editing JVM settings in a multi-instance install. I recommend you view or edit the appropriate jvm.config file directly.

    As for the E:\cf8_updates bit, that's from precompiled files from Adobe that presumably were located in that directory structure.

    Dave Watts, CTO, Fig Leaf Software

    http://www.figleaf.com/

    http://training.figleaf.com/

    Dave Watts, Eidolon LLC