key [CFID] doesn't exist in struct -- very concerning

513 views
Skip to first unread message

gx

unread,
Jun 14, 2010, 3:45:28 AM6/14/10
to ra...@googlegroups.com
Hi All

I have come across the following exception (full stack attached)

This is very concerning since it is clear that the key DOES exist:

key [CFID] doesn't exist in struct (keys:urltoken,lastvisit,hitcount,timecreated,cftoken,cfid,CUSERNAME)

Although this is a rare occurrence it is very worrying, under what circumstances would this occur, at first it appears to be a case sensitivity issue but then most of the time it is fine. The only other thought is concurrency as this is the client scope, but as this is a dev environment and there is only one instance of the browser on this server there should be no issue, the current request was being made once every 3 seconds.

This is the worst point for me for an error to occur because it (as you may have noticed) the logger process, where I am truing to log a previous error.
Having lost the previous error I am left somewhat in the dark and worried.

The only more insight I can offer is that there was previously java ran out of memory:
type: java.lang.outofmemoryerror
message: Java heap space

But since then I restated railo and there were five or so successful requests, after this error i continues the process and there has not been an issue for over an hour.

Technical info attached as railo_ver.html

(these attachments are probably not going to make it to the list so let me know where to send them)



Regards

GX
error.htm
railo_ver.html

AJ Mercer

unread,
Jun 14, 2010, 3:57:30 AM6/14/10
to ra...@googlegroups.com
maybe try this to force the lower case of keys

<cfset sReturn["userid"] = client['cfid'] & ":" & client['cftoken'] />
--

AJ Mercer
http://webonix.net
http://twitter.com/webonix

Michael Offner-Streit

unread,
Jun 14, 2010, 4:48:49 AM6/14/10
to ra...@googlegroups.com
does this happens only with cfid?

/micha


gx schrieb:


Railo 3.1.1.000 Error (Expression)
Message
key [CFID] doesn't exist in struct (keys:urltoken,lastvisit,hitcount,timecreated,cftoken,cfid,CUSERNAME)
Stacktrace The Error Occurred in
/mnt/data/websites/mailquatro_large_data/www/log2/log4CF.cfc: line 325
323: <cfset sReturn["scriptname"] = cgi.SCRIPT_NAME />
324: <cfset sReturn["querystring"] = cgi.QUERY_STRING />
325: <cfset sReturn["userid"] = client.cfid & ":" & client.cftoken />
326:
327: <cfreturn sReturn />

called from/mnt/data/websites/mailquatro_large_data/www/log2/log4CF.cfc: line 112
110: <cfargument name="aMessage" type="any" required="true" />
111:
112: <cfset var sData = _getRequestData() />
113:
114: <cfset sData["level"] = arguments.cLevel />

called from/mnt/data/websites/mailquatro_large_data/www/log2/log4CF.cfc: line 52
50:
51: <cffunction name="trace" access="public" output="false">
52: <cfreturn variables.oLogger.trace(_formatMessage('trace', arguments)) />
53: </cffunction>
54:

called from/mnt/data/websites/mailquatro_large_data/www/log2/log4CF.cfc: line 24
22: <cfset request.cLoggerRequestPreviousMessageTime = 0 />
23: </cfif>
24: <cfset trace("Logger started for request") />
25: </cffunction>
26:

called from/mnt/data/websites/mailquatro_large_data/www/Application.cfc: line 38
36: <cfset request.log = createObject("component", "log2.log4CF") />
37: </cfif>
38: <cfset request.log.setRequestStart() />
39:
40: <!--- during development we always recreate appvars for production remove the following line --->

