Sounds like a change was made from the CF Admin -- a change that now
requires you to lock shared scopes. Locking >>
Server/Application/Session scope "Full Checking" would do this, I
think.

If you have to live with this global change in the CF Administrator
(shared host, or something), then lock all of your application/session
scope reads with read-only locks and lock all of your
application/session scope writes with exclusive locks. Same with
server scoped vars, though those are fairly unusual.

Jamie

On Thu, 03 Jun 2004 15:13:56 +0000, in cf-talk you wrote:

>I played with some of the error handling and was able to get a little more
>information.
>
>The message says "Application.applicationName is in a scope that contains
>data shared across threads and cannot be accessed without an active lock".
>
>I know very little about session variables and locking.  Does that mean the
>problem is with the lock itself?
>
>>From: KeAnne Hoeg <[EMAIL PROTECTED]>
>>Reply-To: [EMAIL PROTECTED]
>>To: CF-Talk <[EMAIL PROTECTED]>
>>Subject: Session Variables Suddenly Stopped Working
>>Date: Thu, 03 Jun 2004 10:45:57 -0400
>>
>>I inherited a site that uses session variables to track users' paths
>>through the site and to handle the Admin login section.  The code worked
>>fine until yesterday when it suddenly stopped working.  The only
>>information I get is "Processing Error".  Does anyone have any idea why it
>>suddenly stopped working?  One of the admins was able to log in as recently
>>as 6/1.
>>
>>Here's the code in the Application.cfm file:
>>
>><cfapplication
>> name="solarcenter"
>> sessionmanagement="Yes"
>> clientmanagement="Yes"
>> applicationtimeout=#createTimespan(0,0,90,0)#
>> sessiontimeout=#CreateTimespan(0,0,90,0)#>
>>
>>
>><cflock name="#APPLICATION.applicationName#"
>>         type="Exclusive"
>>         timeout="20"
>>         throwontimeout="Yes">
>><!--- If Session-Tracker does not exist, generate it --->
>><cfparam name="APPLICATION.SessionTracker" default=#StructNew()#>
>><!--- Log current user --->
>><cfscript>
>> sUserInfo = StructNew();
>> sUserInfo.Address="#CGI.REMOTE_ADDR#";
>> sUserInfo.CFID="#session.cfid#";
>> sUserInfo.Token="#session.cftoken#";
>> sUserInfo.Address="#CGI.REMOTE_ADDR#";
>> sUserInfo.Time="#Now()#";
>> sUserInfo.Template="#CGI.CF_Template_Path#";
>> ID = "#session.cfid##session.cftoken#";
>></cfscript>
>><cfset dummy = StructInsert(APPLICATION.SessionTracker, ID, sUserInfo,
>>true)>
>></cflock>
>>
>>
>>
>
>
[Todays Threads] [This Message] [Subscription] [Fast Unsubscribe] [User Settings]

Reply via email to