RE: loop timing out
I would add that if it's a domain account you can use a login script in the profile to insure a mapped drive (you can probably do this with a local account as well). But like others I somewhat prefer the UNC path since it doesn't depend on something (a login script or local profile) that is somewhat obscured from view while coding. Mark A. Kruger, MCSE, CFG (402) 408-3733 ext 105 www.cfwebtools.com www.coldfusionmuse.com www.necfug.com -Original Message- From: Dave Watts [mailto:dwa...@figleaf.com] Sent: Wednesday, June 29, 2011 5:53 PM To: cf-talk Subject: Re: loop timing out The problem with mapped drives is that they may not be available or set under the user account the Coldfusion service is using. I'm assuming your running on a Windows box. Drive mappings are created at the time a user logs onto a Windows box. Since Coldfusion runs as a service, the user account it is assigned to run under never logs in. You'd be better off using a UNC path. While I agree with your conclusion about using UNC paths, it's not exactly correct to say that CF never logs in. If you configure the CF service to run as a specific user, that user does in fact log in. If that user previously created persistent drive mappings, those will still be present. Dave Watts, CTO, Fig Leaf Software http://www.figleaf.com/ http://training.figleaf.com/ Fig Leaf Software is a Veteran-Owned Small Business (VOSB) on GSA Schedule, and provides the highest caliber vendor-authorized instruction at our training centers, online, or ons ~| Order the Adobe Coldfusion Anthology now! http://www.amazon.com/Adobe-Coldfusion-Anthology/dp/1430272155/?tag=houseoffusion Archive: http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:345951 Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/groups/cf-talk/unsubscribe.cfm
Re: loop timing out
Any chance the looping couple be done in a stored proc? No, it's calling a page and that page is full of CF. However, I've decided to just do 5 at a time and reload the page. It seems to be working fine. Thank you everyone for your help. When I move to an app on CF8 or CF9, I'll look further into CFThread. daniel ~| Order the Adobe Coldfusion Anthology now! http://www.amazon.com/Adobe-Coldfusion-Anthology/dp/1430272155/?tag=houseoffusion Archive: http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:345920 Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/groups/cf-talk/unsubscribe.cfm
Re: loop timing out
What am I doing wrong here as nothing shows up even with debugging turned on. The S drive is a mapped network drive. If mapped drive is the issue, is there any way around it? Terry ~| Order the Adobe Coldfusion Anthology now! http://www.amazon.com/Adobe-Coldfusion-Anthology/dp/1430272155/?tag=houseoffusion Archive: http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:345928 Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/groups/cf-talk/unsubscribe.cfm
Re: loop timing out
It just might help if I pasted in the code.sorry. On Wed, Jun 29, 2011 at 12:19 PM, Terry Troxel terry.tro...@gmail.comwrote: What am I doing wrong here as nothing shows up even with debugging turned on. The S drive is a mapped network drive. If mapped drive is the issue, is there any way around it? Terry cfset dir=s:\ cfdirectory action=list directory=#dir# filter=*.* name=slides sort=name table cfoutput query=slides trtd/tdtd#name#/td/tr /cfoutput /table ~| Order the Adobe Coldfusion Anthology now! http://www.amazon.com/Adobe-Coldfusion-Anthology/dp/1430272155/?tag=houseoffusion Archive: http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:345929 Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/groups/cf-talk/unsubscribe.cfm
Re: loop timing out
The problem with mapped drives is that they may not be available or set under the user account the Coldfusion service is using. I'm assuming your running on a Windows box. Drive mappings are created at the time a user logs onto a Windows box. Since Coldfusion runs as a service, the user account it is assigned to run under never logs in. You'd be better off using a UNC path. Carl On 6/29/2011 12:20 PM, Terry Troxel wrote: It just might help if I pasted in the code.sorry. On Wed, Jun 29, 2011 at 12:19 PM, Terry Troxelterry.tro...@gmail.comwrote: What am I doing wrong here as nothing shows up even with debugging turned on. The S drive is a mapped network drive. If mapped drive is the issue, is there any way around it? Terry cfset dir=s:\ cfdirectory action=list directory=#dir# filter=*.* name=slides sort=name table cfoutput query=slides trtd/tdtd#name#/td/tr /cfoutput /table ~| Order the Adobe Coldfusion Anthology now! http://www.amazon.com/Adobe-Coldfusion-Anthology/dp/1430272155/?tag=houseoffusion Archive: http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:345943 Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/groups/cf-talk/unsubscribe.cfm
Re: loop timing out
The problem with mapped drives is that they may not be available or set under the user account the Coldfusion service is using. I'm assuming your running on a Windows box. Drive mappings are created at the time a user logs onto a Windows box. Since Coldfusion runs as a service, the user account it is assigned to run under never logs in. You'd be better off using a UNC path. While I agree with your conclusion about using UNC paths, it's not exactly correct to say that CF never logs in. If you configure the CF service to run as a specific user, that user does in fact log in. If that user previously created persistent drive mappings, those will still be present. Dave Watts, CTO, Fig Leaf Software http://www.figleaf.com/ http://training.figleaf.com/ Fig Leaf Software is a Veteran-Owned Small Business (VOSB) on GSA Schedule, and provides the highest caliber vendor-authorized instruction at our training centers, online, or ons ~| Order the Adobe Coldfusion Anthology now! http://www.amazon.com/Adobe-Coldfusion-Anthology/dp/1430272155/?tag=houseoffusion Archive: http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:345944 Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/groups/cf-talk/unsubscribe.cfm
Re: loop timing out
I guess what I was trying to say is that depending on how drives are mapped, unless the user physically logs in to the desktop, drive mappings may not get applied (specifically drives mapped through login scripts). Login scripts don't appear to get processed when a service logs in. I wasn't sure about the ones manually mapped as persistent mappings, so I'll take your word on that. Carl On 6/29/2011 3:53 PM, Dave Watts wrote: The problem with mapped drives is that they may not be available or set under the user account the Coldfusion service is using. I'm assuming your running on a Windows box. Drive mappings are created at the time a user logs onto a Windows box. Since Coldfusion runs as a service, the user account it is assigned to run under never logs in. You'd be better off using a UNC path. While I agree with your conclusion about using UNC paths, it's not exactly correct to say that CF never logs in. If you configure the CF service to run as a specific user, that user does in fact log in. If that user previously created persistent drive mappings, those will still be present. Dave Watts, CTO, Fig Leaf Software http://www.figleaf.com/ http://training.figleaf.com/ Fig Leaf Software is a Veteran-Owned Small Business (VOSB) on GSA Schedule, and provides the highest caliber vendor-authorized instruction at our training centers, online, or ons ~| Order the Adobe Coldfusion Anthology now! http://www.amazon.com/Adobe-Coldfusion-Anthology/dp/1430272155/?tag=houseoffusion Archive: http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:345945 Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/groups/cf-talk/unsubscribe.cfm
Re: loop timing out
What about running the task in a cfthread? I have some tasks that run on a schedule (or manually triggered) for an hour or two without issue... It sounds interesting, but from my checking, it doesn't appear to be a CF7 tag. ~| Order the Adobe Coldfusion Anthology now! http://www.amazon.com/Adobe-Coldfusion-Anthology/dp/1430272155/?tag=houseoffusion Archive: http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:345822 Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/groups/cf-talk/unsubscribe.cfm
Re: loop timing out
Setting up a 'grouped' plan to only run x of them is a valid assessment, but I would suggest that you do this by tracking which ones need to be redone outside of the page. An example would be, you could have each of the necessary redone's to show up in a database table, and mark them as completed once they are done. The you would just need to pull the oldest 5 of them each time you load the page. (this would mean the page would have to be loaded more often. There isn't much to the page with the loop. It's mainly a db call and then I do the loop based on that, over the page that has the db calls. While I can see the db page (it has 12 database INSERTs or UPDATEs), I can't alter it, so no use in posting that. I thought last night that a way to do sets of five is similar to your suggestion. I could run the page, having it do just 5 as you suggest. Then I could have the page reload itself with a cflocation and have it then do the next 5. That gives time for other processes to be called in between. I could have the page count up and send the count through the URL and do a certain number of reloads before it's done for awhile. Then the next time the schedule comes up, it can go through more of the set. Right now there's a buildup of records to be worked through. As it cleans up, I would only expect it to have less than 5 each time it runs. Here's the loop code: CFQUERY name=qry_stuck datasource=#application.dbDataSource# dbtype=#application.dbType# SELECT f.g_id FROM g f, case_event ce, spnshp_check sc WHERE f.g_id = ce.g_id AND f.g_id = sc.g_id AND f.status_id = 3 AND ce.locked_by_id IS NULL AND sc.spnshp_chk_type = 'A' AND sc.on_your_behalf IS NOT NULL /CFQUERY cfloop query=qry_stuck_in_spnshp CFQUERY NAME=qryEmpInfo DATASOURCE=#application.dbDataSource# DBTYPE=#application.dbType# SELECT g.employer_info_id, ei.employer_id, ei.agent_id, g.case_no case_no, g.office_location_id, g.Status_ID, TO_CHAR(g.submitted_date,'mm/dd/') date_received, ei.address_1 employer_address1, ei.address_2 employer_address2, ei.Name employer_name, ei.City employer_city, ei.State_Id employer_state_id, ei.State_Id employer_state, s.code employer_state_code, ei.Postal_Code employer_zip, ei.province employer_province, ei.country_id employer_country_id,c.name employer_country_name, substr(ei.postal_code,1,5) employer_postal_code1, substr(ei.postal_code,7,4) employer_postal_code2, ei.Phone employer_phone, ei.Phone_Ext employer_phone_ext FROM g, EMPLOYER_INFO ei, state s, country c WHERE g.g_id = #g_id# AND g.Employer_Info_Id = ei.Employer_Info_Id and ei.state_id = s.state_id(+) and ei.country_id = c.country_id(+) /CFQUERY CFLOOP INDEX=x LIST=#qryEmpInfo.ColumnList#CFSET #x#=#evaluate('qryEmpInfo.' x)#/CFLOOP cfinclude template=/insert_spnshp_inc.cfm /cfloop ~| Order the Adobe Coldfusion Anthology now! http://www.amazon.com/Adobe-Coldfusion-Anthology/dp/1430272155/?tag=houseoffusion Archive: http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:345823 Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/groups/cf-talk/unsubscribe.cfm
RE: loop timing out
Bummer... cfthread really helped with long-running scheduled tasks. -Original Message- From: daniel kessler [mailto:dani...@umd.edu] Sent: Tuesday, June 28, 2011 7:32 AM To: cf-talk Subject: Re: loop timing out What about running the task in a cfthread? I have some tasks that run on a schedule (or manually triggered) for an hour or two without issue... It sounds interesting, but from my checking, it doesn't appear to be a CF7 tag. ~| Order the Adobe Coldfusion Anthology now! http://www.amazon.com/Adobe-Coldfusion-Anthology/dp/1430272155/?tag=houseoffusion Archive: http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:345825 Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/groups/cf-talk/unsubscribe.cfm
Re: loop timing out
Rick, i was under the impression that cfthred always obeyed request timeout setting in cf admin... at least in my experience i could never make a thread run longer than cfadmin setting, no matter which other way i tried to alter the request timeout value (cfsetting, url variable)... am i wrong? is my experience skewed somehow? Azadi On 28/06/2011 22:16 , Rick Faircloth wrote: Bummer... cfthread really helped with long-running scheduled tasks. -Original Message- From: daniel kessler [mailto:dani...@umd.edu] Sent: Tuesday, June 28, 2011 7:32 AM To: cf-talk Subject: Re: loop timing out What about running the task in a cfthread? I have some tasks that run on a schedule (or manually triggered) for an hour or two without issue... It sounds interesting, but from my checking, it doesn't appear to be a CF7 tag. ~| Order the Adobe Coldfusion Anthology now! http://www.amazon.com/Adobe-Coldfusion-Anthology/dp/1430272155/?tag=houseoffusion Archive: http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:345829 Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/groups/cf-talk/unsubscribe.cfm
RE: loop timing out
I've never had any problem with cfthread and request timeout. Now, realize, that I don't think I've ever used request timeout in conjunction with cfthread. The only time I've used cfthread is with a scheduled task and was just supposed to run as long as it needed to complete its work. I've never been concerned with shutting it down after a certain period of time. And the admin setting doesn't seem to affect any of the scheduled tasks utilizing cfthread. Others have a better/more-informed perspective for Azadi? -Original Message- From: Azadi Saryev [mailto:azadi.sar...@gmail.com] Sent: Tuesday, June 28, 2011 10:47 AM To: cf-talk Subject: Re: loop timing out Rick, i was under the impression that cfthred always obeyed request timeout setting in cf admin... at least in my experience i could never make a thread run longer than cfadmin setting, no matter which other way i tried to alter the request timeout value (cfsetting, url variable)... am i wrong? is my experience skewed somehow? Azadi On 28/06/2011 22:16 , Rick Faircloth wrote: Bummer... cfthread really helped with long-running scheduled tasks. -Original Message- From: daniel kessler [mailto:dani...@umd.edu] Sent: Tuesday, June 28, 2011 7:32 AM To: cf-talk Subject: Re: loop timing out What about running the task in a cfthread? I have some tasks that run on a schedule (or manually triggered) for an hour or two without issue... It sounds interesting, but from my checking, it doesn't appear to be a CF7 tag. ~| Order the Adobe Coldfusion Anthology now! http://www.amazon.com/Adobe-Coldfusion-Anthology/dp/1430272155/?tag=houseoffusion Archive: http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:345842 Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/groups/cf-talk/unsubscribe.cfm
Re: RE: loop timing out
Any chance the looping couple be done in a stored proc? On Jun 28, 2011 10:20 AM, Rick Faircloth r...@whitestonemedia.com wrote: I've never had any problem with cfthread and request timeout. Now, realize, that I don't think I've ever used request timeout in conjunction with cfthread. The only time I've used cfthread is with a scheduled task and was just supposed to run as long as it needed to complete its work. I've never been concerned with shutting it down after a certain period of time. And the admin setting doesn't seem to affect any of the scheduled tasks utilizing cfthread. Others have a better/more-informed perspective for Azadi? -Original Message- From: Azadi Saryev [mailto:azadi.sar...@gmail.com] Sent: Tuesday, June 28, 2011 10:47 AM To: cf-talk Subject: Re: loop timing out Rick, i was under the impression that cfthred always obeyed request timeout setting in cf admin... at least in my experience i could never make a thread run longer than cfadmin setting, no matter which other way i tried to alter the request timeout value (cfsetting, url variable)... am i wrong? is my experience skewed somehow? Azadi On 28/06/2011 22:16 , Rick Faircloth wrote: Bummer... cfthread really helped with long-running scheduled tasks. -Original Message- From: daniel kessler [mailto:dani...@umd.edu] Sent: Tuesday, June 28, 2011 7:32 AM To: cf-talk Subject: Re: loop timing out What about running the task in a cfthread? I have some tasks that run on a schedule (or manually triggered) for an hour or two without issue... It sounds interesting, but from my checking, it doesn't appear to be a CF7 tag. ~| Order the Adobe Coldfusion Anthology now! http://www.amazon.com/Adobe-Coldfusion-Anthology/dp/1430272155/?tag=houseoffusion Archive: http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:345885 Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/groups/cf-talk/unsubscribe.cfm
loop timing out
I'm creating a scheduled_task to correct a problem. For the correction, I'm doing a query for the list of problem records. Then I'm looping through the problem records and resending each one of them through the same code that it went through when it developed the problem. That code has several database updates. Unfortunately, I'm timing out of the cfloop. I don't have access to the page that I'm looping through, so I can't change it. Is there a way to let a loop have other transactions so that it doesn't time out? I thought of putting the loop in another loop, so that it only does 5 at a time, but then that's just a loop in a loop and then the outer one will time out. Did I state this clearly? A friend of mine suggested the line: cfsetting requestTimeOut = 120â I am told that this setting will only be persistent for that page and that the timeout will revert to it's previous setting once the page is done running. Is that correct? I was also concerned that when CF is upgraded (we're on CF7 for this app) that this setting might be trouble. Any thoughts? Overall, I'd like a different solution than this, something that will make the loop more acceptable. thank you for any assistance. daniel ~| Order the Adobe Coldfusion Anthology now! http://www.amazon.com/Adobe-Coldfusion-Anthology/dp/1430272155/?tag=houseoffusion Archive: http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:345801 Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/groups/cf-talk/unsubscribe.cfm
Re: loop timing out
Hey Daniel, In order to assist you, it would be helpful to see the code that has the loop as well as some knowledge of what the 'database call' is doing. (maybe the database call isn't returning?) The cfsetting that you mention, does only change the timeout setting for the page that it is set in. It does not change the master settings in the cfadmin, so it will not effect other pages on your website directly. (this is true from CF7 thru CF9, and I would expect any future version of CF as well) The issue that it appears that you are running into is two-fold. 1. how many 'actions' are you looping over combined with 2. how long does it take to complete each action. Setting up a 'grouped' plan to only run x of them is a valid assessment, but I would suggest that you do this by tracking which ones need to be redone outside of the page. An example would be, you could have each of the necessary redone's to show up in a database table, and mark them as completed once they are done. The you would just need to pull the oldest 5 of them each time you load the page. (this would mean the page would have to be loaded more often. The best solution for you, will probably come after you have posted some more information (the loop code and 'what' the action is doing) hope this helps, William -- William E. Seiter On Jun 27, 2011, daniel kessler dani...@umd.edu wrote: I'm creating a scheduled_task to correct a problem. For the correction, I'm doing a query for the list of problem records. Then I'm looping through the problem records and resending each one of them through the same code that it went through when it developed the problem. That code has several database updates. Unfortunately, I'm timing out of the cfloop. I don't have access to the page that I'm looping through, so I can't change it. Is there a way to let a loop have other transactions so that it doesn't time out? I thought of putting the loop in another loop, so that it only does 5 at a time, but then that's just a loop in a loop and then the outer one will time out. Did I state this clearly? A friend of mine suggested the line: cfsetting requestTimeOut = 120â I am told that this setting will only be persistent for that page and that the timeout will revert to it's previous setting once the page is done running. Is that correct? I was also concerned that when CF is upgraded (we're on CF7 for this app) that this setting might be trouble. Any thoughts? Overall, I'd like a different solution than this, something that will make the loop more acceptable. thank you for any assistance. daniel ~| Order the Adobe Coldfusion Anthology now! http://www.amazon.com/Adobe-Coldfusion-Anthology/dp/1430272155/?tag=houseoffusion Archive: http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:345806 Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/groups/cf-talk/unsubscribe.cfm
RE: loop timing out
What about running the task in a cfthread? I have some tasks that run on a schedule (or manually triggered) for an hour or two without issue... Rick -Original Message- From: William Seiter [mailto:will...@seiter.com] Sent: Monday, June 27, 2011 4:42 PM To: cf-talk Subject: Re: loop timing out Hey Daniel, In order to assist you, it would be helpful to see the code that has the loop as well as some knowledge of what the 'database call' is doing. (maybe the database call isn't returning?) The cfsetting that you mention, does only change the timeout setting for the page that it is set in. It does not change the master settings in the cfadmin, so it will not effect other pages on your website directly. (this is true from CF7 thru CF9, and I would expect any future version of CF as well) The issue that it appears that you are running into is two-fold. 1. how many 'actions' are you looping over combined with 2. how long does it take to complete each action. Setting up a 'grouped' plan to only run x of them is a valid assessment, but I would suggest that you do this by tracking which ones need to be redone outside of the page. An example would be, you could have each of the necessary redone's to show up in a database table, and mark them as completed once they are done. The you would just need to pull the oldest 5 of them each time you load the page. (this would mean the page would have to be loaded more often. The best solution for you, will probably come after you have posted some more information (the loop code and 'what' the action is doing) hope this helps, William -- William E. Seiter On Jun 27, 2011, daniel kessler dani...@umd.edu wrote: I'm creating a scheduled_task to correct a problem. For the correction, I'm doing a query for the list of problem records. Then I'm looping through the problem records and resending each one of them through the same code that it went through when it developed the problem. That code has several database updates. Unfortunately, I'm timing out of the cfloop. I don't have access to the page that I'm looping through, so I can't change it. Is there a way to let a loop have other transactions so that it doesn't time out? I thought of putting the loop in another loop, so that it only does 5 at a time, but then that's just a loop in a loop and then the outer one will time out. Did I state this clearly? A friend of mine suggested the line: cfsetting requestTimeOut = 120ââ¬Â I am told that this setting will only be persistent for that page and that the timeout will revert to it's previous setting once the page is done running. Is that correct? I was also concerned that when CF is upgraded (we're on CF7 for this app) that this setting might be trouble. Any thoughts? Overall, I'd like a different solution than this, something that will make the loop more acceptable. thank you for any assistance. daniel ~| Order the Adobe Coldfusion Anthology now! http://www.amazon.com/Adobe-Coldfusion-Anthology/dp/1430272155/?tag=houseoffusion Archive: http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:345810 Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/groups/cf-talk/unsubscribe.cfm