openswoole / ext-openswoole

Programmatic server for PHP with async IO, coroutines and fibers

Home Page:https://openswoole.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Server::check_worker_exit_status(): worker(pid=207710, id=2) abnormal exit

baxsmaxbax opened this issue · comments

Message was found in OpenSwoole\HTTP\Server logs:

[2024-04-18 16:21:25 $207627.0]	WARNING	Server::check_worker_exit_status(): worker(pid=207710, id=2) abnormal exit, status=0, signal=11
A bug occurred in OpenSwoole-v22.1.2, please report it.
Please submit bug report at:
>> https://github.com/openswoole/swoole-src/issues 

OS: Linux 6.1.0-18-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.76-1 (2024-02-01) x86_64
GCC_VERSION: 12.2.0
OPENSSL_VERSION: OpenSSL 3.0.11 19 Sep 2023
PHP_VERSION : 8.3.3-1+0~20240216.17+debian12~1.gbp87e37b

we are facing many issues like this one in production servers, any updates?

`WARNING Server::check_worker_exit_status(): worker(pid=35964, id=0) abnormal exit, status=0, signal=11
A bug occurred in OpenSwoole-v22.1.2, please report it.
Please submit bug report at:

https://github.com/openswoole/swoole-src/issues

OS: Linux 6.8.0-31-generic #31-Ubuntu SMP PREEMPT_DYNAMIC Sat Apr 20 00:40:06 UTC 2024 x86_64
GCC_VERSION: 13.2.0
OPENSSL_VERSION: OpenSSL 3.0.13 30 Jan 2024
PHP_VERSION : 8.3.7`

can you post a program to reproduce this bug? Also, can you turn on core dumps and send the dump file?

Since 01.06.2024 we also encounter many of such issues with

[2024-06-10 08:37:42 $3441050.0]        WARNING Server::check_worker_exit_status(): worker(pid=3211089, id=113) abnormal exit, status=0, signal=11
A bug occurred in OpenSwoole-v22.0.0, please report it.
Please submit bug report at:
>> https://github.com/openswoole/swoole-src/issues 

OS: Linux 5.10.0-19-amd64 #1 SMP Debian 5.10.149-2 (2022-10-21) x86_64
GCC_VERSION: 10.2.1 20210110
OPENSSL_VERSION: OpenSSL 1.1.1n  15 Mar 2022
PHP_VERSION : 8.2.10

[2024-06-10 08:37:42 @3442662.0]        WARNING TableRow::lock(): lock process[3211089] not exists, force unlock

We did not change any code since 1. May 2024 and all of a sudden this error popped up. Any advice?

commented

@bitslip6 I think I've narrowed this down to the max_request_execution_time setting:

#!/usr/bin/env php
<?php

declare(strict_types=1);

use OpenSwoole\Http\Request;
use OpenSwoole\Http\Response;
use OpenSwoole\Http\Server;

$server = new Server("0.0.0.0", 8080, Server::POOL_MODE);
$server->set([
    'max_request_execution_time' => 1,
    'daemonize'                  => false,
]);

$server->on('Request', function (Request $request, Response $response) {
    $response->end('OK');
});

$server->start();

Running the server and making a request results in the worker segfaulting and the errors reported above. If you comment out max_request_execution_time you do not see them. HTH.

commented

@baxsmaxbax @nvtienlg @dompie ^^^

Can you confirm if removing max_request_execution_time stops the segfaults for you too?

@baxsmaxbax @nvtienlg @dompie ^^^

Can you confirm if removing max_request_execution_time stops the segfaults for you too?

I have no this setting

I do not have set the setting max_request_execution_time too. In my case I suppose it has something to do with a table that is not large enough, although it only utilizes all time only about 10% of capacity/size. I use only websocket server and return an empty page on http/s request.