See 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/94/display/redirect?page=changes>

Changes:

[gwoolsey] Bug #61841 - Unnecessary long computation when evaluating VLOOKUP on 
all column reference

Found some optimizations in the general evaluation framework related to blank 
cells in rows beyond the last defined row of a sheet.

I don't see any issue with passing a bit of context down deeper into this 
framework, as it's all POI-internal and only had one calling path.

See the above bug for the performance analysis.  Not specifically related to 
VLOOKUP, but improves that case by more than 2/3 as well.

[fanningpj] use try-with-resources in more places

[fanningpj] use try-with-resources in more places

------------------------------------------
[...truncated 643.54 KB...]
  [javadoc]    &lt;/r>
  [javadoc]          ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\eventusermodel\ReadOnlySharedStringsTable.java>:72:
 error: bad use of '>'
  [javadoc]  &lt;/si>
  [javadoc]         ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\eventusermodel\ReadOnlySharedStringsTable.java>:73:
 error: bad use of '>'
  [javadoc]  &lt;si>
  [javadoc]        ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\eventusermodel\ReadOnlySharedStringsTable.java>:74:
 error: bad use of '>'
  [javadoc]    &lt;t>This does not&lt;/t>
  [javadoc]         ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\eventusermodel\ReadOnlySharedStringsTable.java>:74:
 error: bad use of '>'
  [javadoc]    &lt;t>This does not&lt;/t>
  [javadoc]                             ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\eventusermodel\ReadOnlySharedStringsTable.java>:75:
 error: bad use of '>'
  [javadoc]  &lt;/si>
  [javadoc]         ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\eventusermodel\ReadOnlySharedStringsTable.java>:76:
 error: bad use of '>'
  [javadoc] &lt;/sst>
  [javadoc]         ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\extractor\XSSFImportFromXML.java>:86:
 error: exception not thrown: javax.xml.parsers.ParserConfigurationException
  [javadoc]      * @throws ParserConfigurationException if there are problems 
with XML parser configuration
  [javadoc]                ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\model\StylesTable.java>:92:
 error: malformed HTML
  [javadoc]      * @throws IllegalArgumentException if <code>num</code> < 0
  [javadoc]                                                             ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\model\StylesTable.java>:93:
 error: malformed HTML
  [javadoc]      * @throws IllegalStateException if <code>num</code> < current 
number of data formats in the style table.
  [javadoc]                                                          ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\streaming\SXSSFRow.java>:116:
 error: malformed HTML
  [javadoc]      * @throws IllegalArgumentException if columnIndex < 0 or 
greater than the maximum number of supported columns
  [javadoc]                                                        ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\streaming\SXSSFRow.java>:133:
 error: malformed HTML
  [javadoc]      * @throws IllegalArgumentException if columnIndex < 0 or 
greate than a maximum number of supported columns
  [javadoc]                                                        ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\streaming\SXSSFRow.java>:191:
 error: malformed HTML
  [javadoc]      * @throws IllegalArgumentException if rowNum < 0
  [javadoc]                                                   ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\streaming\SXSSFRow.java>:230:
 error: malformed HTML
  [javadoc]      * @throws IllegalArgumentException if cellnum < 0 or the 
specified MissingCellPolicy is invalid
  [javadoc]                                                    ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\usermodel\XSSFColor.java>:230:
 error: unknown tag: clrScheme
  [javadoc]      * Index into the <clrScheme> collection, referencing a 
particular <sysClr> or
  [javadoc]                       ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\usermodel\XSSFColor.java>:230:
 error: unknown tag: sysClr
  [javadoc]      * Index into the <clrScheme> collection, referencing a 
particular <sysClr> or
  [javadoc]                                                                     
   ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\usermodel\XSSFColor.java>:231:
 error: unknown tag: srgbClr
  [javadoc]      *  <srgbClr> value expressed in the Theme part.
  [javadoc]         ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\usermodel\XSSFColor.java>:239:
 error: unknown tag: clrScheme
  [javadoc]      * Index into the <clrScheme> collection, referencing a 
particular <sysClr> or
  [javadoc]                       ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\usermodel\XSSFColor.java>:239:
 error: unknown tag: sysClr
  [javadoc]      * Index into the <clrScheme> collection, referencing a 
particular <sysClr> or
  [javadoc]                                                                     
   ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\usermodel\XSSFColor.java>:240:
 error: unknown tag: srgbClr
  [javadoc]      *  <srgbClr> value expressed in the Theme part.
  [javadoc]         ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\usermodel\XSSFDxfStyleProvider.java>:42:
 error: bad use of '>'
  [javadoc]      * @param stripeSize 0 for non-stripe styles, > 1 for stripes
  [javadoc]                                                   ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\usermodel\XSSFName.java>:146:
 error: tag not allowed here: <blockquote>
  [javadoc]      * <pre><blockquote>
  [javadoc]             ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\usermodel\XSSFName.java>:165:
 error: unexpected end tag: </p>
  [javadoc]     * </p>
  [javadoc]       ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\usermodel\XSSFName.java>:36:
 error: tag not allowed here: <blockquote>
  [javadoc]  * <pre><blockquote>
  [javadoc]         ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\usermodel\XSSFName.java>:86:
 error: tag not allowed here: <li>
  [javadoc]      * <li> this defined name refers to a range to which an 
