Re: Caching cfc objects in the application scope

2003-08-17 Thread Sean A Corfield
Did this get fixed by CFMX 6.1?

On Tuesday, Jul 8, 2003, at 03:20 US/Pacific, Raymond Camden wrote:


 On Monday, Jul 7, 2003, at 06:49 US/Pacific, Raymond Camden wrote:
 Ok, so I ran the test using the server scope and was able
 to reproduce
 the problems there as well. Very odd that it didn't show up on your
 end.

 Well, that's good to know (in a way). Could it perhaps... possibly...
 be some sort of coding error somewhere in the app? Just a thought.



 A coding error! How dare you! ;) Seriously, I did check things quite
 carefully, and the issue was replicated by MACR, so, unless we _both_
 missed a simple error, it shouldn't be that. If you want, download
 blog.cfc from my blog and take a look at addCOmment. That would throw  
 an
 error when calling getComments(), the error being that getComments did
 not exist as a function. The method works fine when the CFC is not
 cached, and works fine _most_ of the time when cached.

 === 
 =
 ===
 Raymond Camden, ColdFusion Jedi Master for Mindseye, Inc
 (www.mindseye.com)
 Member of Team Macromedia (http://www.macromedia.com/go/teammacromedia)

 Email: [EMAIL PROTECTED]
 Blog : www.camdenfamily.com/morpheus/blog
 Yahoo IM : morpheus

 My ally is the Force, and a powerful ally it is. - Yoda

~|
Archives: http://www.houseoffusion.com/lists.cfm?link=t:4
Subscription: http://www.houseoffusion.com/lists.cfm?link=s:4
Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4

Get the mailserver that powers this list at 
http://www.coolfusion.com


RE: Caching cfc objects in the application scope

2003-08-17 Thread Raymond Camden
Oh yea.


===
Raymond Camden, ColdFusion Jedi Master for Mindseye, Inc
(www.mindseye.com)
Member of Team Macromedia (http://www.macromedia.com/go/teammacromedia)

Email: [EMAIL PROTECTED]
Blog : www.camdenfamily.com/morpheus/blog
Yahoo IM : morpheus

My ally is the Force, and a powerful ally it is. - Yoda 

 -Original Message-
 From: Sean A Corfield [mailto:[EMAIL PROTECTED] 
 Sent: Sunday, August 17, 2003 12:37 PM
 To: CF-Talk
 Subject: Re: Caching cfc objects in the application scope
 
 
 Did this get fixed by CFMX 6.1?
 
 On Tuesday, Jul 8, 2003, at 03:20 US/Pacific, Raymond Camden wrote:
 
 
  On Monday, Jul 7, 2003, at 06:49 US/Pacific, Raymond Camden wrote:
  Ok, so I ran the test using the server scope and was able
  to reproduce
  the problems there as well. Very odd that it didn't show 
 up on your 
  end.
 
  Well, that's good to know (in a way). Could it perhaps... 
 possibly... 
  be some sort of coding error somewhere in the app? Just a thought.
 
 
 
  A coding error! How dare you! ;) Seriously, I did check 
 things quite 
  carefully, and the issue was replicated by MACR, so, unless 
 we _both_ 
  missed a simple error, it shouldn't be that. If you want, download 
  blog.cfc from my blog and take a look at addCOmment. That 
 would throw
  an
  error when calling getComments(), the error being that 
 getComments did
  not exist as a function. The method works fine when the CFC is not
  cached, and works fine _most_ of the time when cached.
 
  
 ==
  =
  =
  ===
  Raymond Camden, ColdFusion Jedi Master for Mindseye, Inc
  (www.mindseye.com)
  Member of Team Macromedia 
 (http://www.macromedia.com/go/teammacromedia)
 
  Email: 
 [EMAIL PROTECTED]
  Blog : www.camdenfamily.com/morpheus/blog
  Yahoo IM : morpheus
 
  My ally is the Force, and a powerful ally it is. - Yoda
 
 
~|
Archives: http://www.houseoffusion.com/lists.cfm?link=t:4
Subscription: http://www.houseoffusion.com/lists.cfm?link=s:4
Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4

Get the mailserver that powers this list at 
http://www.coolfusion.com


RE: Caching cfc objects in the application scope

2003-07-08 Thread Raymond Camden
 
 On Monday, Jul 7, 2003, at 06:49 US/Pacific, Raymond Camden wrote:
  Ok, so I ran the test using the server scope and was able 
 to reproduce 
  the problems there as well. Very odd that it didn't show up on your 
  end.
 
 Well, that's good to know (in a way). Could it perhaps... possibly... 
 be some sort of coding error somewhere in the app? Just a thought.
 


A coding error! How dare you! ;) Seriously, I did check things quite
carefully, and the issue was replicated by MACR, so, unless we _both_
missed a simple error, it shouldn't be that. If you want, download
blog.cfc from my blog and take a look at addCOmment. That would throw an
error when calling getComments(), the error being that getComments did
not exist as a function. The method works fine when the CFC is not
cached, and works fine _most_ of the time when cached.


===
Raymond Camden, ColdFusion Jedi Master for Mindseye, Inc
(www.mindseye.com)
Member of Team Macromedia (http://www.macromedia.com/go/teammacromedia)

Email: [EMAIL PROTECTED]
Blog : www.camdenfamily.com/morpheus/blog
Yahoo IM : morpheus

My ally is the Force, and a powerful ally it is. - Yoda 

~|
Archives: http://www.houseoffusion.com/cf_lists/index.cfm?forumid=4
Subscription: 
http://www.houseoffusion.com/cf_lists/index.cfm?method=subscribeforumid=4
FAQ: http://www.thenetprofits.co.uk/coldfusion/faq

Your ad could be here. Monies from ads go to support these lists and provide more 
resources for the community. 
http://www.fusionauthority.com/ads.cfm

Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4



RE: Caching cfc objects in the application scope

2003-07-08 Thread Barney Boisvert
Ray, when I was experiencing the problem with your blog, the error happened
consistently every time.  I tried refreshing the form POST numerous times
and it errored every time.  I probably refreshed 5 times immediately, and
then left the window open and refreshed it around 5 more times over the next
hour or so.  That seems like it's WAY to consistent to be a sporadic issue
from caching.

barneyb

---
Barney Boisvert, Senior Development Engineer
AudienceCentral
[EMAIL PROTECTED]
voice : 360.756.8080 x12
fax   : 360.647.5351

www.audiencecentral.com


 -Original Message-
 From: Raymond Camden [mailto:[EMAIL PROTECTED]
 Sent: Tuesday, July 08, 2003 3:20 AM
 To: CF-Talk
 Subject: RE: Caching cfc objects in the application scope


 
  On Monday, Jul 7, 2003, at 06:49 US/Pacific, Raymond Camden wrote:
   Ok, so I ran the test using the server scope and was able
  to reproduce
   the problems there as well. Very odd that it didn't show up on your
   end.
 
  Well, that's good to know (in a way). Could it perhaps... possibly...
  be some sort of coding error somewhere in the app? Just a thought.
 
 

 A coding error! How dare you! ;) Seriously, I did check things quite
 carefully, and the issue was replicated by MACR, so, unless we _both_
 missed a simple error, it shouldn't be that. If you want, download
 blog.cfc from my blog and take a look at addCOmment. That would throw an
 error when calling getComments(), the error being that getComments did
 not exist as a function. The method works fine when the CFC is not
 cached, and works fine _most_ of the time when cached.

 
 ===
 Raymond Camden, ColdFusion Jedi Master for Mindseye, Inc
 (www.mindseye.com)
 Member of Team Macromedia (http://www.macromedia.com/go/teammacromedia)

 Email: [EMAIL PROTECTED]
 Blog : www.camdenfamily.com/morpheus/blog
 Yahoo IM : morpheus

 My ally is the Force, and a powerful ally it is. - Yoda

---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.497 / Virus Database: 296 - Release Date: 7/4/2003

~|
Archives: http://www.houseoffusion.com/cf_lists/index.cfm?forumid=4
Subscription: 
http://www.houseoffusion.com/cf_lists/index.cfm?method=subscribeforumid=4
FAQ: http://www.thenetprofits.co.uk/coldfusion/faq

Your ad could be here. Monies from ads go to support these lists and provide more 
resources for the community. 
http://www.fusionauthority.com/ads.cfm

Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4



RE: Caching cfc objects in the application scope

2003-07-07 Thread Raymond Camden
Since your error was here: 

cfset
returnstruct.cleanedstring=listappend(returnstruct.cleanedstring,x[5])

I'd check this line cfset x=listtoarray(descriptlistArray[x])

are you _sure_ descriptlistArray[x] is always a list with N items? Can
you show us your code as it is now?


===
Raymond Camden, ColdFusion Jedi Master for Mindseye, Inc
(www.mindseye.com)
Member of Team Macromedia (http://www.macromedia.com/go/teammacromedia)

Email: [EMAIL PROTECTED]
Blog : www.camdenfamily.com/morpheus/blog
Yahoo IM : morpheus

My ally is the Force, and a powerful ally it is. - Yoda 

 -Original Message-
 From: Brook Davies [mailto:[EMAIL PROTECTED] 
 Sent: Sunday, July 06, 2003 4:40 PM
 To: CF-Talk
 Subject: RE: Caching cfc objects in the application scope
 
 
 Raymond,
 
 In this code here the array is only populated in the first 
 position. So it 
 would once loop once. I did however change the counter/index 
 to a variable 
 that is not used inside the loop just to be on the safe side. 
 But this code 
 does work some times and then some times it generates the 
 error I mentioned 
 yesterday.
 
 Brook
 
 At 06:58 AM 7/6/2003 -0500, you wrote:
 So, I did a quick test, and while I didn't get an error, the 
 use of x 
 inside the loop confuses the loop counter and the loop runs 
 once, not 
 twice.
 
 cfset descriptlistarray = arrayNew(1)
 cfset descriptlistarray[1] = f,g,a,a,a
 cfset descriptlistarray[1] = z,g,a,a,a
 
 cfset ret = structNew()
 cfset ret.cleanedstring =
 cfloop from=1 to=#arraylen(descriptlistArray)#  index=x
!--- convert the form element descript to an array ---
cfset x=listtoarray(descriptlistArray[x])
 
!--- more code here ---
  cfoutputx5 = #x[5]#/cfoutput
cfset 
 ret.cleanedstring=listappend(ret.cleanedstring,x[5])
   /cfloop
 
 So, like I said, the main thing you want to do is change to a new 
 variable inside the loop AND make sure that descriptlist[x] 
 is a list 
 w/ at least 5 members.
 
 

 
   -Original Message-
   From: Raymond Camden [mailto:[EMAIL PROTECTED]
   Sent: Sunday, July 06, 2003 5:51 AM
   To: CF-Talk
   Subject: RE: Caching cfc objects in the application scope
  
  
   That's what confuses me - if the code did create an 
 error, it should 
   do it every single time, that is, of course, assuming that this 
   branch of code is running everytime. Something else to 
 consider, you 
   use the 5th item in the array, are you checking to make sure 
   arrayLen is gte 5?
  

-Original Message-
From: Brook Davies [mailto:[EMAIL PROTECTED]
Sent: Saturday, July 05, 2003 10:46 PM
To: CF-Talk
Subject: RE: Caching cfc objects in the application scope
   
   
Right, good catch. I guess thats whats causing the 
 error. But why 
should it? And why would it only cause an error sometimes?
   
Brook
   
 

  -Original Message-
  From: Brook Davies [mailto:[EMAIL PROTECTED]
  Sent: Saturday, July 05, 2003 10:30 PM
  To: CF-Talk
  Subject: Re: Caching cfc objects in the application scope




~|
Archives: http://www.houseoffusion.com/cf_lists/index.cfm?forumid=4
Subscription: 
http://www.houseoffusion.com/cf_lists/index.cfm?method=subscribeforumid=4
FAQ: http://www.thenetprofits.co.uk/coldfusion/faq

Your ad could be here. Monies from ads go to support these lists and provide more 
resources for the community. 
http://www.fusionauthority.com/ads.cfm

Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4



RE: Caching cfc objects in the application scope

2003-07-07 Thread Raymond Camden
Ok, so I ran the test using the server scope and was able to reproduce
the problems there as well. Very odd that it didn't show up on your end.


===
Raymond Camden, ColdFusion Jedi Master for Mindseye, Inc
(www.mindseye.com)
Member of Team Macromedia (http://www.macromedia.com/go/teammacromedia)

Email: [EMAIL PROTECTED]
Blog : www.camdenfamily.com/morpheus/blog
Yahoo IM : morpheus

My ally is the Force, and a powerful ally it is. - Yoda 

 -Original Message-
 From: Sean A Corfield [mailto:[EMAIL PROTECTED] 
 Sent: Friday, July 04, 2003 11:56 PM
 To: CF-Talk
 Subject: Re: Caching cfc objects in the application scope
 
 
 On Friday, Jul 4, 2003, at 22:03 US/Pacific, Raymond Camden wrote:
  While I agree that the load I encountered was minimal, the 
 odd thing 
  is that I _was_ able to recreate it, but only using a load 
 tool like 
  MS WAST (is that the name) and the Apache one (can't remember it's 
  name as well). As soon as I'd put the sites under load, the errors 
  would show up. Now, these two tools did _real_ load, not the load I 
  normally would get on cflib. Maybe the machine simply isn't that 
  great.
 
 Hmm, I don't know what to say. We used WAST (Web Application Stress 
 Tool) and Segue's Silk Performer to generate outrageously high load 
 without seeing these sorts of failures (the Apache tool is 'ab' - 
 Apache Bench). We have really high load normally and don't 
 see it. I'm 
 intrigued. I can't imagine how or why such errors would occur - even 
 under load - so I'll be really interested to see how this pans out...
 
  Server scope: Today was a holiday ya know. ;) I'm going to 
 try, just 
  later.
 
 Yeah, yeah... Like we've all really got better things to do when the 
 office is shut? I'm on two week's vacation but I'm still messing with 
 programs :) But right now I'll go back to my Anita Blake book (by 
 Laurell K Hamilton)...
 
 Sean A Corfield -- http://www.corfield.org/blog/



~|
Archives: http://www.houseoffusion.com/cf_lists/index.cfm?forumid=4
Subscription: 
http://www.houseoffusion.com/cf_lists/index.cfm?method=subscribeforumid=4
FAQ: http://www.thenetprofits.co.uk/coldfusion/faq

Signup for the Fusion Authority news alert and keep up with the latest news in 
ColdFusion and related topics. 
http://www.fusionauthority.com/signup.cfm

Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4



Re: Caching cfc objects in the application scope

2003-07-07 Thread Sean A Corfield
On Monday, Jul 7, 2003, at 06:49 US/Pacific, Raymond Camden wrote:
 Ok, so I ran the test using the server scope and was able to reproduce
 the problems there as well. Very odd that it didn't show up on your 
 end.

Well, that's good to know (in a way). Could it perhaps... possibly... 
be some sort of coding error somewhere in the app? Just a thought.

As I said:
 I'm
 intrigued. I can't imagine how or why such errors would occur - even
 under load - so I'll be really interested to see how this pans out...

Sean A Corfield -- http://www.corfield.org/blog/

If you're not annoying somebody, you're not really alive.
-- Margaret Atwood

~|
Archives: http://www.houseoffusion.com/cf_lists/index.cfm?forumid=4
Subscription: 
http://www.houseoffusion.com/cf_lists/index.cfm?method=subscribeforumid=4
FAQ: http://www.thenetprofits.co.uk/coldfusion/faq

Your ad could be here. Monies from ads go to support these lists and provide more 
resources for the community. 
http://www.fusionauthority.com/ads.cfm

Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4



RE: Caching cfc objects in the application scope

2003-07-06 Thread Raymond Camden
That's what confuses me - if the code did create an error, it should do
it every single time, that is, of course, assuming that this branch of
code is running everytime. Something else to consider, you use the 5th
item in the array, are you checking to make sure arrayLen is gte 5?


===
Raymond Camden, ColdFusion Jedi Master for Mindseye, Inc
(www.mindseye.com)
Member of Team Macromedia (http://www.macromedia.com/go/teammacromedia)

Email: [EMAIL PROTECTED]
Blog : www.camdenfamily.com/morpheus/blog
Yahoo IM : morpheus

My ally is the Force, and a powerful ally it is. - Yoda 

 -Original Message-
 From: Brook Davies [mailto:[EMAIL PROTECTED] 
 Sent: Saturday, July 05, 2003 10:46 PM
 To: CF-Talk
 Subject: RE: Caching cfc objects in the application scope
 
 
 Right, good catch. I guess thats whats causing the error. But 
 why should 
 it? And why would it only cause an error sometimes?
 
 Brook
 
 
 or i or something, just be sure to use a var statement as well.
 
 =
 ==
 =
 ===
 Raymond Camden, ColdFusion Jedi Master for Mindseye, Inc
 (www.mindseye.com)
 Member of Team Macromedia 
 (http://www.macromedia.com/go/teammacromedia)
 
 Email: [EMAIL PROTECTED]
 Blog : www.camdenfamily.com/morpheus/blog
 Yahoo IM : morpheus
 
 My ally is the Force, and a powerful ally it is. - Yoda
 
   -Original Message-
   From: Brook Davies [mailto:[EMAIL PROTECTED]
   Sent: Saturday, July 05, 2003 10:30 PM
   To: CF-Talk
   Subject: Re: Caching cfc objects in the application scope
  
  
   Hi Sean,
  
   The code (at line 78)  is inside a cfloop. Prior to the 
 cfloop,  I 
   initialize this local var (at the top of the method):
  
   cfset var returnstruct=structnew()
   cfset  returnstruct.cleanedstring=
  
   Then the cfloop looks like this:
  
   cfloop from=1 to=#arraylen(descriptlistArray)#  index=x
!--- convert the form element descript to an array ---
cfset x=listtoarray(descriptlistArray[x])
  
!--- more code here ---
Then comes line 78:
  
cfset 
   returnstruct.cleanedstring=listappend(returnstruct.cleanedstri
   ng,x[5])
   /cfloop
  
  
   It works about 99% of the time and maybe 1 out of 1000 times this 
   code is executed it generates the error shown below. I 
 included some
   of the other
   code so you could see that their is in fact an Array 
 named x and a
   structure named returnstruct. What do you think?
  
   Brook
  
  
  
  
  
  
  
  
  
  
  
   At 08:50 PM 7/5/2003 -0700, you wrote:
   On Saturday, Jul 5, 2003, at 18:04 US/Pacific, Brook 
 Davies wrote:
 You have attempted to dereference a scalar variable of type 
 class java.lang.Double as a structure with members. brThe
   error occurred
 on line 78.
   
   I'd be interested to see the code around line 78...
   
   Sean A Corfield -- http://www.corfield.org/blog/
   
   If you're not annoying somebody, you're not really alive.
   -- Margaret Atwood
   
   
  
 
 
~|
Archives: http://www.houseoffusion.com/cf_lists/index.cfm?forumid=4
Subscription: 
http://www.houseoffusion.com/cf_lists/index.cfm?method=subscribeforumid=4
FAQ: http://www.thenetprofits.co.uk/coldfusion/faq

Get the mailserver that powers this list at 
http://www.coolfusion.com

Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4



RE: Caching cfc objects in the application scope

2003-07-06 Thread Raymond Camden
So, I did a quick test, and while I didn't get an error, the use of x
inside the loop confuses the loop counter and the loop runs once, not
twice.

cfset descriptlistarray = arrayNew(1)
cfset descriptlistarray[1] = f,g,a,a,a
cfset descriptlistarray[1] = z,g,a,a,a

cfset ret = structNew()
cfset ret.cleanedstring =
cfloop from=1 to=#arraylen(descriptlistArray)#  index=x
  !--- convert the form element descript to an array ---
  cfset x=listtoarray(descriptlistArray[x])

  !--- more code here ---
cfoutputx5 = #x[5]#/cfoutput
  cfset ret.cleanedstring=listappend(ret.cleanedstring,x[5])
 /cfloop

So, like I said, the main thing you want to do is change to a new
variable inside the loop AND make sure that descriptlist[x] is a list w/
at least 5 members.



===
Raymond Camden, ColdFusion Jedi Master for Mindseye, Inc
(www.mindseye.com)
Member of Team Macromedia (http://www.macromedia.com/go/teammacromedia)

Email: [EMAIL PROTECTED]
Blog : www.camdenfamily.com/morpheus/blog
Yahoo IM : morpheus

My ally is the Force, and a powerful ally it is. - Yoda 

 -Original Message-
 From: Raymond Camden [mailto:[EMAIL PROTECTED] 
 Sent: Sunday, July 06, 2003 5:51 AM
 To: CF-Talk
 Subject: RE: Caching cfc objects in the application scope
 
 
 That's what confuses me - if the code did create an error, it 
 should do it every single time, that is, of course, assuming 
 that this branch of code is running everytime. Something else 
 to consider, you use the 5th item in the array, are you 
 checking to make sure arrayLen is gte 5?
 
 ==
 ==
 ===
 Raymond Camden, ColdFusion Jedi Master for Mindseye, Inc
 (www.mindseye.com)
 Member of Team Macromedia 
 (http://www.macromedia.com/go/teammacromedia)
 
 Email: [EMAIL PROTECTED]
 Blog : www.camdenfamily.com/morpheus/blog
 Yahoo IM : morpheus
 
 My ally is the Force, and a powerful ally it is. - Yoda 
 
  -Original Message-
  From: Brook Davies [mailto:[EMAIL PROTECTED]
  Sent: Saturday, July 05, 2003 10:46 PM
  To: CF-Talk
  Subject: RE: Caching cfc objects in the application scope
  
  
  Right, good catch. I guess thats whats causing the error. But
  why should 
  it? And why would it only cause an error sometimes?
  
  Brook
  
  
  or i or something, just be sure to use a var statement as well.
  
  =
  ==
  =
  ===
  Raymond Camden, ColdFusion Jedi Master for Mindseye, Inc
  (www.mindseye.com)
  Member of Team Macromedia
  (http://www.macromedia.com/go/teammacromedia)
  
  Email: [EMAIL PROTECTED]
  Blog : www.camdenfamily.com/morpheus/blog
  Yahoo IM : morpheus
  
  My ally is the Force, and a powerful ally it is. - Yoda
  
-Original Message-
From: Brook Davies [mailto:[EMAIL PROTECTED]
Sent: Saturday, July 05, 2003 10:30 PM
To: CF-Talk
Subject: Re: Caching cfc objects in the application scope
   
   
Hi Sean,
   
The code (at line 78)  is inside a cfloop. Prior to the
  cfloop,  I
initialize this local var (at the top of the method):
   
cfset var returnstruct=structnew()
cfset  returnstruct.cleanedstring=
   
Then the cfloop looks like this:
   
cfloop from=1 to=#arraylen(descriptlistArray)#  index=x
 !--- convert the form element descript to an 
 array ---
 cfset x=listtoarray(descriptlistArray[x])
   
 !--- more code here ---
 Then comes line 78:
   
 cfset
returnstruct.cleanedstring=listappend(returnstruct.cleanedstri
ng,x[5])
/cfloop
   
   
It works about 99% of the time and maybe 1 out of 1000 
 times this
code is executed it generates the error shown below. I 
  included some
of the other
code so you could see that their is in fact an Array
  named x and a
structure named returnstruct. What do you think?
   
Brook
   
   
   
   
   
   
   
   
   
   
   
At 08:50 PM 7/5/2003 -0700, you wrote:
On Saturday, Jul 5, 2003, at 18:04 US/Pacific, Brook
  Davies wrote:
  You have attempted to dereference a scalar variable of type
  class java.lang.Double as a structure with members. brThe
error occurred
  on line 78.

I'd be interested to see the code around line 78...

Sean A Corfield -- http://www.corfield.org/blog/

If you're not annoying somebody, you're not really alive.
-- Margaret Atwood


   
  
  
 
~|
Archives: http://www.houseoffusion.com/cf_lists/index.cfm?forumid=4
Subscription: 
http://www.houseoffusion.com/cf_lists/index.cfm?method=subscribeforumid=4
FAQ: http://www.thenetprofits.co.uk/coldfusion/faq

Signup for the Fusion Authority news alert and keep up with the latest news

RE: Caching cfc objects in the application scope

2003-07-06 Thread Brook Davies
Raymond,

In this code here the array is only populated in the first position. So it 
would once loop once. I did however change the counter/index to a variable 
that is not used inside the loop just to be on the safe side. But this code 
does work some times and then some times it generates the error I mentioned 
yesterday.

Brook

At 06:58 AM 7/6/2003 -0500, you wrote:
So, I did a quick test, and while I didn't get an error, the use of x
inside the loop confuses the loop counter and the loop runs once, not
twice.

cfset descriptlistarray = arrayNew(1)
cfset descriptlistarray[1] = f,g,a,a,a
cfset descriptlistarray[1] = z,g,a,a,a

cfset ret = structNew()
cfset ret.cleanedstring =
cfloop from=1 to=#arraylen(descriptlistArray)#  index=x
   !--- convert the form element descript to an array ---
   cfset x=listtoarray(descriptlistArray[x])

   !--- more code here ---
 cfoutputx5 = #x[5]#/cfoutput
   cfset ret.cleanedstring=listappend(ret.cleanedstring,x[5])
  /cfloop

So, like I said, the main thing you want to do is change to a new
variable inside the loop AND make sure that descriptlist[x] is a list w/
at least 5 members.



===
Raymond Camden, ColdFusion Jedi Master for Mindseye, Inc
(www.mindseye.com)
Member of Team Macromedia (http://www.macromedia.com/go/teammacromedia)

Email: [EMAIL PROTECTED]
Blog : www.camdenfamily.com/morpheus/blog
Yahoo IM : morpheus

My ally is the Force, and a powerful ally it is. - Yoda

  -Original Message-
  From: Raymond Camden [mailto:[EMAIL PROTECTED]
  Sent: Sunday, July 06, 2003 5:51 AM
  To: CF-Talk
  Subject: RE: Caching cfc objects in the application scope
 
 
  That's what confuses me - if the code did create an error, it
  should do it every single time, that is, of course, assuming
  that this branch of code is running everytime. Something else
  to consider, you use the 5th item in the array, are you
  checking to make sure arrayLen is gte 5?
 
  ==
  ==
  ===
  Raymond Camden, ColdFusion Jedi Master for Mindseye, Inc
  (www.mindseye.com)
  Member of Team Macromedia
  (http://www.macromedia.com/go/teammacromedia)
 
  Email: [EMAIL PROTECTED]
  Blog : www.camdenfamily.com/morpheus/blog
  Yahoo IM : morpheus
 
  My ally is the Force, and a powerful ally it is. - Yoda
 
   -Original Message-
   From: Brook Davies [mailto:[EMAIL PROTECTED]
   Sent: Saturday, July 05, 2003 10:46 PM
   To: CF-Talk
   Subject: RE: Caching cfc objects in the application scope
  
  
   Right, good catch. I guess thats whats causing the error. But
   why should
   it? And why would it only cause an error sometimes?
  
   Brook
  
  
   or i or something, just be sure to use a var statement as well.
   
   =
   ==
   =
   ===
   Raymond Camden, ColdFusion Jedi Master for Mindseye, Inc
   (www.mindseye.com)
   Member of Team Macromedia
   (http://www.macromedia.com/go/teammacromedia)
   
   Email: [EMAIL PROTECTED]
   Blog : www.camdenfamily.com/morpheus/blog
   Yahoo IM : morpheus
   
   My ally is the Force, and a powerful ally it is. - Yoda
   
 -Original Message-
 From: Brook Davies [mailto:[EMAIL PROTECTED]
 Sent: Saturday, July 05, 2003 10:30 PM
 To: CF-Talk
 Subject: Re: Caching cfc objects in the application scope


 Hi Sean,

 The code (at line 78)  is inside a cfloop. Prior to the
   cfloop,  I
 initialize this local var (at the top of the method):

 cfset var returnstruct=structnew()
 cfset  returnstruct.cleanedstring=

 Then the cfloop looks like this:

 cfloop from=1 to=#arraylen(descriptlistArray)#  index=x
  !--- convert the form element descript to an
  array ---
  cfset x=listtoarray(descriptlistArray[x])

  !--- more code here ---
  Then comes line 78:

  cfset
 returnstruct.cleanedstring=listappend(returnstruct.cleanedstri
 ng,x[5])
 /cfloop


 It works about 99% of the time and maybe 1 out of 1000
  times this
 code is executed it generates the error shown below. I
   included some
 of the other
 code so you could see that their is in fact an Array
   named x and a
 structure named returnstruct. What do you think?

 Brook











 At 08:50 PM 7/5/2003 -0700, you wrote:
 On Saturday, Jul 5, 2003, at 18:04 US/Pacific, Brook
   Davies wrote:
   You have attempted to dereference a scalar variable of type
   class java.lang.Double as a structure with members. brThe
 error occurred
   on line 78.
 
 I'd be interested to see the code around line 78...
 
 Sean A Corfield -- http://www.corfield.org/blog

RE: Caching cfc objects in the application scope

2003-07-05 Thread Brook Davies
I have a CFC in the application scope that periodically returns this error:

You have attempted to dereference a scalar variable of type class 
java.lang.Double as a structure with members. brThe error occurred on 
line 78.

The CFC works with submitted form variables and copies them to a new 
structure while cleaning them.  The form that is submitted can be 
submitted again and no error will be generated. Then at random intervals, 
this form or some other form will generate this error.

Could this be contributed to the application scope issue? I am going to 
remove this CFC from the application scope and I will write back in a few 
days if I do not see the error again.

Brook

At 12:03 AM 7/5/2003 -0500, you wrote:
 
  Right, which is really very low traffic - that's why I don't
  think it's
  a load issue per se (because we didn't hit any problems under much
  higher load when we were using application scope - we changed
  to server
  scope for most things prior to deployment simply because server scope
  access is marginally faster).
 
  Ray, have you had any success creating a reproducible test case for
  this? Have you tried server scope and shown that the buggy behavior
  does not occur?
 

While I agree that the load I encountered was minimal, the odd thing is
that I _was_ able to recreate it, but only using a load tool like MS
WAST (is that the name) and the Apache one (can't remember it's name as
well). As soon as I'd put the sites under load, the errors would show
up. Now, these two tools did _real_ load, not the load I normally would
get on cflib. Maybe the machine simply isn't that great.

Server scope: Today was a holiday ya know. ;) I'm going to try, just
later.

-ray


~|
Archives: http://www.houseoffusion.com/cf_lists/index.cfm?forumid=4
Subscription: 
http://www.houseoffusion.com/cf_lists/index.cfm?method=subscribeforumid=4
FAQ: http://www.thenetprofits.co.uk/coldfusion/faq

Your ad could be here. Monies from ads go to support these lists and provide more 
resources for the community. 
http://www.fusionauthority.com/ads.cfm

Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4



Re: Caching cfc objects in the application scope

2003-07-05 Thread Brook Davies
Hi Sean,

The code (at line 78)  is inside a cfloop. Prior to the cfloop,  I 
initialize this local var (at the top of the method):

cfset var returnstruct=structnew()
cfset  returnstruct.cleanedstring=

Then the cfloop looks like this:

cfloop from=1 to=#arraylen(descriptlistArray)#  index=x
 !--- convert the form element descript to an array ---
 cfset x=listtoarray(descriptlistArray[x])

 !--- more code here ---
 Then comes line 78:

 cfset 
returnstruct.cleanedstring=listappend(returnstruct.cleanedstring,x[5])
/cfloop


It works about 99% of the time and maybe 1 out of 1000 times this code is 
executed it generates the error shown below. I included some of the other 
code so you could see that their is in fact an Array named x and a 
structure named returnstruct. What do you think?

Brook











At 08:50 PM 7/5/2003 -0700, you wrote:
On Saturday, Jul 5, 2003, at 18:04 US/Pacific, Brook Davies wrote:
  You have attempted to dereference a scalar variable of type class
  java.lang.Double as a structure with members. brThe error occurred on
  line 78.

I'd be interested to see the code around line 78...

Sean A Corfield -- http://www.corfield.org/blog/

If you're not annoying somebody, you're not really alive.
-- Margaret Atwood


~|
Archives: http://www.houseoffusion.com/cf_lists/index.cfm?forumid=4
Subscription: 
http://www.houseoffusion.com/cf_lists/index.cfm?method=subscribeforumid=4
FAQ: http://www.thenetprofits.co.uk/coldfusion/faq

Signup for the Fusion Authority news alert and keep up with the latest news in 
ColdFusion and related topics. 
http://www.fusionauthority.com/signup.cfm

Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4



RE: Caching cfc objects in the application scope

2003-07-05 Thread Raymond Camden
You are using x as both your list countedr AND as your array. While that
may not be the  bug, it's a bad idea. I'd change your loop counter to y
or i or something, just be sure to use a var statement as well.


===
Raymond Camden, ColdFusion Jedi Master for Mindseye, Inc
(www.mindseye.com)
Member of Team Macromedia (http://www.macromedia.com/go/teammacromedia)

Email: [EMAIL PROTECTED]
Blog : www.camdenfamily.com/morpheus/blog
Yahoo IM : morpheus

My ally is the Force, and a powerful ally it is. - Yoda 

 -Original Message-
 From: Brook Davies [mailto:[EMAIL PROTECTED] 
 Sent: Saturday, July 05, 2003 10:30 PM
 To: CF-Talk
 Subject: Re: Caching cfc objects in the application scope
 
 
 Hi Sean,
 
 The code (at line 78)  is inside a cfloop. Prior to the cfloop,  I 
 initialize this local var (at the top of the method):
 
 cfset var returnstruct=structnew()
 cfset  returnstruct.cleanedstring=
 
 Then the cfloop looks like this:
 
 cfloop from=1 to=#arraylen(descriptlistArray)#  index=x
  !--- convert the form element descript to an array ---
  cfset x=listtoarray(descriptlistArray[x])
 
  !--- more code here ---
  Then comes line 78:
 
  cfset 
 returnstruct.cleanedstring=listappend(returnstruct.cleanedstri
 ng,x[5])
 /cfloop
 
 
 It works about 99% of the time and maybe 1 out of 1000 times 
 this code is 
 executed it generates the error shown below. I included some 
 of the other 
 code so you could see that their is in fact an Array named x and a 
 structure named returnstruct. What do you think?
 
 Brook
 
 
 
 
 
 
 
 
 
 
 
 At 08:50 PM 7/5/2003 -0700, you wrote:
 On Saturday, Jul 5, 2003, at 18:04 US/Pacific, Brook Davies wrote:
   You have attempted to dereference a scalar variable of type class 
   java.lang.Double as a structure with members. brThe 
 error occurred 
   on line 78.
 
 I'd be interested to see the code around line 78...
 
 Sean A Corfield -- http://www.corfield.org/blog/
 
 If you're not annoying somebody, you're not really alive.
 -- Margaret Atwood
 
 
 
~|
Archives: http://www.houseoffusion.com/cf_lists/index.cfm?forumid=4
Subscription: 
http://www.houseoffusion.com/cf_lists/index.cfm?method=subscribeforumid=4
FAQ: http://www.thenetprofits.co.uk/coldfusion/faq

Get the mailserver that powers this list at 
http://www.coolfusion.com

Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4



RE: Caching cfc objects in the application scope

2003-07-05 Thread Brook Davies
Right, good catch. I guess thats whats causing the error. But why should 
it? And why would it only cause an error sometimes?

Brook


or i or something, just be sure to use a var statement as well.


===
Raymond Camden, ColdFusion Jedi Master for Mindseye, Inc
(www.mindseye.com)
Member of Team Macromedia (http://www.macromedia.com/go/teammacromedia)

Email: [EMAIL PROTECTED]
Blog : www.camdenfamily.com/morpheus/blog
Yahoo IM : morpheus

My ally is the Force, and a powerful ally it is. - Yoda

  -Original Message-
  From: Brook Davies [mailto:[EMAIL PROTECTED]
  Sent: Saturday, July 05, 2003 10:30 PM
  To: CF-Talk
  Subject: Re: Caching cfc objects in the application scope
 
 
  Hi Sean,
 
  The code (at line 78)  is inside a cfloop. Prior to the cfloop,  I
  initialize this local var (at the top of the method):
 
  cfset var returnstruct=structnew()
  cfset  returnstruct.cleanedstring=
 
  Then the cfloop looks like this:
 
  cfloop from=1 to=#arraylen(descriptlistArray)#  index=x
   !--- convert the form element descript to an array ---
   cfset x=listtoarray(descriptlistArray[x])
 
   !--- more code here ---
   Then comes line 78:
 
   cfset
  returnstruct.cleanedstring=listappend(returnstruct.cleanedstri
  ng,x[5])
  /cfloop
 
 
  It works about 99% of the time and maybe 1 out of 1000 times
  this code is
  executed it generates the error shown below. I included some
  of the other
  code so you could see that their is in fact an Array named x and a
  structure named returnstruct. What do you think?
 
  Brook
 
 
 
 
 
 
 
 
 
 
 
  At 08:50 PM 7/5/2003 -0700, you wrote:
  On Saturday, Jul 5, 2003, at 18:04 US/Pacific, Brook Davies wrote:
You have attempted to dereference a scalar variable of type class
java.lang.Double as a structure with members. brThe
  error occurred
on line 78.
  
  I'd be interested to see the code around line 78...
  
  Sean A Corfield -- http://www.corfield.org/blog/
  
  If you're not annoying somebody, you're not really alive.
  -- Margaret Atwood
  
  
 

~|
Archives: http://www.houseoffusion.com/cf_lists/index.cfm?forumid=4
Subscription: 
http://www.houseoffusion.com/cf_lists/index.cfm?method=subscribeforumid=4
FAQ: http://www.thenetprofits.co.uk/coldfusion/faq

Your ad could be here. Monies from ads go to support these lists and provide more 
resources for the community. 
http://www.fusionauthority.com/ads.cfm

Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4



Re: Caching cfc objects in the application scope

2003-07-05 Thread Sean A Corfield
On Saturday, Jul 5, 2003, at 18:04 US/Pacific, Brook Davies wrote:
 You have attempted to dereference a scalar variable of type class
 java.lang.Double as a structure with members. brThe error occurred on
 line 78.

I'd be interested to see the code around line 78...

Sean A Corfield -- http://www.corfield.org/blog/

If you're not annoying somebody, you're not really alive.
-- Margaret Atwood

~|
Archives: http://www.houseoffusion.com/cf_lists/index.cfm?forumid=4
Subscription: 
http://www.houseoffusion.com/cf_lists/index.cfm?method=subscribeforumid=4
FAQ: http://www.thenetprofits.co.uk/coldfusion/faq

Signup for the Fusion Authority news alert and keep up with the latest news in 
ColdFusion and related topics. 
http://www.fusionauthority.com/signup.cfm

Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4



RE: Caching cfc objects in the application scope

2003-07-04 Thread Andre Mohamed
Raymond,

Can you perhaps quantify a little in terms of the level of stress that
you have found to trigger this behavior?

If it does turn out to be a bug and it isn't rectified in Red Sky then
there are some serious implications for CFC based application frameworks
such as FBMX which of course relies on an application level CFC.

In addition, migrating to use of the server scope instead (if that turns
out to be a solution) would not be practical in most cases.

André

-Original Message-
From: Raymond Camden [mailto:[EMAIL PROTECTED] 
Sent: 04 July 2003 05:41
To: CF-Talk
Subject: RE: Caching cfc objects in the application scope

 On Thursday, Jul 3, 2003, at 08:53 US/Pacific, Raymond Camden wrote:
  It does improve performance. However, I (and others) have 
 found issues 
  with CFCs that are cached and under load. (And I don't mean 
 big honkin 
  amazon.com load, just medium level load.) Issues like:
 
 It does improve performance is a bit of a blanket 
 statement. It *may* 
 improve performance depending on what your CFC does and how 
 you use it.

Well, if you take the process of recreating the object out, you _will_
save time. It may just be a very small amount of time. ;)

 As for load issues, macromedia.com is heavily CFC-based and 
 uses a lot 
 of CFCs stored in server scope (we're the only application in town so 
 we don't use application scope :) and we've never seen the sort of 
 issues Ray has seen - even with tens of thousands of active 
 concurrent 
 users (we have 15,000-20,000 active sessions across six CFMX 
 instances 
 during morning peak load).

The bugs I found were confirmed by MACR engineering, however, they were
always stored in the application scope, so maybe that had an impact.
Actually, since it was so easy for me to reproduce the bugs locally with
a stress tool, I'll see if the server scope makes a difference.

-Ray


~|
Archives: http://www.houseoffusion.com/cf_lists/index.cfm?forumid=4
Subscription: 
http://www.houseoffusion.com/cf_lists/index.cfm?method=subscribeforumid=4
FAQ: http://www.thenetprofits.co.uk/coldfusion/faq

This list and all House of Fusion resources hosted by CFHosting.com. The place for 
dependable ColdFusion Hosting.
http://www.cfhosting.com

Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4



RE: Caching cfc objects in the application scope

2003-07-04 Thread Raymond Camden
 Can you perhaps quantify a little in terms of the level of 
 stress that you have found to trigger this behavior?

In my case, the errors were occuring on cflib and my blog. I think
cflib.org gets around 2.5k requests per day. My blog gets a lot less.

 If it does turn out to be a bug and it isn't rectified in 
 Red Sky then there are some serious implications for CFC 
 based application frameworks such as FBMX which of course 
 relies on an application level CFC.
 

I guess we will have to wait and see. :)


===
Raymond Camden, ColdFusion Jedi Master for Mindseye, Inc
(www.mindseye.com)
Member of Team Macromedia (http://www.macromedia.com/go/teammacromedia)

Email: [EMAIL PROTECTED]
Blog : www.camdenfamily.com/morpheus/blog
Yahoo IM : morpheus

My ally is the Force, and a powerful ally it is. - Yoda 

~|
Archives: http://www.houseoffusion.com/cf_lists/index.cfm?forumid=4
Subscription: 
http://www.houseoffusion.com/cf_lists/index.cfm?method=subscribeforumid=4
FAQ: http://www.thenetprofits.co.uk/coldfusion/faq

Get the mailserver that powers this list at 
http://www.coolfusion.com

Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4



Re: Caching cfc objects in the application scope

2003-07-04 Thread Sean A Corfield
On Friday, Jul 4, 2003, at 06:15 US/Pacific, Raymond Camden wrote:
 Can you perhaps quantify a little in terms of the level of
 stress that you have found to trigger this behavior?
 In my case, the errors were occuring on cflib and my blog. I think
 cflib.org gets around 2.5k requests per day. My blog gets a lot less.

Right, which is really very low traffic - that's why I don't think it's 
a load issue per se (because we didn't hit any problems under much 
higher load when we were using application scope - we changed to server 
scope for most things prior to deployment simply because server scope 
access is marginally faster).

Ray, have you had any success creating a reproducible test case for 
this? Have you tried server scope and shown that the buggy behavior 
does not occur?

Sean A Corfield -- http://www.corfield.org/blog/

If you're not annoying somebody, you're not really alive.
-- Margaret Atwood

~|
Archives: http://www.houseoffusion.com/cf_lists/index.cfm?forumid=4
Subscription: 
http://www.houseoffusion.com/cf_lists/index.cfm?method=subscribeforumid=4
FAQ: http://www.thenetprofits.co.uk/coldfusion/faq

This list and all House of Fusion resources hosted by CFHosting.com. The place for 
dependable ColdFusion Hosting.
http://www.cfhosting.com

Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4



RE: Caching cfc objects in the application scope

2003-07-04 Thread Raymond Camden
 
 Right, which is really very low traffic - that's why I don't 
 think it's 
 a load issue per se (because we didn't hit any problems under much 
 higher load when we were using application scope - we changed 
 to server 
 scope for most things prior to deployment simply because server scope 
 access is marginally faster).
 
 Ray, have you had any success creating a reproducible test case for 
 this? Have you tried server scope and shown that the buggy behavior 
 does not occur?
 

While I agree that the load I encountered was minimal, the odd thing is
that I _was_ able to recreate it, but only using a load tool like MS
WAST (is that the name) and the Apache one (can't remember it's name as
well). As soon as I'd put the sites under load, the errors would show
up. Now, these two tools did _real_ load, not the load I normally would
get on cflib. Maybe the machine simply isn't that great.

Server scope: Today was a holiday ya know. ;) I'm going to try, just
later.

-ray

~|
Archives: http://www.houseoffusion.com/cf_lists/index.cfm?forumid=4
Subscription: 
http://www.houseoffusion.com/cf_lists/index.cfm?method=subscribeforumid=4
FAQ: http://www.thenetprofits.co.uk/coldfusion/faq

This list and all House of Fusion resources hosted by CFHosting.com. The place for 
dependable ColdFusion Hosting.
http://www.cfhosting.com

Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4



Re: Caching cfc objects in the application scope

2003-07-04 Thread Sean A Corfield
On Friday, Jul 4, 2003, at 22:03 US/Pacific, Raymond Camden wrote:
 While I agree that the load I encountered was minimal, the odd thing is
 that I _was_ able to recreate it, but only using a load tool like MS
 WAST (is that the name) and the Apache one (can't remember it's name as
 well). As soon as I'd put the sites under load, the errors would show
 up. Now, these two tools did _real_ load, not the load I normally would
 get on cflib. Maybe the machine simply isn't that great.

Hmm, I don't know what to say. We used WAST (Web Application Stress 
Tool) and Segue's Silk Performer to generate outrageously high load 
without seeing these sorts of failures (the Apache tool is 'ab' - 
Apache Bench). We have really high load normally and don't see it. I'm 
intrigued. I can't imagine how or why such errors would occur - even 
under load - so I'll be really interested to see how this pans out...

 Server scope: Today was a holiday ya know. ;) I'm going to try, just
 later.

Yeah, yeah... Like we've all really got better things to do when the 
office is shut? I'm on two week's vacation but I'm still messing with 
programs :) But right now I'll go back to my Anita Blake book (by 
Laurell K Hamilton)...

Sean A Corfield -- http://www.corfield.org/blog/

If you're not annoying somebody, you're not really alive.
-- Margaret Atwood

~|
Archives: http://www.houseoffusion.com/cf_lists/index.cfm?forumid=4
Subscription: 
http://www.houseoffusion.com/cf_lists/index.cfm?method=subscribeforumid=4
FAQ: http://www.thenetprofits.co.uk/coldfusion/faq

Signup for the Fusion Authority news alert and keep up with the latest news in 
ColdFusion and related topics. 
http://www.fusionauthority.com/signup.cfm

Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4



RE: Caching cfc objects in the application scope

2003-07-03 Thread Raymond Camden
It does improve performance. However, I (and others) have found issues
with CFCs that are cached and under load. (And I don't mean big honkin
amazon.com load, just medium level load.) Issues like:

1) Methods not working anymore - in other words, you call foo() and the
CFC forgets it has foo() (This happened on my blog.)

2) Method blah() has a query inside. It returns the query. I kept
getting errors stating that it wasn't returning a query, however, I
never saw any db errors. For some reason, the cfquery would run, make a
recordset called whatever, whatever exists, but wasn't a real
recordset. (Happens on cflib.org.)

Both issues disappeared if I remove the CFC from cache. I can also say
MACR knows about these issues, so I bet they will be fixed soon. I bring
them up because they are the worst kind of bugs... bugs that don't
happen 100% of the time. :) (And if you don't know it already, Red Sky
will have LOADs of CFC fixes, check out my mx on the rocks preso for
more info. And yes, I was given permission to mention this.)


===
Raymond Camden, ColdFusion Jedi Master for Mindseye, Inc
(www.mindseye.com)
Member of Team Macromedia (http://www.macromedia.com/go/teammacromedia)

Email: [EMAIL PROTECTED]
Blog : www.camdenfamily.com/morpheus/blog
Yahoo IM : morpheus

My ally is the Force, and a powerful ally it is. - Yoda 

 -Original Message-
 From: Rich Z [mailto:[EMAIL PROTECTED] 
 Sent: Thursday, July 03, 2003 9:45 AM
 To: CF-Talk
 Subject: Caching cfc objects in the application scope
 
 
 Is this worth doing? Does it improve performance at all?
  

~|
Archives: http://www.houseoffusion.com/cf_lists/index.cfm?forumid=4
Subscription: 
http://www.houseoffusion.com/cf_lists/index.cfm?method=subscribeforumid=4
FAQ: http://www.thenetprofits.co.uk/coldfusion/faq

Get the mailserver that powers this list at 
http://www.coolfusion.com

Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4



RE: Caching cfc objects in the application scope

2003-07-03 Thread Rich Z
Interesting. Good to know. Those are some nasty bugs. A couple more
questions:

1. What's the best way to copy a cfc into the application scope? I've
seen people do this in different ways? Structcopy? Duplicate? 

2. What's the release date for Red Sky (if there is one)?

Thanks for your response,
Rich


-Original Message-
From: Raymond Camden [mailto:[EMAIL PROTECTED] 
Sent: Thursday, July 03, 2003 11:54 AM
To: CF-Talk
Subject: RE: Caching cfc objects in the application scope

It does improve performance. However, I (and others) have found issues
with CFCs that are cached and under load. (And I don't mean big honkin
amazon.com load, just medium level load.) Issues like:

1) Methods not working anymore - in other words, you call foo() and the
CFC forgets it has foo() (This happened on my blog.)

2) Method blah() has a query inside. It returns the query. I kept
getting errors stating that it wasn't returning a query, however, I
never saw any db errors. For some reason, the cfquery would run, make a
recordset called whatever, whatever exists, but wasn't a real
recordset. (Happens on cflib.org.)

Both issues disappeared if I remove the CFC from cache. I can also say
MACR knows about these issues, so I bet they will be fixed soon. I bring
them up because they are the worst kind of bugs... bugs that don't
happen 100% of the time. :) (And if you don't know it already, Red Sky
will have LOADs of CFC fixes, check out my mx on the rocks preso for
more info. And yes, I was given permission to mention this.)


===
Raymond Camden, ColdFusion Jedi Master for Mindseye, Inc
(www.mindseye.com)
Member of Team Macromedia (http://www.macromedia.com/go/teammacromedia)

Email: [EMAIL PROTECTED]
Blog : www.camdenfamily.com/morpheus/blog
Yahoo IM : morpheus

My ally is the Force, and a powerful ally it is. - Yoda 

 -Original Message-
 From: Rich Z [mailto:[EMAIL PROTECTED] 
 Sent: Thursday, July 03, 2003 9:45 AM
 To: CF-Talk
 Subject: Caching cfc objects in the application scope
 
 
 Is this worth doing? Does it improve performance at all?
  


~|
Archives: http://www.houseoffusion.com/cf_lists/index.cfm?forumid=4
Subscription: 
http://www.houseoffusion.com/cf_lists/index.cfm?method=subscribeforumid=4
FAQ: http://www.thenetprofits.co.uk/coldfusion/faq

Your ad could be here. Monies from ads go to support these lists and provide more 
resources for the community. 
http://www.fusionauthority.com/ads.cfm

Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4



RE: Caching cfc objects in the application scope

2003-07-03 Thread Raymond Camden
 
 1. What's the best way to copy a cfc into the application 
 scope? I've seen people do this in different ways? 
 Structcopy? Duplicate? 

You can't duplicate a CFC. Well, you can, but you don't end up with a
CFC. You can, however, write your own Duplicate function. However, the
easier solution is to just:

cfset application.foo = createObject(you get the idea)

 2. What's the release date for Red Sky (if there is one)?
 

Sure, its 

DISCONNECTED
END OF LINE

~|
Archives: http://www.houseoffusion.com/cf_lists/index.cfm?forumid=4
Subscription: 
http://www.houseoffusion.com/cf_lists/index.cfm?method=subscribeforumid=4
FAQ: http://www.thenetprofits.co.uk/coldfusion/faq

Your ad could be here. Monies from ads go to support these lists and provide more 
resources for the community. 
http://www.fusionauthority.com/ads.cfm

Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4



Re: Caching cfc objects in the application scope

2003-07-03 Thread Sean A Corfield
On Thursday, Jul 3, 2003, at 08:53 US/Pacific, Raymond Camden wrote:
 It does improve performance. However, I (and others) have found issues
 with CFCs that are cached and under load. (And I don't mean big honkin
 amazon.com load, just medium level load.) Issues like:

It does improve performance is a bit of a blanket statement. It *may* 
improve performance depending on what your CFC does and how you use it.

As for load issues, macromedia.com is heavily CFC-based and uses a lot 
of CFCs stored in server scope (we're the only application in town so 
we don't use application scope :) and we've never seen the sort of 
issues Ray has seen - even with tens of thousands of active concurrent 
users (we have 15,000-20,000 active sessions across six CFMX instances 
during morning peak load).

I'm not saying Ray hasn't seen strange behavior, just pointing out that 
it isn't a *given* that you will see any such problems.

Sean A Corfield -- http://www.corfield.org/blog/

If you're not annoying somebody, you're not really alive.
-- Margaret Atwood

~|
Archives: http://www.houseoffusion.com/cf_lists/index.cfm?forumid=4
Subscription: 
http://www.houseoffusion.com/cf_lists/index.cfm?method=subscribeforumid=4
FAQ: http://www.thenetprofits.co.uk/coldfusion/faq

This list and all House of Fusion resources hosted by CFHosting.com. The place for 
dependable ColdFusion Hosting.
http://www.cfhosting.com

Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4



RE: Caching cfc objects in the application scope

2003-07-03 Thread Raymond Camden
 On Thursday, Jul 3, 2003, at 08:53 US/Pacific, Raymond Camden wrote:
  It does improve performance. However, I (and others) have 
 found issues 
  with CFCs that are cached and under load. (And I don't mean 
 big honkin 
  amazon.com load, just medium level load.) Issues like:
 
 It does improve performance is a bit of a blanket 
 statement. It *may* 
 improve performance depending on what your CFC does and how 
 you use it.

Well, if you take the process of recreating the object out, you _will_
save time. It may just be a very small amount of time. ;)

 As for load issues, macromedia.com is heavily CFC-based and 
 uses a lot 
 of CFCs stored in server scope (we're the only application in town so 
 we don't use application scope :) and we've never seen the sort of 
 issues Ray has seen - even with tens of thousands of active 
 concurrent 
 users (we have 15,000-20,000 active sessions across six CFMX 
 instances 
 during morning peak load).

The bugs I found were confirmed by MACR engineering, however, they were
always stored in the application scope, so maybe that had an impact.
Actually, since it was so easy for me to reproduce the bugs locally with
a stress tool, I'll see if the server scope makes a difference.

-Ray

~|
Archives: http://www.houseoffusion.com/cf_lists/index.cfm?forumid=4
Subscription: 
http://www.houseoffusion.com/cf_lists/index.cfm?method=subscribeforumid=4
FAQ: http://www.thenetprofits.co.uk/coldfusion/faq

Get the mailserver that powers this list at 
http://www.coolfusion.com

Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4



Re: Caching cfc objects in the application scope

2003-07-03 Thread Sean A Corfield
On Thursday, Jul 3, 2003, at 21:40 US/Pacific, Raymond Camden wrote:
 The bugs I found were confirmed by MACR engineering, however, they were
 always stored in the application scope, so maybe that had an impact.
 Actually, since it was so easy for me to reproduce the bugs locally 
 with
 a stress tool, I'll see if the server scope makes a difference.

That would be an interesting test - thanx Ray!

Sean A Corfield -- http://www.corfield.org/blog/

If you're not annoying somebody, you're not really alive.
-- Margaret Atwood

~|
Archives: http://www.houseoffusion.com/cf_lists/index.cfm?forumid=4
Subscription: 
http://www.houseoffusion.com/cf_lists/index.cfm?method=subscribeforumid=4
FAQ: http://www.thenetprofits.co.uk/coldfusion/faq

This list and all House of Fusion resources hosted by CFHosting.com. The place for 
dependable ColdFusion Hosting.
http://www.cfhosting.com

Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=89.70.4