Use JProbe to find the "leak".

-Tom

----- Original Message ----- 
From: "Rune Sandnes" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Sunday, September 02, 2001 7:53 AM
Subject: Problem with C2 memory usage



We have some problems with memory usage in Cocoon2b2 on Windows 2000
with IIS and Tomcat 3.2.3. 

Everything works fine for a while, but after a number of accesses the
amount of memory Cocoon uses grows really big (e.g. 180MB) and things
work slower and slower. We have to restart tomcat to get Cocoon to start
responding again.

It might seem like it never does garbage collection.
I use the default settings from the installation, and I have also tried
to disable caching to see if that could be a source of memory leekage. 

The problem arises with database access from xsp files, when I do stress
testing with a simple xml file it works fine, the memory usage grows
much slower anyway.

The esql xsp page I use is included below. Is there anything really,
really wrong here?
Could it be something else in my setup?


<?xml version="1.0" encoding="ISO-8859-1"?>

<xsp:page
  language="java"
        xmlns:xsp="http://apache.org/xsp";
  xmlns:esql="http://apache.org/cocoon/SQL/v2";
>

<page>
<esql:connection>
  <esql:pool>poolnamehere</esql:pool>

  <!-- Document data -->
  <esql:execute-query>
    <esql:query>select * from documents where id =
<xsp:expr>request.getParameter("id")</xsp:expr></esql:query>
    <esql:results>
      <esql:row-results>

          <content>
    <dokid><esql:get-int column="id"/></dokid>
          <esql:get-xml column="doc_data"/>
          </content>
  
      </esql:row-results>
    </esql:results>
  </esql:execute-query>
  

  <!-- News column -->
  <esql:execute-query>
    <esql:query>SELECT TOP 3 LEFT(documents.title, 30) + '...' AS title,
id FROM documents INNER JOIN doc_locations ON documents.id =
doc_locations.document_id AND doc_locations.location = 'news' AND
documents.status = 'A' ORDER BY documents.create_date</esql:query>
    <esql:results>
      <news>
        <items>
          <esql:row-results>
            <item>
<id><esql:get-int column="id"/></id>
<title><esql:get-string column="title"/></title>
    </item>
           </esql:row-results>
        </items>
      </news>
    </esql:results>
  </esql:execute-query>


  <!-- Menu -->
  <esql:execute-query>
    <esql:query>SELECT * FROM document_tree</esql:query>
    <esql:results>
<menutree>
  <esql:row-results>
     <item>
<id><esql:get-string column="id"/></id>
<parent_id><esql:get-string
column="parent_id"/></parent_id>
<name><esql:get-string column="name"/></name>
     </item>
          </esql:row-results>
        </menutree>
    </esql:results>
  </esql:execute-query>


  <!-- Documents in this category -->
  <esql:execute-query>
    <esql:query>SELECT LEFT(documents.title, 25) + '...' AS title, id
FROM documents INNER JOIN doc_locations ON documents.id =
doc_locations.document_id AND doc_locations.location = 'companyinfo' AND
documents.status = 'A' ORDER BY documents.create_date</esql:query>
    <esql:results>
    <otherdocs>
      <esql:row-results>

          <od>
  <id><esql:get-int column="id"/></id>
          <title><esql:get-string column="title"/></title>
          </od>
  
      </esql:row-results>
     </otherdocs>
    </esql:results>
  </esql:execute-query>


</esql:connection>

</page>

</xsp:page>


-- 
Regards,
Rune, Trondheim, Norway

---------------------------------------------------------------------
Please check that your question has not already been answered in the
FAQ before posting. <http://xml.apache.org/cocoon/faqs.html>

To unsubscribe, e-mail: <[EMAIL PROTECTED]>
For additional commands, e-mail: <[EMAIL PROTECTED]>



---------------------------------------------------------------------
Please check that your question has not already been answered in the
FAQ before posting. <http://xml.apache.org/cocoon/faqs.html>

To unsubscribe, e-mail: <[EMAIL PROTECTED]>
For additional commands, e-mail: <[EMAIL PROTECTED]>

Reply via email to