Java Stacktrace
key [CFID] doesn't exist in struct (keys:urltoken,lastvisit,hitcount,timecreated,cftoken,cfid,CUSERNAME)
	at railo.runtime.type.StructImpl.invalidKey(StructImpl.java:154):154
	at railo.runtime.type.StructImpl.get(StructImpl.java:61):61
	at railo.runtime.type.scope.ClientSupport.get(ClientSupport.java:183):183
	at log2.log4cf_cfc$cf.udfCall3(/mnt/data/websites/mailquatro_large_data/www/log2/log4CF.cfc:325):325
	at log2.log4cf_cfc$cf.udfCall(/mnt/data/websites/mailquatro_large_data/www/log2/log4CF.cfc):-1
	at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:166):166
	at railo.runtime.type.UDFImpl._call(UDFImpl.java:319):319
	at railo.runtime.type.UDFImpl.call(UDFImpl.java:284):284
	at railo.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(VariableUtilImpl.java:622):622
	at railo.runtime.PageContextImpl.getFunction(PageContextImpl.java:1259):1259
	at log2.log4cf_cfc$cf.udfCall2(/mnt/data/websites/mailquatro_large_data/www/log2/log4CF.cfc:112):112
	at log2.log4cf_cfc$cf.udfCall(/mnt/data/websites/mailquatro_large_data/www/log2/log4CF.cfc):-1
	at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:166):166
	at railo.runtime.type.UDFImpl._call(UDFImpl.java:319):319
	at railo.runtime.type.UDFImpl.call(UDFImpl.java:284):284
	at railo.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(VariableUtilImpl.java:622):622
	at railo.runtime.PageContextImpl.getFunction(PageContextImpl.java:1259):1259
	at log2.log4cf_cfc$cf.udfCall1(/mnt/data/websites/mailquatro_large_data/www/log2/log4CF.cfc:52):52
	at log2.log4cf_cfc$cf.udfCall(/mnt/data/websites/mailquatro_large_data/www/log2/log4CF.cfc):-1
	at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:166):166
	at railo.runtime.type.UDFImpl._call(UDFImpl.java:319):319
	at railo.runtime.type.UDFImpl.call(UDFImpl.java:284):284
	at railo.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(VariableUtilImpl.java:622):622
	at railo.runtime.PageContextImpl.getFunction(PageContextImpl.java:1259):1259
	at log2.log4cf_cfc$cf.udfCall1(/mnt/data/websites/mailquatro_large_data/www/log2/log4CF.cfc:24):24
	at log2.log4cf_cfc$cf.udfCall(/mnt/data/websites/mailquatro_large_data/www/log2/log4CF.cfc):-1
	at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:166):166
	at railo.runtime.type.UDFImpl._call(UDFImpl.java:319):319
	at railo.runtime.type.UDFImpl.call(UDFImpl.java:284):284
	at railo.runtime.ComponentImpl._call(ComponentImpl.java:400):400
	at railo.runtime.ComponentImpl._call(ComponentImpl.java:332):332
	at railo.runtime.ComponentImpl.call(ComponentImpl.java:1486):1486
	at railo.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(VariableUtilImpl.java:617):617
	at railo.runtime.PageContextImpl.getFunction(PageContextImpl.java:1259):1259
	at application_cfc$cf.udfCall(/mnt/data/websites/mailquatro_large_data/www/Application.cfc:38):38
	at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:166):166
	at railo.runtime.type.UDFImpl._call(UDFImpl.java:319):319
	at railo.runtime.type.UDFImpl.call(UDFImpl.java:284):284
	at railo.runtime.ComponentImpl._call(ComponentImpl.java:400):400
	at railo.runtime.ComponentImpl._call(ComponentImpl.java:332):332
	at railo.runtime.ComponentImpl.call(ComponentImpl.java:1486):1486
	at railo.runtime.listener.ModernAppListener.call(ModernAppListener.java:282):282
	at railo.runtime.listener.ModernAppListener._onRequest(ModernAppListener.java:102):102
	at railo.runtime.listener.MixedAppListener.onRequest(MixedAppListener.java:23):23
	at railo.runtime.PageContextImpl.execute(PageContextImpl.java:1679):1679
	at railo.runtime.engine.CFMLEngineImpl.serviceCFML(CFMLEngineImpl.java:248):248
	at railo.loader.servlet.CFMLServlet.service(CFMLServlet.java:32):32
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:91):91
	at com.caucho.server.dispatch.ServletFilterChain.doFilter(ServletFilterChain.java:103):103
	at com.caucho.server.webapp.WebAppFilterChain.doFilter(WebAppFilterChain.java:175):175
	at com.caucho.server.dispatch.ServletInvocation.service(ServletInvocation.java:240):240
	at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:263):263
	at com.caucho.server.port.TcpConnection.run(TcpConnection.java:481):481
	at com.caucho.util.ThreadPool$Item.runTasks(ThreadPool.java:685):685
	at com.caucho.util.ThreadPool$Item.run(ThreadPool.java:607):607
	at java.lang.Thread.run(Unknown Source):-1
        




Railo Administrator

admin

Railo Dumps

