-
Notifications
You must be signed in to change notification settings - Fork 57
Description
I tried to get a list of all the spreadsheet sheets on a 250k ods using OdfDocument::getTableList() and stopped the process after minutes of full cpu usage.
OdfDocument::getTableList() is using OdfSchemaDocument::getTables() is using fillTableList which is going recursively through all the XML.However, the comment above fillTableList says: "Only tables being on root level are being considered" which is not what fillTableList does.
According to the old "simple" API source and according to OdfDocument::getTableByName only the root level needs to be searched for ODS-Tables, so the comment seems correct. However, I did not look into the specification of ODS and do not know about other document formats and whether they need this method recursively.
I suggest to consider removing the recursive call from fillTableList or document it as a false-friend and create a new one for a list of ODS tables on root level.