Edit report at https://bugs.php.net/bug.php?id=79729&edit=1
ID: 79729
Updated by: php-bugs@lists.php.net
Reported by: ca at lsp dot net
Summary: Strings missing last character (Apache + OPcache)
-Status: Feedback
+Status: No Feedback
Type: Bug
Package: opcache
Operating System: Windows Server 2016 Standard
PHP Version: 7.3.21
Assigned To: cmb
Private report: N
New Comment:
No feedback was provided. The bug is being suspended because
we assume that you are no longer experiencing the problem.
If this is not the case and you are able to provide the
information that was requested earlier, please do so and
change the status of the bug back to "Re-Opened". Thank you.
Previous Comments:
------------------------------------------------------------------------
[2020-10-28 11:52:40] cmb@php.net
Sorry for the late reply. I'm still somewhat at a loss regarding
this issue, since your former comment[1] (and also the email
report) didn't reveal anything. I assume that all these issues
have the same root cause. However, while I was focused on some
kind of memory corruption, I might have been on the wrong track.
> - C:/app = test app for branch "develop"
> - C:/app-review/12345-foo = review app for branch "12345-foo"
>
> So could these issues be related to the fact that there are
> multiple MyDB.php files? I wonder if I have to enable
> opcache.revalidate_path to prevent the wrong file from being
> loaded by OPcache?
This might be something. opcache.revalidate_path is only relevant
if you're using the include path (and possibly changing it during
script execution), so yes, please enable that INI setting.
Yet another potential issue *might* be issues with the virtual
CWD, especially if there are reparse points (such as symlink,
junctions, etc.) involved. Are there?
[1] <https://bugs.php.net/bug.php?id=79729#1598950932>
------------------------------------------------------------------------
[2020-09-01 09:02:12] ca at lsp dot net
Yesterday, we started observing (new) issues despite opcache.optimization_level=0:
1. Error: Class ***\DebugBar contains 1 abstract method and must therefore be declared
abstract or implement the remaining methods (***\DebugBarInterface::sendDataInHeaders) -
even though DebugBar *does* implement that method.
2. Warning: Use of undefined constant FILE_DIR - assumed 'FILE_DIR' (this will throw
an Error in a future version of PHP) -
even though this constant *is* defined in a file included using require_once.
Again, these issues appeared without any deployment (i.e. changes to the code), but a common
denominiator could be that the system had hardly been used in the days preceding these issues.
Calling opcache_reset() did not fix these issues, but disabling OPcache and enabling it
again did.
PS: The system is actually a Hyper-V virtual machine, running on our own hardware. Not that this
should make any difference.
------------------------------------------------------------------------
[2020-07-29 08:32:15] cmb@php.net
> This needs to be documented, and preferably also improved.
This has been done with <https://github.com/php/php-src/pull/5875>.
> [â¦] and will report back in a couple of weeks (if the error does
> not occur again).
Please report back regardless of the outcome. For the time being,
I'm suspending this ticket.
------------------------------------------------------------------------
[2020-07-17 08:11:42] cmb@php.net
> Thanks, I have set opcache.optimization_level=0 now and will
> report back in a couple of weeks (if the error does not occur
> again).
Thanks. That might help to track to issue down.
Anyhow, my former comment regarding apache2handler startup
behavior[1] is wrong. Actually, when running at most a single
httpd instance, the message "Opcode handlers are unusable due to
ASLR." is not supposed to occur, ever. Thus, this issue may have
been reported by a PHP CLI process.
> This needs to be documented, and preferably also improved.
This holds, though.
[1] <https://bugs.php.net/bug.php?id=79729#1594126606>
------------------------------------------------------------------------
[2020-07-13 14:34:34] ca at lsp dot net
Thanks, I have set opcache.optimization_level=0 now and will report back in a couple of
weeks (if the error does not occur again).
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
https://bugs.php.net/bug.php?id=79729
--
Edit this bug report at https://bugs.php.net/bug.php?id=79729&edit=1