You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@poi.apache.org by ni...@apache.org on 2014/03/22 21:44:07 UTC

svn commit: r1580313 - in /poi/site: publish/changes.html publish/changes.rss publish/faq.html src/documentation/content/xdocs/faq.xml

Author: nick
Date: Sat Mar 22 20:44:07 2014
New Revision: 1580313

URL: http://svn.apache.org/r1580313
Log:
Add a FAQ entry about how you can use the POI examples to see where performance problems come from

Modified:
    poi/site/publish/changes.html
    poi/site/publish/changes.rss
    poi/site/publish/faq.html
    poi/site/src/documentation/content/xdocs/faq.xml

Modified: poi/site/publish/changes.html
URL: http://svn.apache.org/viewvc/poi/site/publish/changes.html?rev=1580313&r1=1580312&r2=1580313&view=diff
==============================================================================
--- poi/site/publish/changes.html (original)
+++ poi/site/publish/changes.html Sat Mar 22 20:44:07 2014
@@ -260,6 +260,30 @@ if (VERSION > 3) {
 <img class="icon" alt="fix" src="images/fix.jpg"> <a href="http://issues.apache.org/bugzilla/show_bug.cgi?id=56278">56278</a> - Support loading .xlsx files with no Styles Table</li>
         
 <li>
+<img class="icon" alt="fix" src="images/fix.jpg"> <a href="http://issues.apache.org/bugzilla/show_bug.cgi?id=56195">56195</a> - Replace System.err in XSSFSheetXMLHandler with propert logging</li>
+        
+<li>
+<img class="icon" alt="fix" src="images/fix.jpg"> <a href="http://issues.apache.org/bugzilla/show_bug.cgi?id=56169">56169</a> - Fix NPE during export to XML with xs:all</li>
+        
+<li>
+<img class="icon" alt="fix" src="images/fix.jpg"> <a href="http://issues.apache.org/bugzilla/show_bug.cgi?id=55923">55923</a> - Fix compare/sorting of nodes in exported XML</li>
+        
+<li>
+<img class="icon" alt="fix" src="images/fix.jpg"> <a href="http://issues.apache.org/bugzilla/show_bug.cgi?id=55926">55926</a> - Handle numeric formula values when exporting to XML</li>
+        
+<li>
+<img class="icon" alt="fix" src="images/fix.jpg"> <a href="http://issues.apache.org/bugzilla/show_bug.cgi?id=55927">55927</a> - Handle date types when exporting to XML</li>
+        
+<li>
+<img class="icon" alt="add" src="images/add.jpg"> Stop being compatible to JDK 1.5, we now require JDK 6</li>
+        
+<li>
+<img class="icon" alt="fix" src="images/fix.jpg"> <a href="http://issues.apache.org/bugzilla/show_bug.cgi?id=56011">56011</a> - Use default style if the cell style attribute is not present</li>
+        
+<li>
+<img class="icon" alt="add" src="images/add.jpg"> Upgrade third party libs to latest versions: commons-logging, commons-codec, log4j</li>
+        
+<li>
 <img class="icon" alt="fix" src="images/fix.jpg"> <a href="http://issues.apache.org/bugzilla/show_bug.cgi?id=56260">56260</a> - Avoid warnings when a TextHeaderAtom is empty and has another straight after, or where there's a TextRulerAtom / MasterTextPropAtom / TextSpecInfoAtom before the Text Chars / Bytes</li>
         
 <li>

Modified: poi/site/publish/changes.rss
URL: http://svn.apache.org/viewvc/poi/site/publish/changes.rss?rev=1580313&r1=1580312&r2=1580313&view=diff
==============================================================================
--- poi/site/publish/changes.rss (original)
+++ poi/site/publish/changes.rss Sat Mar 22 20:44:07 2014
@@ -1,3 +1,3 @@
 <?xml version="1.0" encoding="ISO-8859-1"?>
 <!DOCTYPE rss PUBLIC "-//Netscape Communications//DTD RSS 0.91//EN" "http://my.netscape.com/publish/formats/rss-0.91.dtd">
-<rss version="0.91"><channel><title>POI Changes</title><link>http://poi.apache.org/changes.html</link><description>POI Changes</description><language>en-us</language><item><title> fix(bug 56278)</title><link>http://poi.apache.org/changes.html</link><description> fix by POI Developers (bug 56278) - Support loading .xlsx files with no Styles Table</description></item><item><title> fix(bug 56260)</title><link>http://poi.apache.org/changes.html</link><description> fix by POI Developers (bug 56260) - Avoid warnings when a TextHeaderAtom is empty and has another straight after, or where there's a TextRulerAtom / MasterTextPropAtom / TextSpecInfoAtom before the Text Chars / Bytes</description></item><item><title> add(bug 56075)</title><link>http://poi.apache.org/changes.html</link><description> add by POI Developers (bug 56075) - Add Change Tracking support to XWPF</description></item><item><title> add(bug 56077)</title><link>http://poi.apache.org/changes.html</link><description> add by PO
 I Developers (bug 56077) - Add password hash function to HWPF</description></item><item><title> add(bug 56076)</title><link>http://poi.apache.org/changes.html</link><description> add by POI Developers (bug 56076) - Add document protection with password support to XWPF</description></item><item><title> fix(bug 55026)</title><link>http://poi.apache.org/changes.html</link><description> fix by POI Developers (bug 55026) - Support OOXML ContentTypes which include parameters</description></item><item><title> fix(bug 55732)</title><link>http://poi.apache.org/changes.html</link><description> fix by POI Developers (bug 55732) - PPT can't open, fails with "Couldn't instantiate ... StyleTextProp9Atom"</description></item><item><title> fix(bug 56138)</title><link>http://poi.apache.org/changes.html</link><description> fix by POI Developers (bug 56138) - HSPF code page strings can be zero length</description></item><item><title> add(bug 53130)</title><link>http://poi.apache.org/changes.html</link
 ><description> add by POI Developers (bug 53130) - SXSSF Shared Strings option support</description></item><item><title> fix(bug 55902)</title><link>http://poi.apache.org/changes.html</link><description> fix by POI Developers (bug 55902) - Mixed fonts issue with Chinese characters (unable to form images from ppt)</description></item><item><title> add(bug 56022)</title><link>http://poi.apache.org/changes.html</link><description> add by POI Developers (bug 56022) - XSSF Event Text Extractor header/footer support</description></item><item><title> fix(bug 53282)</title><link>http://poi.apache.org/changes.html</link><description> fix by POI Developers (bug 53282) - Hyperlink with a non-breaking space throws java.lang.IllegalStateException</description></item><item><title> fix(bug 55802)</title><link>http://poi.apache.org/changes.html</link><description> fix by POI Developers (bug 55802) - Special Letters not exported correct</description></item><item><title> add</title><link>http://poi.a
 pache.org/changes.html</link><description> add by POI Developers - Expose the StyleIndex of HWPF CharacterRuns</description></item><item><title> fix(bug 51891)</title><link>http://poi.apache.org/changes.html</link><description> fix by POI Developers (bug 51891) - Fix StringIndexOutOfBoundsException : Ole10Native.&lt;init&gt; (parsing word file)</description></item></channel></rss>
\ No newline at end of file
+<rss version="0.91"><channel><title>POI Changes</title><link>http://poi.apache.org/changes.html</link><description>POI Changes</description><language>en-us</language><item><title> fix(bug 56278)</title><link>http://poi.apache.org/changes.html</link><description> fix by POI Developers (bug 56278) - Support loading .xlsx files with no Styles Table</description></item><item><title> fix(bug 56195)</title><link>http://poi.apache.org/changes.html</link><description> fix by POI Developers (bug 56195) - Replace System.err in XSSFSheetXMLHandler with propert logging</description></item><item><title> fix(bug 56169)</title><link>http://poi.apache.org/changes.html</link><description> fix by POI Developers (bug 56169) - Fix NPE during export to XML with xs:all</description></item><item><title> fix(bug 55923)</title><link>http://poi.apache.org/changes.html</link><description> fix by POI Developers (bug 55923) - Fix compare/sorting of nodes in exported XML</description></item><item><title> fix(bug
  55926)</title><link>http://poi.apache.org/changes.html</link><description> fix by POI Developers (bug 55926) - Handle numeric formula values when exporting to XML</description></item><item><title> fix(bug 55927)</title><link>http://poi.apache.org/changes.html</link><description> fix by POI Developers (bug 55927) - Handle date types when exporting to XML</description></item><item><title> add</title><link>http://poi.apache.org/changes.html</link><description> add by POI Developers - Stop being compatible to JDK 1.5, we now require JDK 6</description></item><item><title> fix(bug 56011)</title><link>http://poi.apache.org/changes.html</link><description> fix by POI Developers (bug 56011) - Use default style if the cell style attribute is not present</description></item><item><title> add</title><link>http://poi.apache.org/changes.html</link><description> add by POI Developers - Upgrade third party libs to latest versions: commons-logging, commons-codec, log4j</description></item><item><t
 itle> fix(bug 56260)</title><link>http://poi.apache.org/changes.html</link><description> fix by POI Developers (bug 56260) - Avoid warnings when a TextHeaderAtom is empty and has another straight after, or where there's a TextRulerAtom / MasterTextPropAtom / TextSpecInfoAtom before the Text Chars / Bytes</description></item><item><title> add(bug 56075)</title><link>http://poi.apache.org/changes.html</link><description> add by POI Developers (bug 56075) - Add Change Tracking support to XWPF</description></item><item><title> add(bug 56077)</title><link>http://poi.apache.org/changes.html</link><description> add by POI Developers (bug 56077) - Add password hash function to HWPF</description></item><item><title> add(bug 56076)</title><link>http://poi.apache.org/changes.html</link><description> add by POI Developers (bug 56076) - Add document protection with password support to XWPF</description></item><item><title> fix(bug 55026)</title><link>http://poi.apache.org/changes.html</link><des
 cription> fix by POI Developers (bug 55026) - Support OOXML ContentTypes which include parameters</description></item><item><title> fix(bug 55732)</title><link>http://poi.apache.org/changes.html</link><description> fix by POI Developers (bug 55732) - PPT can't open, fails with "Couldn't instantiate ... StyleTextProp9Atom"</description></item><item><title> fix(bug 56138)</title><link>http://poi.apache.org/changes.html</link><description> fix by POI Developers (bug 56138) - HSPF code page strings can be zero length</description></item><item><title> add(bug 53130)</title><link>http://poi.apache.org/changes.html</link><description> add by POI Developers (bug 53130) - SXSSF Shared Strings option support</description></item><item><title> fix(bug 55902)</title><link>http://poi.apache.org/changes.html</link><description> fix by POI Developers (bug 55902) - Mixed fonts issue with Chinese characters (unable to form images from ppt)</description></item><item><title> add(bug 56022)</title><link
 >http://poi.apache.org/changes.html</link><description> add by POI Developers (bug 56022) - XSSF Event Text Extractor header/footer support</description></item><item><title> fix(bug 53282)</title><link>http://poi.apache.org/changes.html</link><description> fix by POI Developers (bug 53282) - Hyperlink with a non-breaking space throws java.lang.IllegalStateException</description></item><item><title> fix(bug 55802)</title><link>http://poi.apache.org/changes.html</link><description> fix by POI Developers (bug 55802) - Special Letters not exported correct</description></item><item><title> add</title><link>http://poi.apache.org/changes.html</link><description> add by POI Developers - Expose the StyleIndex of HWPF CharacterRuns</description></item><item><title> fix(bug 51891)</title><link>http://poi.apache.org/changes.html</link><description> fix by POI Developers (bug 51891) - Fix StringIndexOutOfBoundsException : Ole10Native.&lt;init&gt; (parsing word file)</description></item></channel
 ></rss>
