Announcement

Collapse
No announcement yet.

Can't Install Test: PHP Fatal error

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Can't Install Test: PHP Fatal error

    Phoronix Test Suite v10.8.1
    CentOS Linux 7 (Kernel: 3.10.0-1160.53.1.el7.x86_64 (x86_64)

    Hi,

    I can't seem to be able to install any test as I keep getting the same PHP fatal error:
    Code:
    # phoronix-test-suite install iozone
    PHP Fatal error: Can't use method return value in write context in /usr/share/phoronix-test-suite/pts-core/objects/client/pts_installed_test.php on line 105
    I tried install other tests but they all fail with the same above error about pts_installed_test.php on line 105.

    Any recommendations on what to check to resolve the above error?


    I checked to confirm I have all required php dependencies but not sure if I also need the "optional" php libraries as well:
    Code:
    # phoronix-test-suite php-conf
    
    PHP: 5.4.16
    PHP VERSION ID: 50416
    PHP BINARY: php
    
    MAIN CAPABILITY CHECK:
    PRESENT - DOM The Document Object Model is required for XML operations.
    PRESENT - ZIP ZIP support is required for file compression.
    PRESENT - JSON JSON support is required for OpenBenchmarking.org.
    PRESENT - SimpleXML SimpleXML is required for XML operations.
    PRESENT - OpenSSL OpenSSL support is recommended to support HTTPS traffic.
    PRESENT - GD The GD library is recommended for improved graph rendering.
    PRESENT - Zlib The Zlib extension can be used for greater file compression.
    PRESENT - Bzip2 The bzcompress/bzip2 support can be used for greater file compression.
    MISSING - SQLite3 SQLite3 is required when running a Phoromatic server.
    PRESENT - PCNTL PCNTL is highly recommended as it is required by some tests.
    MISSING - POSIX POSIX support is highly recommended.
    PRESENT - CURL CURL is recommended for an enhanced download experience.
    PRESENT - Sockets Sockets is needed when running the Phoromatic Server.
    PRESENT - Readline Readline support is useful for tab-based auto-completion support.
    
    OPTIONAL FUNCTION CHECKS:
    cli_set_process_title MISSING
    ctype_alnum PRESENT
    ctype_digit PRESENT
    ctype_print PRESENT
    curl_init PRESENT
    filter_var PRESENT
    finfo_file PRESENT
    finfo_open PRESENT
    gzcompress PRESENT
    gzdeflate PRESENT
    gzinflate PRESENT
    hash_file PRESENT
    imageantialias PRESENT
    imagecreatefromgif PRESENT
    imagecreatefrompng PRESENT
    imagecreatefromstring PRESENT
    imagepng PRESENT
    imagettftext PRESENT
    json_decode PRESENT
    mime_content_type PRESENT
    pcntl_fork PRESENT
    pcntl_signal PRESENT
    posix_getpid MISSING
    posix_getpwuid MISSING
    posix_getuid MISSING
    posix_isatty MISSING
    posix_kill MISSING
    posix_setsid MISSING
    preg_replace PRESENT
    simplexml_load_string PRESENT
    socket_create_listen PRESENT
    sqlite_escape_string MISSING
    ssh2_connect MISSING
    stream_context_set_params PRESENT
    timezone_name_from_abbr PRESENT
    zip_open PRESENT

    Diagnostics Results:

    Code:
    # phoronix-test-suite diagnostics
    PTS_VERSION = 10.8.1
    PTS_CORE_VERSION = 10810
    PTS_RELEASE_DATE = 20220123
    PTS_CODENAME = Nesseby
    PTS_IS_CLIENT = 1
    PTS_IS_WEB_CLIENT =
    PTS_IS_DEV_BUILD =
    PTS_PHP_VERSION = 5.4.16
    QUICK_START =
    PTS_CORE_PATH = /usr/share/phoronix-test-suite/pts-core/
    PTS_INTERNAL_OB_CACHE = /usr/share/phoronix-test-suite/ob-cache/
    PTS_IS_DAEMONIZED_SERVER_PROCESS = 1
    PTS_USER_PATH = /var/lib/phoronix-test-suite/
    PTS_CORE_STORAGE = /var/lib/phoronix-test-suite/core.pt2so
    PTS_DOWNLOAD_CACHE_PATH = /var/cache/phoronix-test-suite/download-cache/
    PTS_OPENBENCHMARKING_SCRATCH_PATH = /var/cache/phoronix-test-suite/openbenchmarking.org/
    PTS_TEST_PROFILE_PATH = /var/lib/phoronix-test-suite/test-profiles/
    PTS_TEST_SUITE_PATH = /var/lib/phoronix-test-suite/test-suites/
    PTS_CORE_STATIC_PATH = /usr/share/phoronix-test-suite/pts-core/static/
    PTS_SHARE_PATH = /usr/share/phoronix-test-suite/
    PTS_INIT_TIME = 1643561795
    PTS_COMMAND_PATH = /usr/share/phoronix-test-suite/pts-core/commands/
    PHP_BIN = php
    FIRST_RUN_ON_PTS_UPGRADE =
    TIME_PTS_LAUNCHED = 1643561795
    IS_FIRST_RUN_TODAY =
    TIME_SINCE_LAST_RUN = 1
    PTS_TEST_INSTALL_DEFAULT_PATH = /var/lib/phoronix-test-suite/installed-tests/
    PTS_SAVE_RESULTS_PATH = /var/lib/phoronix-test-suite/test-results/
    PTS_USER_LOCK = /var/lib/phoronix-test-suite/run-lock-84bnYw
    PTS_STARTUP_TASK_PERFORMED = 1
    HAS_REFRESHED_OBO_LIST = 1
    
    Variables That Can Be Used As Result Identifiers / File Names:
    VIDEO_RESOLUTION = 1024x768
    VIDEO_CARD = bochsdrmfb
    VIDEO_DRIVER =
    OPENGL_DRIVER =
    OPERATING_SYSTEM = CentOS Linux 7
    PROCESSOR = 4 x Intel Xeon Gold 6132 (7 Cores)
    MOTHERBOARD = Xen HVM domU v4.13
    CHIPSET = Intel 440FX 82441FX PMC
    KERNEL_VERSION = 3.10.0-1160.53.1.el7.x86_64
    COMPILER =
    HOSTNAME = centos7-test
    
    Environment Variables (accessible via test scripts):
    PTS_VERSION = 10.8.1
    PTS_DIR = /usr/share/phoronix-test-suite/
    PTS_LAUNCHER = /usr/bin/phoronix-test-suite
    PHP_BIN = php
    NUM_CPU_CORES = 4
    OMP_NUM_THREADS = 4
    NUM_CPU_PHYSICAL_CORES = 7
    NUM_CPU_PHYSICAL_CORES_CUBE = 1
    CPU_THREADS_PER_CORE = 1
    NUM_CPU_NODES = 1
    NUM_CPU_JOBS = 8
    SYS_MEMORY = 4096
    VIDEO_MEMORY = 64
    VIDEO_WIDTH = 1024
    VIDEO_HEIGHT = 768
    VIDEO_MONITOR_COUNT = 1
    VIDEO_MONITOR_LAYOUT = CENTER
    VIDEO_MONITOR_SIZES = 1024x768
    OPERATING_SYSTEM = centos
    OS_VERSION = 7
    OS_ARCH = x86_64
    OS_TYPE = Linux
    CPU_FAMILY = cascadelake
    THIS_RUN_TIME = 1643561795
    DEBUG_REAL_HOME = /root/
    DEBUG_PATH = /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
    SYSTEM_TYPE_ID = V
    SYSTEM_TYPE = Virtual
    TERMINAL_WIDTH = 100
    C_CXX_FLAGS_DEFAULT = -O3 -march=native
    GPU_DEVICE_ID = 1111
    
    
    
    CPU Usage (Summary): 0.00 % Memory Usage: 188 MB System Uptime 796 M

  • #2
    stevewest15 does it work if you try PTS Git? Or otherwise this patch - https://github.com/phoronix-test-sui...dfda8f08d0922a

    The error is due to the very old version of PHP used by CentOS 7 that it causes problems there but works fine in newer versions of PHP.
    Michael Larabel
    https://www.michaellarabel.com/

    Comment


    • #3
      Originally posted by Michael View Post
      stevewest15 does it work if you try PTS Git? Or otherwise this patch - https://github.com/phoronix-test-sui...dfda8f08d0922a

      The error is due to the very old version of PHP used by CentOS 7 that it causes problems there but works fine in newer versions of PHP.
      Thank you for your help! I tried installing from PTS Git which allowed me to get past the installing of tests. But when I tried to run a benchmark, I got a new error:
      Code:
      # phoronix-test-suite benchmark iozone
      Evaluating External Test Dependencies .................................................. .....................
      Installed: pts/iozone-1.9.6
      PHP Fatal error: Can't use method return value in write context in /usr/share/phoronix-test-suite/pts-core/objects/pts_result_file.php on line 184
      What version of PHP should I try which might work better?

      Comment


      • #4
        Originally posted by stevewest15 View Post

        Thank you for your help! I tried installing from PTS Git which allowed me to get past the installing of tests. But when I tried to run a benchmark, I got a new error:
        Code:
        # phoronix-test-suite benchmark iozone
        Evaluating External Test Dependencies .................................................. .....................
        Installed: pts/iozone-1.9.6
        PHP Fatal error: Can't use method return value in write context in /usr/share/phoronix-test-suite/pts-core/objects/pts_result_file.php on line 184
        What version of PHP should I try which might work better?
        Should be fixed in latest Git, thanks... Hopefully now is all good, otherwise cannot imagine many other places where that particular error would slip into the codebase with 10.8....

        Generally PHP 7.0+ is in much better shape but do try to support PHP 5.4 as found in CentOS/RHEL 7.... But EL7 usage these days is become rarer and I haven't done much testing there myself lately, hence these few regressions.

        Michael Larabel
        https://www.michaellarabel.com/

        Comment


        • #5
          Thanks Michael! Greatly appreciate your help on this! I've installed PHP 7.4 and I'm happy to report I'm able to run the iozone test. :-) Now I just need to figure out how to push the tests to openbenchmarking.org so I can easily compare the iozone tests against multiple NAS systems.

          Thank you again!

          SW

          Comment

          Working...
          X