https://bz.apache.org/bugzilla/show_bug.cgi?id=63474

            Bug ID: 63474
           Summary: Workbook creation fails with a JVM memory error in
                    3.14-beta1 and later, but succeeds in 3.13 and earlier
           Product: POI
           Version: unspecified
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: regression
          Priority: P2
         Component: HSSF
          Assignee: [email protected]
          Reporter: [email protected]
  Target Milestone: ---

We are observing the regression in the title with

java version "1.8.0_201"
Java(TM) SE Runtime Environment (build 1.8.0_201-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.201-b09, mixed mode)

the relevant JVM flags are "-Xmx3584m -Xms256m"

on Linux [...] 3.10.0-957.5.1.el7.x86_64 #1 SMP Fri Feb 1 14:54:57 UTC 2019
x86_64 x86_64 x86_64 GNU/Linux

the same regression does NOT happen on Windows, under a variety of java
versions and stack/heap space (all java 8).

-------------

Detailed description:

When using `WorkbookFactory.create()` on this XLS file:
https://drive.google.com/file/d/10XOpyz2imxJ6Q3cItqhboab8EWdUEQR_/view?usp=sharing
the entire JVM crashes because it's trying to request too much memory from the
OS, with the following message:

Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory([...],
[...], 0) failed; error='Cannot allocate memory' (errno=12)
#
# There is insufficient memory for the Java Runtime Environment to continue.
# Native memory allocation (mmap) failed to map [...] bytes for committing
reserved memory.
# An error report file with more information is saved as:
# [...]

this does not happen in v3.13 and lower, but starts happening v3.14-beta1, I've
tested several versions, including 3.14, 3.17, 4.1.0 and others I've probably
forgotten.

Note that this is different from the usual OOM errors that happen while reading
large XLS files, as those do not cause the whole JVM to crash.

The files that trigger this error are rare, but I've seen more than one
example.

Please let me know if there is any other test of information I can do/give.

-- 
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to