Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Segmentation fault on FrankenPHP reload after installing timezonedb with PIE ZTS

Abierto
#2,667 1 comentario 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
35/100
Tipo de issue
Error
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
docker, go, php
Área
backend, devops

Línea de trabajo

The crash occurs during a graceful reload after installing the timezonedb extension via pie-zts. Start by examining the extension lifecycle code in the FrankenPHP worker mode, particularly around signal handling and reload procedures. Look at the PIE (PHP Interactive Extensions) integration and how ZTS extensions are managed during reloads. The goal is to reproduce the segfault in a debug build to get a better backtrace and understand why restart works but reload fails.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

bug
What happened?
Description

FrankenPHP crashes with a segmentation fault when performing a reload after installing the pecl/timezonedb extension using pie-zts.

A normal restart works correctly. The issue only occurs when reloading FrankenPHP.

timezonedb was installed with:

pie-zts install pecl/timezonedb
Error

When reloading the service:

sudo systemctl reload frankenphp

systemd reports:

frankenphp.service: Main process exited, code=dumped, status=11/SEGV
frankenphp.service: Control process exited, code=exited, status=1/FAILURE
frankenphp.service: Reload operation timed out. Killing reload process.
frankenphp.service: Failed with result 'core-dump'.

However, restarting FrankenPHP works normally:

sudo systemctl restart frankenphp
GDB backtrace

I inspected the generated core dump with GDB:

(gdb) bt
#0  0x0000aaaad7986eb8 in ?? ()
#1  0x0000aaaad795b2c8 in ?? ()
Backtrace stopped: previous frame inner to this frame (corrupt stack?)

Unfortunately, the backtrace does not contain symbols that identify where the crash occurs.

Steps to reproduce
  1. Install FrankenPHP.
  2. Install timezonedb using the ZTS version of PIE:
pie-zts install pecl/timezonedb
  1. Restart FrankenPHP:
sudo systemctl restart frankenphp

FrankenPHP starts and works normally.

  1. Reload FrankenPHP:
sudo systemctl reload frankenphp
  1. FrankenPHP crashes with SIGSEGV.
Expected behavior

Reloading FrankenPHP should complete successfully without terminating the main process.

Actual behavior

The reload causes the FrankenPHP main process to crash with:

status=11/SEGV

and systemd reports a core dump.

Additional information

The issue appeared after installing/enabling pecl/timezonedb with pie-zts.

Since restart works but reload crashes, this may be related to extension lifecycle handling during a graceful reload rather than startup itself.

FrankenPHP v1.12.7 PHP 8.4 Caddy v2.11.4 h1:XKxkMTgNSizEvKG6QHue6cAsFOteU2qA61w2tKkCWi0=
Loaded PIE extensions:
  timezonedb:2026.4 (from 🥧 pecl/timezonedb:2026.4 ✅)
Build Type

Docker (Debian Bookworm)

Worker Mode

Yes

Operating System

GNU/Linux

CPU Architecture

x86_64

PHP configuration
phpinfo() output
.
Relevant log output
Relevant log output

Lenguaje dominante
Go
Estrellas
11.3k
Forks
488
Merge medio
1 d 9 h
PR fusionados (30 d)
10

Guía de contribución

Abrir la guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de php/frankenphp

Todos los issues de php/frankenphp

Issues similares

Más issues de Go

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.