lxml on Windows crashes with large file
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
lxml |
Triaged
|
Undecided
|
Unassigned |
Bug Description
Using xmlfile to write a large file and hitting problems on Windows. I guess there's a memory problem. This is using lxml 3.7.2. The source file can be got from https:/
Python : sys.version_
final', serial=0)
lxml.etree : (3, 7, 2, 0)
libxml used : (2, 9, 4)
libxml compiled : (2, 9, 4)
libxslt used : (1, 1, 29)
libxslt compiled : (1, 1, 29)
Traceback:
Python 3.4.4 (v3.4.4:
tel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> from openpyxl import load_workbook
>>> wb = load_workbook(
>>> wb.save("bug494-win.xlsx")
Traceback (most recent call last):
File "C:\openpyxl\
el = write_cell(xf, worksheet, cell, cell.has_style)
File "C:\openpyxl\
_cell
with xf.element('c', attributes):
File "src\lxml\
enter__ (src\lxml\
File "src\lxml\
r._write_
File "src\lxml\
r._handle_error (src\lxml\
File "src\lxml\
se_if_stored (src\lxml\
File "src\lxml\
(src\lxml\
MemoryError
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\openpyxl\
write_row(xf, worksheet, row, row_idx, max_column)
File "C:\openpyxl\
el = write_cell(xf, worksheet, cell, cell.has_style)
File "src\lxml\
exit__ (src\lxml\
File "src\lxml\
r._write_
File "src\lxml\
r._handle_error (src\lxml\
File "src\lxml\
or (src\lxml\
lxml.etree.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\openpyxl\
write_rows(xf, ws)
File "C:\openpyxl\
write_row(xf, worksheet, row, row_idx, max_column)
File "src\lxml\
exit__ (src\lxml\
File "src\lxml\
r._write_
File "src\lxml\
r._handle_error (src\lxml\
File "src\lxml\
or (src\lxml\
lxml.etree.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\openpyxl\
save_
File "C:\openpyxl\
writer.
File "C:\openpyxl\
self.
File "C:\openpyxl\
self.
File "C:\openpyxl\
xml = ws._write()
File "C:\openpyxl\
return write_worksheet
File "C:\openpyxl\
xf.
File "src\lxml\
exit__ (src\lxml\
File "src\lxml\
r._write_
File "src\lxml\
r._handle_error (src\lxml\
File "src\lxml\
or (src\lxml\
lxml.etree.
Sorry for looking at this so late, but this probably isn't writing to a file on disk directly, right? Is this writing to an in-memory file-like object in some way?