HHVM RepoMode Segmentation Fault
Asked Answered
C

1

7

Specs: Ubunutu 16.04.1 Server nginx 1.10 HHVM 3.17.0

I am attempting to gather a list of files, and run them through the hhvm compiler to utilize repo mode, with the following code:

#!/bin/bash

if [ "$(whoami)" != "root" ]; then
    echo "Only root can do this.";
    exit 1;
else

    if [ $# -eq 0 ]; then
        echo "Please pass the account name to enable this for"
        exit 1;
    else

        #Get a list of files
        FLIST=$(find /home/$1/www/ -type f -name '*.php');
        for F in $FLIST
        do
            if [ -f $F ]; then
                echo "Adding; $F";
                echo $F >> $1-list.txt;
            fi;
        done;
        hhvm --hphp -t hhbc -v AllVolatile=false -v WholeProgram=false --input-list $1-list.txt;
        sleep 1;
        rm -f $1-list.txt;
    fi;

fi;

Upon running it on my server, I am presented with:

running hphp...
creating temporary directory /tmp/hphp_cFPMUQ ...
parsing inputs...
Unable to stat file /home/kpirnie/www/wp-content/PHPMailer/vendor/autoload.php
Unable to stat file /home/kpirnie/www/wp-content/PHPMailer/test/vendor/autoload.php
Unable to stat file /home/kpirnie/www/wp-content/PHPMailer/test/testbootstrap.php
Unable to stat file /home/kpirnie/www/wp-content/plugins/cloudflare/vendor/cloudflare/cf-ip-rewrite/vendor/autoload.php
Unable to stat file /home/kpirnie/www/wp-content/plugins/cloudflare/vendor/guzzle/guzzle/phing/tasks/phing/Task.php
Unable to stat file /home/kpirnie/www/wp-content/plugins/cloudflare/vendor/guzzle/guzzle/phar:/guzzle.phar/vendor/symfony/class-loader/Symfony/Component/ClassLoader/UniversalClassLoader.php
Unable to stat file /home/kpirnie/www/wp-content/plugins/cloudflare/vendor/guzzle/guzzle/phing/tasks/PEAR/PackageFileManager2.php
Unable to stat file /home/kpirnie/www/wp-content/plugins/cloudflare/vendor/guzzle/guzzle/phing/tasks/PEAR/PackageFileManager/File.php
Unable to stat file /home/kpirnie/www/wp-content/plugins/cloudflare/vendor/guzzle/guzzle/phing/tasks/PEAR/Packager.php
Unable to stat file /home/kpirnie/www/wp-content/plugins/cloudflare/vendor/guzzle/guzzle/phing/tasks/phing/tasks/ext/git/GitBaseTask.php
Unable to stat file /home/kpirnie/www/wp-content/plugins/cloudflare/vendor/sebastian/comparator/vendor/autoload.php
Unable to stat file /home/kpirnie/www/wp-content/plugins/wordpress-seo/vendor/composer/autoload_static.php
parsing inputs took 0'01" (1425127 us) wall time
pre-optimizing...
Core dumped: Segmentation fault
Stack trace in /tmp/stacktrace.31028.log
hphp failed
running hphp took 0'02" (2216979 us) wall time

And I can verify that the files that are Unable to stat indeed do not exist.

Stacktrace shows what looks like a memory dump (I assume) due to the segmentation fault.

How can I accomplish true Repo Mode? skip the missing files? but how?

Compliance answered 3/1, 2017 at 18:11 Comment(2)
Should this question be somewhere else?Compliance
Can't quite see why this question has an Nginx tagMcguire
N
1

If nothing in your source is referencing those files as you say, then try placing empty files in those places.

However, it is likely that you are referencing these files somewhere by means of a path that has included them. I suspect this is an HHVM issue and you should file your failing test-case here.

Netsuke answered 18/1, 2017 at 20:6 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.