View Issue Details

IDProjectCategoryView StatusLast Update
0001490XdebugUncategorizedpublic2017-11-13 11:37
Reportercurry684 Assigned Toderick  
PriorityhighSeveritycrashReproducibilityalways
Status resolvedResolutionduplicate 
Summary0001490: Segfault on PHP 7.2 + 2.6.0-dev in Travis CI
Description

Since today one of our CI builds on Travis started segfaulting consistently. Unfortunately I cannot reproduce it locally, but on Travis it is consistent. All other versions work so it seems to be Xdebug 2.6.0-dev with PHP 7.2RC6 related. Tests work with vanilla 7.2RC6.

Steps To Reproduce

See https://travis-ci.org/omines/datatables-bundle/jobs/300949483, all code and commands are there.

Following should work with 7.2RC6 + Xdebug.dev:

git clone git@github.com:omines/datatables-bundle.git
vendor/bin/phpunit

TagsNo tags attached.
Operating System
PHP Version7.2-dev

Relationships

duplicate of 0001486 closedderick Crash on ZEND_SWITCH_LONG / ZEND_SWITCH_STRING 

Activities

curry684

2017-11-12 21:37

reporter   ~0004457

Mantis is incorrectly joining a comma in the link, it is https://travis-ci.org/omines/datatables-bundle/jobs/300949483

Relevant output:

PHPUnit 6.4.4 by Sebastian Bergmann and contributors.
Runtime: PHP 7.2.0RC6 with Xdebug 2.6.0-dev
Configuration: /home/travis/build/omines/datatables-bundle/phpunit.xml.dist

/home/travis/.travis/job_stages: line 57: 2890 Segmentation fault (core dumped) ./vendor/bin/phpunit -v --coverage-text --coverage-clover=coverage.clover

derick

2017-11-13 10:15

administrator   ~0004458

I tried reproducing this with:

$ git clone git@github.com:omines/datatables-bundle.git
$ cd datatables-bundle/
$ php ~/composer.phar install
$ ./vendor/bin/phpunit

But I get an application error:

Fatal error: Uncaught Error: Class 'Tests\Fixtures\AppKernel' not found in /tmp/datatables-bundle/tests/phpunit-bootstrap.php on line 26

Error: Class 'Tests\Fixtures\AppKernel' not found in /tmp/datatables-bundle/tests/phpunit-bootstrap.php on line 26

Call Stack:
0.0074 431088 1. {main}() /tmp/datatables-bundle/vendor/phpunit/phpunit/phpunit:0
0.0501 520104 2. PHPUnit\TextUI\Command::main() /tmp/datatables-bundle/vendor/phpunit/phpunit/phpunit:53
0.0501 529064 3. PHPUnit\TextUI\Command->run() /tmp/datatables-bundle/vendor/phpunit/phpunit/src/TextUI/Command.php:148
0.0501 529064 4. PHPUnit\TextUI\Command->handleArguments() /tmp/datatables-bundle/vendor/phpunit/phpunit/src/TextUI/Command.php:159
0.0640 546640 5. PHPUnit\TextUI\Command->handleBootstrap() /tmp/datatables-bundle/vendor/phpunit/phpunit/src/TextUI/Command.php:788
0.0643 547088 6. PHPUnit\Util\Fileloader::checkAndLoad() /tmp/datatables-bundle/vendor/phpunit/phpunit/src/TextUI/Command.php:991
0.0644 547392 7. PHPUnit\Util\Fileloader::load() /tmp/datatables-bundle/vendor/phpunit/phpunit/src/Util/Fileloader.php:48
0.0646 548432 8. include_once('/tmp/datatables-bundle/tests/phpunit-bootstrap.php') /tmp/datatables-bundle/vendor/phpunit/phpunit/src/Util/Fileloader.php:64

sh: 0: getcwd() failed: No such file or directory
sh: 0: getcwd() failed: No such file or directory

Please provide steps so that I can at least run the tests.

derick

2017-11-13 10:17

administrator   ~0004459

Annoyingly, it seems that running the tests, also made it remove its own directory:

derick@singlemalt:/tmp/datatables-bundle $ ls
sh: 0: getcwd() failed: No such file or directory
sh: 0: getcwd() failed: No such file or directory
[GIT: (HEAD)][PHP: 7.2.0-dev ]
derick@singlemalt:/tmp/datatables-bundle $ cd ..
[PHP: 7.2.0-dev ]
derick@singlemalt:/tmp $ cd -
bash: cd: /tmp/datatables-bundle: No such file or directory

I will not be running these tests again, unless I have a small reproducible case and not something that downloads 4MB of code through composer.

curry684

2017-11-13 10:24

reporter   ~0004460

My apologies, you have run into the most obscure edge case - the tests use /tmp/datatables-bundle for stateful temporary storage, and clean them up during bootstrap. So that's just about the only folder the tests can't work from.

If you clone into a different folder it'll work fine.

curry684

2017-11-13 10:37

reporter   ~0004461

Fixed the dependency on global test folders: https://github.com/omines/datatables-bundle/commit/2b60b4149011a79739e9732908621682d0a4405a

Issue still reproduces: https://travis-ci.org/omines/datatables-bundle/jobs/301323324

derick

2017-11-13 10:59

administrator   ~0004462

I could indeed reproduce the segfault with an old Xdebug 2.6.0-dev, but not with the one from last night. I expect this to be a duplicate of 0001486, which I believe fixes this problem.

curry684

2017-11-13 11:37

reporter   ~0004463

Thank you, I will leave the tests at allow_fail and monitor whether they are automatically fixed the coming week.

Issue History

Date Modified Username Field Change
2017-11-12 21:34 curry684 New Issue
2017-11-12 21:37 curry684 Note Added: 0004457
2017-11-13 10:15 derick Note Added: 0004458
2017-11-13 10:15 derick Assigned To => derick
2017-11-13 10:15 derick Status new => feedback
2017-11-13 10:17 derick Note Added: 0004459
2017-11-13 10:24 curry684 Note Added: 0004460
2017-11-13 10:24 curry684 Status feedback => assigned
2017-11-13 10:37 curry684 Note Added: 0004461
2017-11-13 10:59 derick Note Added: 0004462
2017-11-13 10:59 derick Relationship added duplicate of 0001486
2017-11-13 10:59 derick Status assigned => resolved
2017-11-13 10:59 derick Resolution open => duplicate
2017-11-13 11:37 curry684 Note Added: 0004463
2020-03-12 16:35 derick Category Usage problems (Wrong Results) => Variable Display
2020-03-12 16:38 derick Category Variable Display => Uncategorized