test
string Hallo Variables
url
Scope
test
string Hallo URL
form
Scope
test
string Hallo FORM
request
Scope
variables
Scope
TEST
string Hallo Variables
server
Scope
railo
Struct
release-date
Date Time {ts '2009-08-12 03:00:00'}
state
string final
version
string 3.1.1.000
versionName
string Barry
versionNameExplanation
string http://en.wikipedia.org/wiki/Barry_(dog)
java
Struct
freeMemory
number 24421088
maxMemory
number 258539520
totalMemory
number 74448896
vendor
string Sun Microsystems Inc.
version
string 1.6.0_11
os
Struct
additionalinformation
string
arch
string i386
buildnumber
string
name
string Linux
version
string 2.6.27.27
coldfusion
Struct
appserver
string
expiration
Date Time {ts '2010-06-14 10:51:57'}
installkit
string
productcontextcount
string inf
productlevel
string os
productname
string Railo
productversion
string 8,0,0,1
rootdir
string
serialnumber
string 0
supportedlocales
string japanese (japan),spanish (peru),english,ja_JP_JP,spanish (panama),serbian (bosnia and herzegovina),macedonian,spanish (guatemala),arabic (united arab emirates),norwegian (norway),albanian (albania),bulgarian,arabic (iraq),arabic (yemen),hungarian,portuguese (portugal),greek (cyprus),arabic (qatar),macedonian (macedonia),swedish,german (switzerland),english (united states),finnish (finland),icelandic,czech,english (malta),slovenian (slovenia),slovak (slovakia),italian,turkish (turkey),chinese,thai,arabic (saudi arabia),norwegian,english (united kingdom),serbian (serbia and montenegro),lithuanian,romanian,english (new zealand),no_NO_NY,lithuanian (lithuania),spanish (nicaragua),dutch,irish (ireland),french (belgium),spanish (spain),arabic (lebanon),korean,french (canada),estonian (estonia),arabic (kuwait),serbian (serbia),spanish (united states),spanish (mexico),arabic (sudan),indonesian (indonesia),russian,latvian,spanish (uruguay),latvian (latvia),hebrew,portuguese (brazil),arabic (syria),croatian,estonian,spanish (dominican republic),french (switzerland),hindi (india),spanish (venezuela),arabic (bahrain),english (philippines),arabic (tunisia),finnish,german (austria),spanish,dutch (netherlands),spanish (ecuador),chinese (taiwan),arabic (jordan),belarusian,icelandic (iceland),spanish (colombia),spanish (costa rica),spanish (chile),arabic (egypt),english (south africa),thai (thailand),greek (greece),italian (italy),catalan,hungarian (hungary),french,english (ireland),ukrainian (ukraine),polish (poland),french (luxembourg),dutch (belgium),english (india),catalan (spain),arabic (morocco),spanish (bolivia),english (australia),serbian,chinese (singapore),portuguese,ukrainian,spanish (el salvador),russian (russia),korean (south korea),vietnamese,arabic (algeria),vietnamese (vietnam),serbian (montenegro),albanian,arabic (libya),arabic,chinese (china),belarusian (belarus),chinese (hong kong),japanese,hebrew (israel),bulgarian (bulgaria),indonesian,maltese (malta),spanish (paraguay),slovenian,french (france),czech (czech republic),italian (switzerland),romanian (romania),spanish (puerto rico),english (canada),german (germany),irish,german (luxembourg),german,spanish (argentina),slovak,malay (malaysia),croatian (croatia),english (singapore),danish,maltese,polish,arabic (oman),turkish,th_TH_TH,greek,malay,swedish (sweden),danish (denmark),spanish (honduras)
separator
Struct
file
string /
line
string
path
string :
array
Array
1
number 1
2
number 2
3
number 3
4
string aaa
struct
Struct
A
number 1
B
number 2
C
number 3
D
string aaa
query
Query
Execution Time (ms) 0
recordcount 4
cached No
result
COL1 COL2
1.1 2.1
1.2 2.2
1 2
3 3
Debugging Output
Pages
file count load query app
total
Total 2 0 0 3
3
/mnt/sys/bin/railo-depl/webapps/ROOT/index.cfm 1 0 0 3
3
/mnt/sys/bin/railo-depl/webapps/WEB-INF/railo/context/templates/debugging/debugging.cfm 1 0 0 0
0
Total 2 0 0 3
3
file count load query app
total


-- 
Michael Offner-Streit
CTO
Railo Technologies GmbH
michael...@railo.ch
www.getrailo.com

Mailing List (english): http://groups.yahoo.com/group/railo_talk/
Mailing List  (german): http://de.groups.yahoo.com/group/railo/
Linked in: http://www.linkedin.com/e/gis/71368/0CF7D323BBC1
Issue Tracker: http://jira.jboss.org/jira/browse/RAILO
Blog: http://www.railo-technologies.com/blog

GX

unread,
Jun 22, 2010, 1:52:11 AM6/22/10
to Railo
I apologize for the delay in replying.

I have also noticed this with cftoken. Because this is a 'freak
accident' and I have a script that automatically refreshes every
couple of seconds I do not always see the error unless it happens
while I am at my desk.
I doubt the case will make a difference otherwise it would fail each
time not only sometimes. Either way it should not fail and I would
like to help as much as possible to investigate this issue, I can
confirm the second time I saw this (with cftoken) there were no
previous java memory issues so as i suspected it was unrelated.