\ No newline at end of file

Modified: poi/site/publish/faq.html
URL: http://svn.apache.org/viewvc/poi/site/publish/faq.html?rev=1580313&r1=1580312&r2=1580313&view=diff
==============================================================================
--- poi/site/publish/faq.html (original)
+++ poi/site/publish/faq.html Sat Mar 22 20:44:07 2014
@@ -316,17 +316,22 @@ if (VERSION > 3) {
 </li>
 <li>
 <a name="faq-N10109-menu"></a><a href="#faq-N10109">
+      I think POI is using too much memory! What can I do?
+    </a>
+</li>
+<li>
+<a name="faq-N1012A-menu"></a><a href="#faq-N1012A">
       I can't seem to find the source for the OOXML CT.. classes, where do they
       come from?
     </a>
 </li>
 <li>
-<a name="faq-N10131-menu"></a><a href="#faq-N10131">
+<a name="faq-N10152-menu"></a><a href="#faq-N10152">
       An OLE2 ("binary") file is giving me problems, but I can't share it. How can I investigate the problem on my own?
     </a>
 </li>
 <li>
-<a name="faq-N1014B-menu"></a><a href="#faq-N1014B">
+<a name="faq-N1016C-menu"></a><a href="#faq-N1016C">
       An OOXML ("xml") file is giving me problems, but I can't share it. How can I investigate the problem on my own?
     </a>
 </li>
@@ -668,6 +673,45 @@ System.out.println("Core POI came from "
 <a name="faq-N10109"></a>
 <div class="h4">
 <h4>14. 
+      I think POI is using too much memory! What can I do?
+    </h4>
+</div>
+     
+<p>This one comes up quite a lot, but often the reason isn't what
+     you might initially think. So, the first thing to check is - what's
+     the source of the problem? Your file? Your code? Your environment?
+     Or Apache POI?</p>
+     
+<p>(If you're here, you probably think it's Apache POI. However, it
+     often isn't! A moderate laptop, with a decent but not excessive heap
+     size, from a standing start, can normally read or write a file with 
+     100 columns and 100,000 rows in under a couple of seconds, including
+     the time to start the JVM).</p>
+     
+<p>Apache POI ships with a few programs and a few example programs,
+     which can be used to do some basic performance checks. For testing
+     file generation, the class to use is in the examples package,
+     <a href="http://svn.apache.org/repos/asf/poi/trunk/src/examples/src/org/apache/poi/ss/examples/SSPerformanceTest.java">SSPerformanceTest</a>.
+     Run SSPerformanceTest with arguments of the writing type (HSSF, XSSF
+     or SXSSF), the number rows, the number of columns, and if the file
+     should be saved. If you can't run that with 50,000 rows and 50 columns
+     in all of HSSF, XSSF and SXSSF in under 3 seconds (ideally a lot less!), 
+     the problem is with your environment.</p>
+     
+<p>Next, use the example program
+     <a href="http://svn.apache.org/repos/asf/poi/trunk/src/examples/src/org/apache/poi/ss/examples/ToCSV.java">ToCSV</a>
+     to try reading the a file in with HSSF or XSSF. Related is
+     <a href="http://svn.apache.org/repos/asf/poi/trunk/src/examples/src/org/apache/poi/xssf/eventusermodel/XLSX2CSV.java">XLSX2CSV</a>,
+     which uses SAX parsing for .xlsx. Run this against both your problem file,
+     and a simple one generated by SSPerformanceTest of the same size. If this is
+     slow, then there could be an Apache POI problem with how the file is being
+     processed (POI makes some assumptions that might not always be right on all
+     files). If these tests are fast, then any performance problems are in your
+     code!</p>
+    
+<a name="faq-N1012A"></a>
+<div class="h4">
+<h4>15. 
       I can't seem to find the source for the OOXML CT.. classes, where do they
       come from?
     </h4>
@@ -696,9 +740,9 @@ System.out.println("Core POI came from "
          automatically download the specification XML Schema, and compile it for 
          you to generate the source and binary ooxml-schemas jars.</p>
     
-<a name="faq-N10131"></a>
+<a name="faq-N10152"></a>
 <div class="h4">
-<h4>15. 
+<h4>16. 
       An OLE2 ("binary") file is giving me problems, but I can't share it. How can I investigate the problem on my own?
     </h4>
 </div>
@@ -721,9 +765,9 @@ System.out.println("Core POI came from "
         allow you to check that things are being read as you expect, and 
         narrow in on problem records and structures.</p>
     
-<a name="faq-N1014B"></a>
+<a name="faq-N1016C"></a>
 <div class="h4">
-<h4>16. 
+<h4>17. 
       An OOXML ("xml") file is giving me problems, but I can't share it. How can I investigate the problem on my own?
     </h4>
 </div>

Modified: poi/site/src/documentation/content/xdocs/faq.xml
URL: http://svn.apache.org/viewvc/poi/site/src/documentation/content/xdocs/faq.xml?rev=1580313&r1=1580312&r2=1580313&view=diff
==============================================================================
--- poi/site/src/documentation/content/xdocs/faq.xml (original)
+++ poi/site/src/documentation/content/xdocs/faq.xml Sat Mar 22 20:44:07 2014
@@ -322,6 +322,41 @@ System.out.println("Core POI came from "
   </faq>
   <faq>
     <question>
+      I think POI is using too much memory! What can I do?
+    </question>
+    <answer>
+     <p>This one comes up quite a lot, but often the reason isn't what
+     you might initially think. So, the first thing to check is - what's
+     the source of the problem? Your file? Your code? Your environment?
+     Or Apache POI?</p>
+     <p>(If you're here, you probably think it's Apache POI. However, it
+     often isn't! A moderate laptop, with a decent but not excessive heap
+     size, from a standing start, can normally read or write a file with 
+     100 columns and 100,000 rows in under a couple of seconds, including
+     the time to start the JVM).</p>
+     <p>Apache POI ships with a few programs and a few example programs,
+     which can be used to do some basic performance checks. For testing
+     file generation, the class to use is in the examples package,
+     <link href="http://svn.apache.org/repos/asf/poi/trunk/src/examples/src/org/apache/poi/ss/examples/SSPerformanceTest.java">SSPerformanceTest</link>.
+     Run SSPerformanceTest with arguments of the writing type (HSSF, XSSF
+     or SXSSF), the number rows, the number of columns, and if the file
+     should be saved. If you can't run that with 50,000 rows and 50 columns
+     in all of HSSF, XSSF and SXSSF in under 3 seconds (ideally a lot less!), 
+     the problem is with your environment.</p>
+     <p>Next, use the example program
+     <link href="http://svn.apache.org/repos/asf/poi/trunk/src/examples/src/org/apache/poi/ss/examples/ToCSV.java">ToCSV</link>
+     to try reading the a file in with HSSF or XSSF. Related is
+     <link href="http://svn.apache.org/repos/asf/poi/trunk/src/examples/src/org/apache/poi/xssf/eventusermodel/XLSX2CSV.java">XLSX2CSV</link>,
+     which uses SAX parsing for .xlsx. Run this against both your problem file,
+     and a simple one generated by SSPerformanceTest of the same size. If this is
+     slow, then there could be an Apache POI problem with how the file is being
+     processed (POI makes some assumptions that might not always be right on all
+     files). If these tests are fast, then any performance problems are in your
+     code!</p>
+    </answer>
+  </faq>
+  <faq>
+    <question>
       I can't seem to find the source for the OOXML CT.. classes, where do they
       come from?
     </question>



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@poi.apache.org
For additional commands, e-mail: commits-help@poi.apache.org