advanced filter has been
  [javadoc]        ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\usermodel\XSSFName.java>:88:
 error: tag not allowed here: <li>
  [javadoc]      * <li> This defined name refers to a range to which an 
AutoFilter has been
  [javadoc]        ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\usermodel\XSSFRichTextString.java>:430:
 error: bad use of '>'
  [javadoc]      * CTRPrElt --> CTFont adapter
  [javadoc]                   ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\usermodel\XSSFRow.java>:106:
 error: unknown tag: Cell
  [javadoc]      * for (Iterator<Cell> it = row.cellIterator(); it.hasNext(); ) 
{
  [javadoc]                     ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\usermodel\XSSFRow.java>:193:
 error: malformed HTML
  [javadoc]      * @throws IllegalArgumentException if columnIndex < 0 or 
greater than 16384,
  [javadoc]                                                        ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\usermodel\XSSFRow.java>:207:
 error: malformed HTML
  [javadoc]      * @throws IllegalArgumentException if the specified cell type 
is invalid, columnIndex < 0
  [javadoc]                                                                     
                       ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\usermodel\XSSFRow.java>:381:
 error: malformed HTML
  [javadoc]      * @throws IllegalArgumentException if rowNum < 0 or greater 
than 1048575
  [javadoc]                                                   ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\usermodel\XSSFSheetConditionalFormatting.java>:70:
 error: unexpected end tag: </p>
  [javadoc]      * </p>
  [javadoc]        ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\usermodel\XSSFWorkbook.java>:801:
 error: unexpected end tag: </p>
  [javadoc]      * </p>
  [javadoc]        ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\usermodel\XSSFWorkbook.java>:818:
 error: unexpected end tag: </p>
  [javadoc]      * </p>
  [javadoc]        ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\usermodel\extensions\XSSFHeaderFooter.java>:40:
 error: semicolon missing
  [javadoc]  * section), and the date on the second line (center section). 
&CCenter
  [javadoc]                                                                ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\usermodel\extensions\XSSFHeaderFooter.java>:41:
 error: bad HTML entity
  [javadoc]  * &"-,Bold"Bold &"-,Regular"Header_x000A_&D
  [javadoc]    ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\usermodel\extensions\XSSFHeaderFooter.java>:41:
 error: bad HTML entity
  [javadoc]  * &"-,Bold"Bold &"-,Regular"Header_x000A_&D
  [javadoc]                  ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\usermodel\extensions\XSSFHeaderFooter.java>:41:
 error: semicolon missing
  [javadoc]  * &"-,Bold"Bold &"-,Regular"Header_x000A_&D
  [javadoc]                                           ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\usermodel\extensions\XSSFHeaderFooter.java>:48:
 error: semicolon missing
  [javadoc]  * <dt>&L</dt>
  [javadoc]        ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\usermodel\extensions\XSSFHeaderFooter.java>:53:
 error: semicolon missing
  [javadoc]  * <dt>&P</dt>
  [javadoc]        ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\usermodel\extensions\XSSFHeaderFooter.java>:55:
 error: semicolon missing
  [javadoc]  * <dt>&N</dt>
  [javadoc]        ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\usermodel\extensions\XSSFHeaderFooter.java>:57:
 error: semicolon missing
  [javadoc]  * <dt>&font size</dt>
  [javadoc]        ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\usermodel\extensions\XSSFHeaderFooter.java>:59:
 error: semicolon missing
  [javadoc]  * <dt>&K</dt>
  [javadoc]        ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\usermodel\extensions\XSSFHeaderFooter.java>:63:
 error: semicolon missing
  [javadoc]  * <dt>&S</dt>
  [javadoc]        ^
  [javadoc] 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/src\ooxml\java\org\apache\poi\xssf\usermodel\extensions\XSSFHeaderFooter.java>:65:
 error: semicolon missing
  [javadoc]  * <dt>&X</dt>
  [javadoc]        ^
  [javadoc] 100 errors
  [javadoc] 100 warnings
      [jar] Building jar: 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/build\dist\maven\poi-ooxml\poi-ooxml-4.0.0-SNAPSHOT-javadoc.jar>

assemble:
      [zip] Building zip: 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/build\dist\poi-bin-4.0.0-SNAPSHOT-20171206.zip>
      [tar] Building tar: 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/build\dist\poi-bin-4.0.0-SNAPSHOT-20171206.tar.gz>
      [zip] Building zip: 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/build\dist\poi-src-4.0.0-SNAPSHOT-20171206.zip>
      [tar] Building tar: 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/build\dist\poi-src-4.0.0-SNAPSHOT-20171206.tar.gz>
     [echo] Creating Maven POMs

maven-poms:
     [copy] Copying 6 files to 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/build\dist\maven>
     [echo] Maven POMs are located in 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/build\dist>
     [echo] Use ant dist-nexus to deploy the artifacts in the remote repository
     [echo] Distribution located in 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/build\dist>
     [echo] Use "ant dist-checksum" to create md5/sha1/sha512 checksums and GPG 