Anyone have any ideas how to try and replicate this?

Regards

GX

On Jun 14, 11:48 am, Michael Offner-Streit <michael.off...@railo.ch>
wrote:
> does this happens only with cfid?
>
> /micha
>
> gx schrieb:
>
> > Hi All
>
> > I have come across the following exception (full stack attached)
>
> > This is very concerning since it is clear that the key DOES exist:
>
> > key [*CFID*] doesn't exist in struct
> > (keys:urltoken,lastvisit,hitcount,timecreated,cftoken,*cfid*,CUSERNAME)
>
> > Although this is a rare occurrence it is very worrying, under what
> > circumstances would this occur, at first it appears to be a case
> > sensitivity issue but then most of the time it is fine. The only other
> > thought is concurrency as this is the client scope, but as this is a
> > dev environment and there is only one instance of the browser on this
> > server there should be no issue, the current request was being made
> > once every 3 seconds.
>
> > This is the worst point for me for an error to occur because it (as
> > you may have noticed) the logger process, where I am truing to log a
> > previous error.
> > Having lost the previous error I am left somewhat in the dark and worried.
>
> > The only more insight I can offer is that there was previously java
> > ran out of memory:
> > type: java.lang.outofmemoryerror
> > message: Java heap space
>
> > But since then I restated railo and there were five or so successful
> > requests, after this error i continues the process and there has not
> > been an issue for over an hour.
>
> > Technical info attached as railo_ver.html
>
> > (these attachments are probably not going to make it to the list so
> > let me know where to send them)
>
> > Regards
>
> > GX
>
> > ------------------------------------------------------------------------
>
> > Railo 3.1.1.000 Error (Expression)
> > Message    key [CFID] doesn't exist in struct
> > (keys:urltoken,lastvisit,hitcount,timecreated,cftoken,cfid,CUSERNAME)
> > Stacktrace         The Error Occurred in
> > * /mnt/data/websites/mailquatro_large_data/www/log2/log4CF.cfc: line 325*
>
> >     323: <cfset sReturn["scriptname"] = cgi.SCRIPT_NAME />
> >     324: <cfset sReturn["querystring"] = cgi.QUERY_STRING />
> >     *325: <cfset sReturn["userid"] = client.cfid & ":" &
> >     client.cftoken />*
> >     326:
> >     327: <cfreturn sReturn />
>
> > *called
> > from*/mnt/data/websites/mailquatro_large_data/www/log2/log4CF.cfc:
> > line 112
>
> >     110: <cfargument name="aMessage" type="any" required="true" />
> >     111:
> >     *112: <cfset var sData = _getRequestData() />*
> >     113:
> >     114: <cfset sData["level"] = arguments.cLevel />
>
> > *called
> > from*/mnt/data/websites/mailquatro_large_data/www/log2/log4CF.cfc: line 52
>
> >     50:
> >     51: <cffunction name="trace" access="public" output="false">
> >     *52: <cfreturn variables.oLogger.trace(_formatMessage('trace',
> >     arguments)) />*
> >     53: </cffunction>
> >     54:
>
> > *called
> > from*/mnt/data/websites/mailquatro_large_data/www/log2/log4CF.cfc: line 24
>
> >     22: <cfset request.cLoggerRequestPreviousMessageTime = 0 />
> >     23: </cfif>
> >     *24: <cfset trace("Logger started for request") />*
> >     25: </cffunction>
> >     26:
>
> > *called
> > from*/mnt/data/websites/mailquatro_large_data/www/Application.cfc: line 38
>
> >     36: <cfset request.log = createObject("component", "log2.log4CF") />
> >     37: </cfif>
> >     *38: <cfset request.log.setRequestStart() />*
> > ------------------------------------------------------------------------
>
> >   Railo Administrator
>
> > admin <http://viper/admin/railo-context/admin.cfm>
> ...
>
> read more »

Simeon.Cheeseman

unread,
Jul 1, 2010, 8:06:12 PM7/1/10
to Railo
Hi,
I have managed to come across this as well, in differing circumstances
and constantly.

The error occurs in the threadChecker call and I get the error:

key ['thread2234'] doesn't exist in struct (keys:thread2234)

Im including my code here:

File threadStarter.cfm

