<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Large loops = out of memory?</title>
	<atom:link href="http://www.erichynds.com/coldfusion/large-loops-out-of-memory/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.erichynds.com/coldfusion/large-loops-out-of-memory/</link>
	<description>Web Developer&#039;s Ramblings on JavaScript, jQuery, ColdFusion, MySQL, and other technologies.</description>
	<lastBuildDate>Wed, 04 Jan 2012 16:01:00 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
	<item>
		<title>By: Danny Armstrong</title>
		<link>http://www.erichynds.com/coldfusion/large-loops-out-of-memory/#comment-3128</link>
		<dc:creator>Danny Armstrong</dc:creator>
		<pubDate>Fri, 23 Apr 2010 21:42:25 +0000</pubDate>
		<guid isPermaLink="false">http://www.erichynds.com/blog/?p=24#comment-3128</guid>
		<description>Do you have memory profiling turned on on your dev machine? This can have a huge memory overhead. I had an application that would balloon like crazy on dev (linux) and not on the server (windows). After turning off the monitoring stuff the performance equalled out.</description>
		<content:encoded><![CDATA[<p>Do you have memory profiling turned on on your dev machine? This can have a huge memory overhead. I had an application that would balloon like crazy on dev (linux) and not on the server (windows). After turning off the monitoring stuff the performance equalled out.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Danny Armstrong</title>
		<link>http://www.erichynds.com/coldfusion/large-loops-out-of-memory/#comment-3849</link>
		<dc:creator>Danny Armstrong</dc:creator>
		<pubDate>Fri, 23 Apr 2010 21:42:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.erichynds.com/blog/?p=24#comment-3849</guid>
		<description>Do you have memory profiling turned on on your dev machine? This can have a huge memory overhead. I had an application that would balloon like crazy on dev (linux) and not on the server (windows). After turning off the monitoring stuff the performance equalled out.</description>
		<content:encoded><![CDATA[<p>Do you have memory profiling turned on on your dev machine? This can have a huge memory overhead. I had an application that would balloon like crazy on dev (linux) and not on the server (windows). After turning off the monitoring stuff the performance equalled out.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Eric Hynds</title>
		<link>http://www.erichynds.com/coldfusion/large-loops-out-of-memory/#comment-1623</link>
		<dc:creator>Eric Hynds</dc:creator>
		<pubDate>Tue, 15 Dec 2009 18:14:53 +0000</pubDate>
		<guid isPermaLink="false">http://www.erichynds.com/blog/?p=24#comment-1623</guid>
		<description>It&#039;s turning out to be a Linux thing.  The memory leak(s) do not occur when running the same code on a Windows Server 2008 box.</description>
		<content:encoded><![CDATA[<p>It&#8217;s turning out to be a Linux thing.  The memory leak(s) do not occur when running the same code on a Windows Server 2008 box.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Anonymous</title>
		<link>http://www.erichynds.com/coldfusion/large-loops-out-of-memory/#comment-3848</link>
		<dc:creator>Anonymous</dc:creator>
		<pubDate>Tue, 15 Dec 2009 18:14:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.erichynds.com/blog/?p=24#comment-3848</guid>
		<description>It&#039;s turning out to be a Linux thing.  The memory leak(s) do not occur when running the same code on a Windows Server 2008 box.</description>
		<content:encoded><![CDATA[<p>It&#8217;s turning out to be a Linux thing.  The memory leak(s) do not occur when running the same code on a Windows Server 2008 box.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Eric Hynds</title>
		<link>http://www.erichynds.com/coldfusion/large-loops-out-of-memory/#comment-1423</link>
		<dc:creator>Eric Hynds</dc:creator>
		<pubDate>Wed, 18 Nov 2009 13:19:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.erichynds.com/blog/?p=24#comment-1423</guid>
		<description>Wow, thanks for the good info guys.  Next time I&#039;m working on the project I&#039;ll play around with some of these suggestions and report back.</description>
		<content:encoded><![CDATA[<p>Wow, thanks for the good info guys.  Next time I&#8217;m working on the project I&#8217;ll play around with some of these suggestions and report back.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Anonymous</title>
		<link>http://www.erichynds.com/coldfusion/large-loops-out-of-memory/#comment-3847</link>
		<dc:creator>Anonymous</dc:creator>
		<pubDate>Wed, 18 Nov 2009 13:19:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.erichynds.com/blog/?p=24#comment-3847</guid>
		<description>Wow, thanks for the good info guys.  Next time I&#039;m working on the project I&#039;ll play around with some of these suggestions and report back.</description>
		<content:encoded><![CDATA[<p>Wow, thanks for the good info guys.  Next time I&#8217;m working on the project I&#8217;ll play around with some of these suggestions and report back.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Brian Kotek</title>
		<link>http://www.erichynds.com/coldfusion/large-loops-out-of-memory/#comment-1366</link>
		<dc:creator>Brian Kotek</dc:creator>
		<pubDate>Wed, 11 Nov 2009 20:36:53 +0000</pubDate>
		<guid isPermaLink="false">http://www.erichynds.com/blog/?p=24#comment-1366</guid>
		<description>Java Strings are immutable, so every time you concatenate a String or update a String, you&#039;re actually creating an entirely new instance of the String. This is why memory consumption can skyrocket when reading or writing large text files. There are a number of Java classes that will do this for you, such as StringBuffer, BufferedReader, StringWriter, etc. A Google search on these will point you in the right direction.</description>
		<content:encoded><![CDATA[<p>Java Strings are immutable, so every time you concatenate a String or update a String, you&#8217;re actually creating an entirely new instance of the String. This is why memory consumption can skyrocket when reading or writing large text files. There are a number of Java classes that will do this for you, such as StringBuffer, BufferedReader, StringWriter, etc. A Google search on these will point you in the right direction.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Brian Kotek</title>
		<link>http://www.erichynds.com/coldfusion/large-loops-out-of-memory/#comment-3846</link>
		<dc:creator>Brian Kotek</dc:creator>
		<pubDate>Wed, 11 Nov 2009 20:36:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.erichynds.com/blog/?p=24#comment-3846</guid>
		<description>Java Strings are immutable, so every time you concatenate a String or update a String, you&#039;re actually creating an entirely new instance of the String. This is why memory consumption can skyrocket when reading or writing large text files. There are a number of Java classes that will do this for you, such as StringBuffer, BufferedReader, StringWriter, etc. A Google search on these will point you in the right direction.</description>
		<content:encoded><![CDATA[<p>Java Strings are immutable, so every time you concatenate a String or update a String, you&#8217;re actually creating an entirely new instance of the String. This is why memory consumption can skyrocket when reading or writing large text files. There are a number of Java classes that will do this for you, such as StringBuffer, BufferedReader, StringWriter, etc. A Google search on these will point you in the right direction.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Qasim Rasheed</title>
		<link>http://www.erichynds.com/coldfusion/large-loops-out-of-memory/#comment-1365</link>
		<dc:creator>Qasim Rasheed</dc:creator>
		<pubDate>Wed, 11 Nov 2009 19:28:01 +0000</pubDate>
		<guid isPermaLink="false">http://www.erichynds.com/blog/?p=24#comment-1365</guid>
		<description>I recently refactored a process similar to what you have described. Here are few things that I did

1. Used BufferedReader instead of cffile action=&quot;read&quot;. We are still on CF7
2. Simplified queries by using Oracle&#039;s merge (aka upsert) operation. A single merge statement is smart enough to do an insert or update based on condition provided.
3. Instead of running cfquery on each loop iteration, I started using JDBC PreparedStatement as a Batch.

after these changes were made, a routine that was consistently timing out, could be run in 15-20 minutes.

Thanks</description>
		<content:encoded><![CDATA[<p>I recently refactored a process similar to what you have described. Here are few things that I did</p>
<p>1. Used BufferedReader instead of cffile action=&#8221;read&#8221;. We are still on CF7<br />
2. Simplified queries by using Oracle&#8217;s merge (aka upsert) operation. A single merge statement is smart enough to do an insert or update based on condition provided.<br />
3. Instead of running cfquery on each loop iteration, I started using JDBC PreparedStatement as a Batch.</p>
<p>after these changes were made, a routine that was consistently timing out, could be run in 15-20 minutes.</p>
<p>Thanks</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Qasim Rasheed</title>
		<link>http://www.erichynds.com/coldfusion/large-loops-out-of-memory/#comment-3845</link>
		<dc:creator>Qasim Rasheed</dc:creator>
		<pubDate>Wed, 11 Nov 2009 19:28:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.erichynds.com/blog/?p=24#comment-3845</guid>
		<description>I recently refactored a process similar to what you have described. Here are few things that I did

1. Used BufferedReader instead of cffile action=&quot;read&quot;. We are still on CF7
2. Simplified queries by using Oracle&#039;s merge (aka upsert) operation. A single merge statement is smart enough to do an insert or update based on condition provided.
3. Instead of running cfquery on each loop iteration, I started using JDBC PreparedStatement as a Batch.

after these changes were made, a routine that was consistently timing out, could be run in 15-20 minutes.

Thanks</description>
		<content:encoded><![CDATA[<p>I recently refactored a process similar to what you have described. Here are few things that I did</p>
<p>1. Used BufferedReader instead of cffile action=&#8221;read&#8221;. We are still on CF7<br />
2. Simplified queries by using Oracle&#8217;s merge (aka upsert) operation. A single merge statement is smart enough to do an insert or update based on condition provided.<br />
3. Instead of running cfquery on each loop iteration, I started using JDBC PreparedStatement as a Batch.</p>
<p>after these changes were made, a routine that was consistently timing out, could be run in 15-20 minutes.</p>
<p>Thanks</p>
]]></content:encoded>
	</item>
</channel>
</rss>

