Bug 18219 - Cache collision

Topics: Developer Forum, User Forum
Jun 15, 2012 at 2:46 AM

I submitted a patch, but the patch was denied, and the bug is now sitting with a low priority tag.

For us, this is not low priority, as it returns corrupt results without this fix.

Is there something undesirable in the patch?  There has been no feedback, so i don't know if there is something i can do to make the patch more palatable for whoever is deciding these.


Jun 15, 2012 at 6:47 AM
Edited Jun 15, 2012 at 8:15 AM

I thought I'd explained why I'd rejected that patch when I declined it: you should have received an email from codeplex explaining that. It's because I'm starting to rewrite the calculation engine as a multiton rather than a singleton, which means that it won't clash once that is completed, but that work will also refactor the calculation engine to improve its performance and reduce some of its complexities in accessing the parent workbook.


The patch has been declined for the project PHPExcel on CodePlex.com.


I'm not going to apply this patch because I'm intending a major rewrite
of the calculation engine over the next quarter and among other changes
it will be switched from a singleton to a multiton pattern, effectively
creating a calculation object for every workbook, so each will have its 
own calculation cache and no risk of clashes. Can't remember what Work 
Item this is, but it's somewhere in the issues log. Note that it'll also 
support a standalone instance for those cases where people want to use 
the calculation engine without instantiating/loading a workbook.

But thanks for offering the patch, and don't stop submitting more. The 
others that you've uploaded have been appreciated (especially given the 
subtle differences between Open and Libre office).

Note also that we're moving the source code repository to github over 
the next week, so it should be a lot easier to submit any changes... 
though we'll be replicating changes between github and codeplex SVN for 
a while.

Thanks again

- The CodePlex team

There's nothing to prevent you or anybody else including the patch code that you submitted in your own copy of PHPExcel, but to be aware that the code is being rewritten

I've left the issue that you raised as a placeholder to remind me, and because it includes the patch as a file attachment.