<cfsilent>
<cfset threadName = "thread2234">
<cfthread action="run" name="#threadName#">
<cfset SESSION.Threads[ THREAD.Name ] = Duplicate(THREAD) />
<!--- sleep thread 5 secs --->
<cfset thread = CreateObject("java", "java.lang.Thread")>
<cfset thread.sleep(5000)>
<cfset finished = true>
</cfthread>
</cfsilent>
<cfoutput>
<html>
<body>
<script type="text/javascript" src="jQuery/jquery.js"></script>
<script type="text/javascript">
// Load the thread activity via jQuery's
// AJAX functionality. This will load the
// returned value into the innerHTML.
function UpdateThreadActivity(){

$.get(
"threadChecker.cfm?threadName='#threadName#'",
{},
function(data){
if(!data.finish){
setTimeout(
UpdateThreadActivity,
100
);
}else{
$( "##threadActivity" ).html("Finished");
}
}, "json"
);

}


// When the document has loaded, start
// updating the thread activity.
$( UpdateThreadActivity );

</script>
<h2>Thread Test</h2>
<p></p>
<p id="threadActivity">Thread running...</p>
</body>
</html>
</cfoutput>
<cfflush>

And threadChecker.cfm

<!--- Kill extra output. --->
<cfsilent>
<cfparam name="URL.threadName" type="string"/>
<cfset r = structNew()>
<cfset objThread = SESSION.Threads[ threadName ] />
<cfif isDefined("objThread.finished") AND objThread.finished>
<cfset r["finished"] = true>
<cfset StructDelete(APPLICATION.Threads, threadName) />
<cfthread action="terminate" name="#threadName#"/>
<cfelse>
<cfset r["finished"] = false>
</cfif>

<cfsavecontent variable="strThreadData">
<cfoutput>
#SerializeJSON(r)#
</cfoutput>
</cfsavecontent>
<!--- Output the thread innerHTML. --->
<cfcontent type="text/html"
variable="#ToBinary( ToBase64( strThreadData ) )#" />
</cfsilent>

~Simeon.
> > >    at log2.log4cf_cfc$cf.udfCall(/mnt/data/websites/mailquatro_large_data/www/log 2/log4CF.cfc):-1
> > >    at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:166):166
> > >    at railo.runtime.type.UDFImpl._call(UDFImpl.java:319):319
> > >    at railo.runtime.type.UDFImpl.call(UDFImpl.java:284):284
> > >    at railo.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(Variable UtilImpl.java:622):622
> > >    at railo.runtime.PageContextImpl.getFunction(PageContextImpl.java:1259):1259
> > >    at log2.log4cf_cfc$cf.udfCall2(/mnt/data/websites/mailquatro_large_data/www/lo g2/log4CF.cfc:112):112
> > >    at log2.log4cf_cfc$cf.udfCall(/mnt/data/websites/mailquatro_large_data/www/log 2/log4CF.cfc):-1
> > >    at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:166):166
> > >    at railo.runtime.type.UDFImpl._call(UDFImpl.java:319):319
> > >    at railo.runtime.type.UDFImpl.call(UDFImpl.java:284):284
> > >    at railo.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(Variable UtilImpl.java:622):622
> > >    at railo.runtime.PageContextImpl.getFunction(PageContextImpl.java:1259):1259
> > >    at log2.log4cf_cfc$cf.udfCall1(/mnt/data/websites/mailquatro_large_data/www/lo g2/log4CF.cfc:52):52
> > >    at log2.log4cf_cfc$cf.udfCall(/mnt/data/websites/mailquatro_large_data/www/log 2/log4CF.cfc):-1
> > >    at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:166):166
> > >    at railo.runtime.type.UDFImpl._call(UDFImpl.java:319):319
> > >    at railo.runtime.type.UDFImpl.call(UDFImpl.java:284):284
> > >    at railo.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(Variable UtilImpl.java:622):622
> > >    at railo.runtime.PageContextImpl.getFunction(PageContextImpl.java:1259):1259
> > >    at log2.log4cf_cfc$cf.udfCall1(/mnt/data/websites/mailquatro_large_data/www/lo g2/log4CF.cfc:24):24
> > >    at log2.log4cf_cfc$cf.udfCall(/mnt/data/websites/mailquatro_large_data/www/log 2/log4CF.cfc):-1
> > >    at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:166):166
> > >    at railo.runtime.type.UDFImpl._call(UDFImpl.java:319):319
> > >    at railo.runtime.type.UDFImpl.call(UDFImpl.java:284):284
> > >    at railo.runtime.ComponentImpl._call(ComponentImpl.java:400):400
> > >    at railo.runtime.ComponentImpl._call(ComponentImpl.java:332):332
> > >    at railo.runtime.ComponentImpl.call(ComponentImpl.java:1486):1486
> > >    at railo.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(Variable UtilImpl.java:617):617
> > >    at railo.runtime.PageContextImpl.getFunction(PageContextImpl.java:1259):1259
> > >    at application_cfc$cf.udfCall(/mnt/data/websites/mailquatro_large_data/www/App lication.cfc:38):38
> > >    at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:166):166
> > >    at railo.runtime.type.UDFImpl._call(UDFImpl.java:319):319
> > >    at railo.runtime.type.UDFImpl.call(UDFImpl.java:284):284
> > >    at railo.runtime.ComponentImpl._call(ComponentImpl.java:400):400
> > >    at railo.runtime.ComponentImpl._call(ComponentImpl.java:332):332
> > >    at railo.runtime.ComponentImpl.call(ComponentImpl.java:1486):1486
> > >    at railo.runtime.listener.ModernAppListener.call(ModernAppListener.java:282):2 82
> > >    at railo.runtime.listener.ModernAppListener._onRequest(ModernAppListener.java: 102):102
> > >    at railo.runtime.listener.MixedAppListener.onRequest(MixedAppListener.java:23) :23
> > >    at railo.runtime.PageContextImpl.execute(PageContextImpl.java:1679):1679
> > >    at railo.runtime.engine.CFMLEngineImpl.serviceCFML(CFMLEngineImpl.java:248):24 8
> > >    at railo.loader.servlet.CFMLServlet.service(CFMLServlet.java:32):32
> > >    at javax.servlet.http.HttpServlet.service(HttpServlet.java:91):91
> > >    at com.caucho.server.dispatch.ServletFilterChain.doFilter(ServletFilterChain.j ava:103):103
> ...
>
> read more »

