Bug #80726 [Fbk->Asn]: With any PHP 8 version I get crash running more than one CLI

From: Date: Wed, 10 Feb 2021 10:26:20 +0000
Subject: Bug #80726 [Fbk->Asn]: With any PHP 8 version I get crash running more than one CLI
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-232034@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=80726&edit=1

 ID:                 80726
 User updated by:    rfcastro at porto dot ucp dot pt
 Reported by:        rfcastro at porto dot ucp dot pt
 Summary:            With any PHP 8 version I get crash running more than
                     one CLI
-Status:             Feedback
+Status:             Assigned
 Type:               Bug
 Package:            JIT
 Operating System:   Windows Server 2012 R2
 PHP Version:        8.0.2
 Assigned To:        cmb
 Block user comment: N
 Private report:     N

 New Comment:

Yes, using the two different caches works.

But is this possible automatically?


Previous Comments:
------------------------------------------------------------------------
[2021-02-09 20:25:32] cmb@php.net

Would it work if you used two different opcache.cache_id, e.g.

    php -dopcache.cache_id=1 file1.php
    php -dopcache.cache_id=2 file2.php

------------------------------------------------------------------------
[2021-02-09 17:14:21] rfcastro at porto dot ucp dot pt

Description:
------------
The error has occurred on these versions: 8.00, 8.01 and 8.02

I open two command line prompts (two windows) in both I run two php codes and I get a
php_opcache.dll error in the Event log. Sometimes an unknown and sometimes PHP8.dll but most of the
time it's php_opcache.dll

One php file only has a Hello World cicle, and the other php file opens has soap connection with a
foreach. When I remove the foreach (foreach ($ise_sapiOutput->resultado as $aluno)), it works, if
I put it in again PHP crashes.

If I run without JIT, it works. If I run two simple hello word files, also works.

My PHP.INI:
[opcache]
opcache.enable=1
opcache.enable_cli=1
opcache.jit_buffer_size=100M
opcache.jit=1255
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=10000
opcache.max_wasted_percentage=5

Test script:
---------------
File1:
do {
 echo 'Hello World';
 sleep (5);
} while (1);

File 2, soap connection:
$ise_aParameters = array(
'Funcao'		=> 'GetAlunos',
'NivelComp'		=> 5,
'Certificado'	=> 1,
'FormatoOutput'	=> 2,
'PEntrada'		=> 'TpUtil=0; CdUtil=1; PwdUtil=sistema;
AnoLectivo='.$isa_iAnoLectivo.$ida_sSAPICdAluno2,
'PSaida'		=> 'Estado
DESC;NAluno;NomeCompleto;Email;CdCurso;DgCurso;CdFaculd;EmailInstitucional'
);

$ise_xmlString 	= false;
$ise_xmlString 	= $isc_sSoapClient->__soapCall('Execute', array($ise_aParameters),
array('soapaction' => 'http://tempuri.org/WebServiceSAPI/Service1/Execute','uri'
=> 'http://tempuri.org/WebServiceSAPI/Service1'));
$ise_xmlString	= $ise_xmlString->ExecuteResult;
$ise_sapiOutput = new SimpleXMLElement($ise_xmlString);

if ($ise_sapiOutput->resultado->EstRes=='0') {
 foreach ($ise_sapiOutput->resultado as $aluno) {
  //the error ocorres here with the foreach cicle, if I remove it, no error		
 }
}

Expected result:
----------------
A PHP crash, usually php_opcache.dll

Actual result:
--------------
both scrips should run without errors. If I turn off JIT, it works.


------------------------------------------------------------------------



--
Edit this bug report at https://bugs.php.net/bug.php?id=80726&edit=1


Thread (12 messages)

« previous php.bugs (#232034) next »