signatures

findbugs:
      [get] Destination already exists (skipping): 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/lib\findbugs-noUpdateChecks-3.0.1.zip>
    [unzip] Expanding: 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/lib\findbugs-noUpdateChecks-3.0.1.zip>
 into <https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/build\findbugs>
 [findbugs] Executing findbugs FindBugsTask from ant task
 [findbugs] Running FindBugs...
 [findbugs] Warnings generated: 44
 [findbugs] Calculating exit code...
 [findbugs] Setting 'bugs found' flag (1)
 [findbugs] Exit code set to: 1
 [findbugs] Java Result: 1
 [findbugs] Output saved to build/findbugs.xml
     [xslt] Transforming into 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/build>
     [xslt] Processing 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/build\findbugs.xml> to 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/build\findbugs.html>
     [xslt] Loading stylesheet 
jar:<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/build/findbugs/lib/findbugs.jar!/fancy-hist.xsl>

release-notes:
     [copy] Copying 1 file to 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/build\dist>

rat-check:
    [mkdir] Created dir: 
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/build\rat>
     [echo] 
     [echo] *****************************************************
     [echo] Summary
     [echo] -------
     [echo] Generated at: 2017-12-06T00:38:22+00:00
     [echo] 
     [echo] Notes: 1
     [echo] Binaries: 120
     [echo] Archives: 0
     [echo] Standards: 3662
     [echo] 
     [echo] Apache Licensed: 3661
     [echo] Generated Documents: 0
     [echo] 
     [echo] JavaDocs are generated, thus a license header is optional.
     [echo] Generated files do not require license headers.
     [echo] 
     [echo] 1 Unknown Licenses
     [echo] 
     [echo] *****************************************************
     [echo] 
     [echo] Files with unapproved licenses:
     [echo] 
     [echo]   
f:/jenkins/jenkins-slave/workspace/POI-DSL-Windows-1.8/src/ooxml/testcases/org/apache/poi/ss/formula/functions/TestVlookup.java
     [echo] 
     [echo] *****************************************************
     [echo] 
     [echo] *****************************************************
     [echo]   Files with Apache License headers will be marked AL
     [echo]   Binary files (which do not require any license headers) will be 
marked B
     [echo]   Compressed archives will be marked A
     [echo]   Notices, licenses etc. will be marked N
     [echo]  !????? 
f:/jenkins/jenkins-slave/workspace/POI-DSL-Windows-1.8/src/ooxml/testcases/org/apache/poi/ss/formula/functions/TestVlookup.java
     [echo]  
     [echo] *****************************************************
     [echo] 
     [echo]  Printing headers for text files without a valid license header...
     [echo]  
     [echo] =====================================================
     [echo] == File: 
f:/jenkins/jenkins-slave/workspace/POI-DSL-Windows-1.8/src/ooxml/testcases/org/apache/poi/ss/formula/functions/TestVlookup.java
     [echo] =====================================================
     [echo] package org.apache.poi.ss.formula.functions;
     [echo] 
     [echo] import org.apache.poi.ss.usermodel.CellType;
     [echo] import org.apache.poi.ss.usermodel.FormulaEvaluator;
     [echo] import org.apache.poi.ss.usermodel.Workbook;
     [echo] import org.apache.poi.xssf.XSSFTestDataSamples;
     [echo] import org.junit.Test;
     [echo] 
     [echo] import junit.framework.TestCase;
     [echo] 
     [echo] /**
     [echo]  * Test the VLOOKUP function
     [echo]  */
     [echo] public class TestVlookup extends TestCase {
     [echo] 
     [echo]     @Test
     [echo]     public void testFullColumnAreaRef61841() {
     [echo]         final Workbook wb = 
XSSFTestDataSamples.openSampleWorkbook("VLookupFullColumn.xlsx");
     [echo]         FormulaEvaluator feval = 
wb.getCreationHelper().createFormulaEvaluator();
     [echo]         feval.evaluateAll();
     [echo]         assertEquals("Wrong lookup value",  "Value1", 
feval.evaluate(wb.getSheetAt(0).getRow(3).getCell(1)).getStringValue());
     [echo]         assertEquals("Lookup should return #N/A", CellType.ERROR, 
feval.evaluate(wb.getSheetAt(0).getRow(4).getCell(1)).getCellType());
     [echo]     }
     [echo] 
     [echo] }

BUILD FAILED
<https://builds.apache.org/job/POI-DSL-Windows-1.8/ws/build.xml>:2075: 
condition satisfied

Total time: 19 minutes 32 seconds
Build step 'Invoke Ant' marked build as failure
Skipping publisher since build result is FAILURE
Archiving artifacts
[Fast Archiver] Compressed 236.18 MB of artifacts by 55.0% relative to #93
Skipping publisher since build result is FAILURE
Recording test results

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@poi.apache.org
For additional commands, e-mail: dev-h...@poi.apache.org

Reply via email to