I believe that locking a whole page, or even a bunch of conditional code, is slow.  
Put read locks around the reads, and carry temporary variables out of them.  Then, and 
only then, put write locks around the writes. 

See
CF Locking Best Practices
http://www.allaire.com/handlers/index.cfm?ID=17318&Method=Full


Chris Norloff

---------- Original Message ----------------------------------
From: [EMAIL PROTECTED] (Carol Bluestein)
Reply-To: [EMAIL PROTECTED]
Date: Fri, 20 Oct 2000 11:29:19 -0400

>Hi all.   Sorry about another cflock question, but using it has stopped our
>system cold.
>
>Our system: CF v4.1 on NT integrating with ESRI ArcIMS and using SYBASE IQ12 on
>UNIX for our datawarehouse.  In ArcIMS, the screen is divided into frames and
>and the CF comes on in one of the frames.  I put a CFLOCK around a set of
>session variables.  See code below.  Then I have an SQL statement using the
>session.variables and put a CFLOCK around this too.  Now, I have to say that it
>takes forever to get a query back (2 or more minutes) but I have no control over
>the IQ server and once I added the CFLOCK it came back with "Timed out while
>waiting to obtain exclusive lock." and stopped everything cold.    To get it
>working again, we have to reboot our CF server.  If we put a THROWTIMEOUT= "No" 
>it will continue to process but we need those session variables for the query
>that follows.
>
>If I am to use CFLOCK how can I do it without locking our whole system?
>
>Any Help would be very much appreciated.
>
>Carol
>
>
><CFLOCK NAME="#session.sessionID#" TYPE="EXCLUSIVE" TIMEOUT="30">
>    <CFPARAM NAME="session.sample" DEFAULT="1">
>    <CFIF form.sample gt ''>
>        <cfset session.sample = val(form.sample)>
>    </CFIF>
>    
>    <CFPARAM NAME="session.data_type" DEFAULT="S">
>    <CFIF form.data_type gt ''>
>        <cfset session.data_type = form.data_type>
>    </CFIF>
>    
>    <CFPARAM NAME="session.operator" DEFAULT="<">
>    <CFIF form.operator gt ''>
>        <cfset session.operator = form.operator>
>    </CFIF>
>    
>    <!--- adding if to set session variable  CW 10/18/00--->
>    <CFPARAM NAME="session.field" DEFAULT="">
>    <CFIF form.operator gt ''>
>        <cfset session.field = form.field>
>    </CFIF>
></CFLOCK>
>
>
>Carol L. Bluestein
>Senior Programmer
>NYS Office of Real Property
>518-486-6335
>[EMAIL PROTECTED]
>------------------------------------------------------------------------------------------------
>Archives: http://www.mail-archive.com/[email protected]/
>Unsubscribe: http://www.houseoffusion.com/index.cfm?sidebar=lists or send a message 
>with 'unsubscribe' in the body to [EMAIL PROTECTED]
>
------------------------------------------------------------------------------------------------
Archives: http://www.mail-archive.com/[email protected]/
Unsubscribe: http://www.houseoffusion.com/index.cfm?sidebar=lists or send a message 
with 'unsubscribe' in the body to [EMAIL PROTECTED]

Reply via email to