jpate

unread,
Jan 19, 2012, 6:51:01 PM1/19/12
to ra...@googlegroups.com
I am getting a similar error trying to run cftracker 2.1.1  https://github.com/misterdai/cfTracker/downloads 
Has there been any developments in this area?
Catch
Entries:12
additional
Struct
cause
Struct
additional
Struct
Detail
string
ErrNumber
number0
ErrorCode
string0
ExtendedInfo
string
Message
stringkey [GCINFO] doesn't exist in struct (keys:PLEN,GCINFO,STARTTIME,POOL,WHEN,P,DATA,TEMP,USAGE,LEN,I)
StackTrace
stringkey [GCINFO] doesn't exist in struct (keys:PLEN,GCINFO,STARTTIME,POOL,WHEN,P,DATA,TEMP,USAGE,LEN,I) at railo.runtime.type.util.StructSupport.invalidKey(StructSupport.java:30):30 at railo.runtime.type.StructImpl.get(StructImpl.java:78):78 at railo.runtime.util.VariableUtilImpl.get(VariableUtilImpl.java:244):244 at railo.runtime.util.VariableUtilImpl.getCollection(VariableUtilImpl.java:234):234 at railo.runtime.PageContextImpl.getCollection(PageContextImpl.java:1266):1266 at cftracker.services.cftracker.stats_cfc$cf.udfCall1(C:\railo\tomcat\webapps\ROOT\cftracker\services\cftracker\stats.cfc:186):186 at cftracker.services.cftracker.stats_cfc$cf.udfCall(C:\railo\tomcat\webapps\ROOT\cftracker\services\cftracker\stats.cfc):-1 at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:215):215 at railo.runtime.type.UDFImpl._call(UDFImpl.java:434):434 at railo.runtime.type.UDFImpl.call(UDFImpl.java:384):384 at railo.runtime.ComponentImpl._call(ComponentImpl.java:608):608 at railo.runtime.ComponentImpl._call(ComponentImpl.java:495):495 at railo.runtime.ComponentImpl.call(ComponentImpl.java:1793):1793 at railo.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(VariableUtilImpl.java:733):733 at railo.runtime.PageContextImpl.getFunction(PageContextImpl.java:1445):1445 at cftracker.services.memory_cfc$cf.udfCall(C:\railo\tomcat\webapps\ROOT\cftracker\services\memory.cfc:19):19 at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:215):215 at railo.runtime.type.UDFImpl._call(UDFImpl.java:434):434 at railo.runtime.type.UDFImpl.callWithNamedValues(UDFImpl.java:377):377 at railo.runtime.ComponentImpl._call(ComponentImpl.java:609):609 at railo.runtime.ComponentImpl._call(ComponentImpl.java:495):495 at railo.runtime.ComponentImpl.callWithNamedValues(ComponentImpl.java:1808):1808 at railo.runtime.tag.Invoke.doComponent(Invoke.java:210):210 at railo.runtime.tag.Invoke.doEndTag(Invoke.java:183):183 at cftracker.framework_cfc$cf.udfCall6(C:\railo\tomcat\webapps\ROOT\cftracker\framework.cfc:1274):1274 at cftracker.framework_cfc$cf.udfCall(C:\railo\tomcat\webapps\ROOT\cftracker\framework.cfc):-1 at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:215):215 at railo.runtime.type.UDFImpl._call(UDFImpl.java:434):434 at railo.runtime.type.UDFImpl.call(UDFImpl.java:384):384 at railo.runtime.util.VariableUtilImpl.callFunctionWithoutNamedValues(VariableUtilImpl.java:738):738 at railo.runtime.PageContextImpl.getFunction(PageContextImpl.java:1445):1445 at cftracker.framework_cfc$cf.udfCall3(C:\railo\tomcat\webapps\ROOT\cftracker\framework.cfc:492):492 at cftracker.framework_cfc$cf.udfCall(C:\railo\tomcat\webapps\ROOT\cftracker\framework.cfc):-1 at railo.runtime.type.UDFImpl.implementation(UDFImpl.java:215):215 at railo.runtime.type.UDFImpl._call(UDFImpl.java:434):434 at railo.runtime.type.UDFImpl.call(UDFImpl.java:384):384 at railo.runtime.ComponentImpl._call(ComponentImpl.java:608):608 at railo.runtime.ComponentImpl._call(ComponentImpl.java:495):495 at railo.runtime.ComponentImpl.call(ComponentImpl.java:1793):1793 at railo.runtime.listener.ModernAppListener.call(ModernAppListener.java:348):348 at railo.runtime.listener.ModernAppListener._onRequest(ModernAppListener.java:174):174 at railo.runtime.listener.MixedAppListener.onRequest(MixedAppListener.java:23):23 at railo.runtime.PageContextImpl.execute(PageContextImpl.java:2000):2000 at railo.runtime.PageContextImpl.execute(PageContextImpl.java:1967):1967 at railo.runtime.engine.CFMLEngineImpl.serviceCFML(CFMLEngineImpl.java:297):297 at railo.loader.servlet.CFMLServlet.service(CFMLServlet.java:32):32 at javax.servlet.http.HttpServlet.service(HttpServlet.java:717):717 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290):290 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206):206 at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233):233 at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191):191 at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127):127 at com.googlecode.psiprobe.Tomcat60AgentValve.invoke(Tomcat60AgentValve.java:30):30 at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102):102 at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109):109 at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298):298 at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:864):864 at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:579):579 at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1665):1665 at java.lang.Thread.run(Unknown Source):-1
TagContext
Array
1
Struct
codePrintHTML
string184: lc.gcInfo = variables.jGarbage[lc.i].getLastGcInfo();<br> 185: lc.usage = {<br> <b>186: before = lc.gcInfo.getMemoryUsageBeforeGc(),</b><br> 187: after = lc.gcInfo.getMemoryUsageAfterGc()<br> 188: };<br>
codePrintPlain
string184: lc.gcInfo = variables.jGarbage[lc.i].getLastGcInfo(); 185: lc.usage = { 186: before = lc.gcInfo.getMemoryUsageBeforeGc(), 187: after = lc.gcInfo.getMemoryUsageAfterGc() 188: };
column
number0
id
string??
line
number186
raw_trace
stringcftracker.services.cftracker.stats_cfc$cf.udfCall1(C:\railo\tomcat\webapps\ROOT\cftracker\services\cftracker\stats.cfc:186)
template
stringC:\railo\tomcat\webapps\ROOT\cftracker\services\cftracker\stats.cfc
type
stringcfml
2
Struct
codePrintHTML
string17: lc.data = {<br> 18: memory = variables.statsTracker.getMemory(),<br> <b>19: garbage = variables.statsTracker.getGarbage()</b><br> 20: };<br> 21: return lc.data;<br>
codePrintPlain
string17: lc.data = { 18: memory = variables.statsTracker.getMemory(), 19: garbage = variables.statsTracker.getGarbage() 20: }; 21: return lc.data;
column
number0
id
string??
line
number19
raw_trace
stringcftracker.services.memory_cfc$cf.udfCall(C:\railo\tomcat\webapps\ROOT\cftracker\services\memory.cfc:19)
template
stringC:\railo\tomcat\webapps\ROOT\cftracker\services\memory.cfc
type
stringcfml
3
Struct
codePrintHTML
string1272: &lt;cfset structAppend( arguments.args, request.context, false ) /&gt;<br> 1273: &lt;cfinvoke component=&quot;#arguments.cfc#&quot; method=&quot;#arguments.method#&quot;<br> <b>1274: argumentCollection=&quot;#arguments.args#&quot; returnVariable=&quot;_result_fw1&quot; /&gt;</b><br> 1275: &lt;cfcatch type=&quot;any&quot;&gt;<br> 1276: &lt;cfset setCfcMethodFailureInfo( arguments.cfc, arguments.method ) /&gt;<br>
codePrintPlain
string1272: <cfset structAppend( arguments.args, request.context, false ) /> 1273: <cfinvoke component="#arguments.cfc#" method="#arguments.method#" 1274: argumentCollection="#arguments.args#" returnVariable="_result_fw1" /> 1275: <cfcatch type="any"> 1276: <cfset setCfcMethodFailureInfo( arguments.cfc, arguments.method ) />
column
number0
id
string??
line
number1274
raw_trace
stringcftracker.framework_cfc$cf.udfCall6(C:\railo\tomcat\webapps\ROOT\cftracker\framework.cfc:1274)
template
stringC:\railo\tomcat\webapps\ROOT\cftracker\framework.cfc
type
stringcfml
4
Struct
codePrintHTML
string490: doService( tuple.service, tuple.item, tuple.args, tuple.enforceExistence );<br> 491: } else {<br> <b>492: _data_fw1 = doService( tuple.service, tuple.item, tuple.args, tuple.enforceExistence );</b><br> 493: if ( isDefined('_data_fw1') ) {<br> 494: request.context[ tuple.key ] = _data_fw1;<br>
codePrintPlain
string490: doService( tuple.service, tuple.item, tuple.args, tuple.enforceExistence ); 491: } else { 492: _data_fw1 = doService( tuple.service, tuple.item, tuple.args, tuple.enforceExistence ); 493: if ( isDefined('_data_fw1') ) { 494: request.context[ tuple.key ] = _data_fw1;
column
number0
id
string??
line
number492
raw_trace
stringcftracker.framework_cfc$cf.udfCall3(C:\railo\tomcat\webapps\ROOT\cftracker\framework.cfc:492)
template
stringC:\railo\tomcat\webapps\ROOT\cftracker\framework.cfc
type
stringcfml
type
stringexpression

Michael Offner

unread,
Jan 24, 2012, 1:40:55 PM1/24/12
to ra...@googlegroups.com
Error message says nothing about cfid?

/micha

Vo mim iPad gschickt

Jamie Pate

unread,
Jan 24, 2012, 2:24:13 PM1/24/12
to ra...@googlegroups.com
no, it says "key [SOMEKEY] doesn't exist struct (keys:SOMEKEY,ANOTHERKEY,SOMEOTHERKEY,ETC)"

(in this case it's GCINFO)
which is the same bizzare issue 

Matt Quackenbush

unread,
Jan 24, 2012, 2:27:37 PM1/24/12
to ra...@googlegroups.com
It almost certainly means that GCINFO is NULL.

jpate

unread,
Jan 24, 2012, 2:29:45 PM1/24/12
to ra...@googlegroups.com
right, aduh...

stupid coldfusion. you'd think railo would at least change that error message to tell the truth ;)

Peter Boughton

unread,
Jan 24, 2012, 2:36:32 PM1/24/12
to ra...@googlegroups.com
Jamie wrote:
> no, it says "key [SOMEKEY] doesn't exist struct (keys:SOMEKEY,ANOTHERKEY,SOMEOTHERKEY,ETC)"
>
> (in this case it's GCINFO) which is the same bizzare issue

No, it's NOT the same - key X doesn't exist in struct is a VERY
generic error message that could occur for countless different
reasons.

The original message was about CFID not being defined in the CLIENT
scope, the issue there being related to Railo's client management.


What you've got is entirely unrelated, and concerns cfTracker doing
memory usage tests and whether GCINFO is defined or not, and most
likely is something that needs to be fixed in cfTracker, not Railo,
which means raising an issue here:
https://github.com/misterdai/cfTracker/issues

jpate

unread,
Jan 24, 2012, 4:10:26 PM1/24/12
to ra...@googlegroups.com
I realize now this has nothing to do with the topic, but it is the exact same error message, I was concerned there was a flaw with the struct handling because the error message is logically inconsistent

I also realize it's a cftracker issue, the current release and rc versions both have issues with railo

CFTRACKER itself seems to be in a bit of a transition period and I was waiting until the dust settled to put in any issues (but this was my plan from the start)

Thanks for your help, I should have clued in on this and remembered coldfusion's horrible lack of grasp on NULL values since I'd encountered it before.

Speaking of this topic, are you sure that CLIENT.CFID is not NULL? just saying ;)

David Boyer

unread,
Mar 7, 2012, 9:09:58 AM3/7/12
to ra...@googlegroups.com
I'm the developer behind CFTracker, you're right about the Railo support having issues in the current releases.  Testing it always a bit tricky with all the engine and version differences when it comes to an application like this, since it digs into engine internals.  Although I always tried to run through and make sure things worked, there's always the odd issue with null's in places where I haven't allowed for them.  Currently banging my head against various walls with a rewrite (to be version 3), where any Railo specific code will be self contained enough for others to easily test and fix ;)
Reply all
Reply to author
Forward
0 new messages