[pmwiki-users] php 5.2.1 problem (serious)
Henrik
henrik.bechmann at sympatico.ca
Sun Mar 18 15:19:00 CDT 2007
Update:
1. I am using PmWiki version 2.1.26
2. I have incrementally removed content from one of the pages that
doesn't render, and there is a threshold under which it does render, not
apparently associated with any specific wiki markup, just volume. So the
truncated page
http://www.dufferinpark.ca/cityrinks/wiki/wiki.php?n=DufferinParkRink.WinterDiary2006-2007
renders, but the original (longer page)
http://www.dufferinpark.ca/cityrinks/wiki/wiki.php?n=DufferinParkRink.WinterDiary2006-2007-original
doesn't, even though there's lots of content:
http://www.dufferinpark.ca/cityrinks/wiki/wiki.php?n=DufferinParkRink.WinterDiary2006-2007-original?action=source
3. I have turned on diagnostics, and compared ?action=diag on the two
above pages. They are identical, so I presume the in-memory structure is
not damaged.
4. I have upgraded my virtual desktop server from xampp, to run PHP
version 5.2.1, and am able to reproduce the problem. This eliminates the
server environment as the cause, and reduces the likelihood that some
php setting is the culprit.
My current working theory is that something in the following code
fragment from pmwiki.php is failing in the presence of PHP 5.2.1:
$text = '(:groupheader:)'.@$text.'(:groupfooter:)';
$t1 = time();
$FmtV['$PageText'] = MarkupToHTML($pagename, $text, $opt);
if (@$EnableHTMLCache > 0 && !$NoHTMLCache && $PageCacheFile
&& (time() - $t1 + 1) >= $EnableHTMLCache) {
$fp = @fopen("$PageCacheFile,new", "x");
if ($fp) {
fwrite($fp, serialize(array($FmtV['$PageText']))); fclose($fp);
rename("$PageCacheFile,new", $PageCacheFile);
}
}
most likely something in the MarkupToHTML function that is failing and
causing a blank to be returned.
I'll keep tracing it back, easier now that I have a local test
environment that reproduces the problem...
Again, if anyone has seen this or has heard something, please let me know.
Thanks,
Best,
- Henrik
Henrik wrote:
> My service provider just upgraded to php version 5.2.1 (good), which
> seems to be related to some rather complex pmwiki pages not rendering (bad).
>
> I can see all the wiki text in edit, but this text does not render.
> Instead the rendered page is blank of content. (The "wikitext" element
> in the rendered page is empty.)
>
> There are at least three pages that I have identified so far that have
> the problem, and the common characteristic is that they are large.
> However there is one page which is also large that *does* render, so it
> may be a combination of size and complexity.
>
> I have experimentally reduced size (amount of wiki text) in one of the
> pages that does not render, and there is a specific point at which it
> renders when I remove a paragraph. There are no embedded instructions
> in the final text that I remove to cross the threshold of renderin. If I
> add a plain paragraph at the beginning or end of this page then the page
> again disappears. So it appears to be some kind of resource over-run issue.
>
> Some kind of an array over-run? String length issue? PHP setting of some
> kind?
>
> This is obviously a critical problem, so if anyone has run into
> something like this I would be grateful to hear about it.
>
> Thanks,
>
> - Henrik
>
>
--
Henrik Bechmann
www.bechmann.ca
Webmaster, www.dufferinpark.ca
More information about the pmwiki-users
mailing list