Author Topic: PHP Fatal error in NZB.php and potential fix  (Read 4146 times)

Offline Komorebi

  • Newbie
  • *
  • Posts: 2
  • Helpful: +1/-0
PHP Fatal error in NZB.php and potential fix
« on: 2015-02-21, 04:47:26 AM »
Hi,

Firstly thanks for a great indexer with fantastic support and documentation; I'm moving from nn+ and wanted to make sure I could get nZEDb working first. Thanks go to all those involved for your hard work and time. At the bottom I will put what packages I have all are pre-built, no ppa.

Credit to Roelski http://forums.nzedb.com/index.php?topic=383.msg1931#msg1931 for raising this.

Credit to mikegabriel https://github.com/nZEDb/nZEDb/issues/1367 for PPA php5 suggested fix. IMHO I avoid PPAs for support purposes and I am not sure this fix is in the guide I followed.

Build is based on a pull on the 20/02/2015.

On the monitoring pane for release processing I was getting the following error:

"Process Releases -> Create the NZB, delete collections/binaries/parts
PHP Fatal error: Call to undefined function gzopen() in /var/www/nZEDb/nzedb/controllers/NBZ.php on line 164"

The fix is to change the call for gzopen() to gzopen64(). The proper fix is to recompile php :/

"This is a known bug in PHP 5.3+ when compiled against certain versions of Zlib."
Workaround from http://stackoverflow.com/questions/23417519/php-zlib-gzopen-not-exists

I hope this helps.

Code with the error on my system:

Code: [Select]
public function writeNZBforReleaseId($relID, $relGuid, $name, $cTitle)
        {
                $path = ($this->buildNZBPath($relGuid, $this->nzbSplitLevel, true) . $relGuid . '.nzb.gz');
                $fp = gzopen($path, 'wb7');

Code with minor change to fix:

Code: [Select]
public function writeNZBforReleaseId($relID, $relGuid, $name, $cTitle)
        {
                $path = ($this->buildNZBPath($relGuid, $this->nzbSplitLevel, true) . $relGuid . '.nzb.gz');
                $fp = gzopen64($path, 'wb7');

I followed the build instructions from here, which were accurate and detailed.
https://github.com/nZEDb/nZEDb_Misc/blob/master/Guides/Installation/Ubuntu/Guide.md

My test system details:

ODroid U3 running mdrjr's image of Ubuntu 14.04 LTS

Code: [Select]

$lsb_release -a
Distributor ID: Ubuntu
Description:    Ubuntu 14.04 LTS
Release:        14.04
Codename:       trusty

$ dpkg -l | grep php
ii  libapache2-mod-php5              5.5.9+dfsg-1ubuntu4                  armhf        server-side, HTML-embedded scripting language (Apache 2 module)
ii  php-pear                         5.5.9+dfsg-1ubuntu4                  all          PEAR - PHP Extension and Application Repository
ii  php5                             5.5.9+dfsg-1ubuntu4                  all          server-side, HTML-embedded scripting language (metapackage)
ii  php5-cli                         5.5.9+dfsg-1ubuntu4                  armhf        command-line interpreter for the php5 scripting language
ii  php5-common                      5.5.9+dfsg-1ubuntu4                  armhf        Common files for packages built from the php5 source
ii  php5-curl                        5.5.9+dfsg-1ubuntu4                  armhf        CURL module for php5
ii  php5-dev                         5.5.9+dfsg-1ubuntu4                  armhf        Files for PHP5 module development
rc  php5-fpm                         5.5.9+dfsg-1ubuntu4                  armhf        server-side, HTML-embedded scripting language (FPM-CGI binary)
ii  php5-gd                          5.5.9+dfsg-1ubuntu4                  armhf        GD module for php5
ii  php5-json                        1.3.2-2build1                        armhf        JSON module for php5
ii  php5-memcached                   2.1.0-6build1                        armhf        memcached extension module for PHP5, uses libmemcached
ii  php5-mysqlnd                     5.5.9+dfsg-1ubuntu4                  armhf        MySQL module for php5 (Native Driver)
ii  php5-readline                    5.5.9+dfsg-1ubuntu4                  armhf        Readline module for php5
ii  pkg-php-tools                    1.11                                 all          various packaging tools and scripts for PHP packages

$dpkg -l | grep zlib
ii  zlib1g:armhf                     1:1.2.8.dfsg-1ubuntu1                armhf        compression library - runtime
ii  zlib1g-dev:armhf                 1:1.2.8.dfsg-1ubuntu1                armhf        compression library - development

cat /proc/cpuinfo
processor       : 0
model name      : ARMv7 Processor rev 0 (v7l)
...
Hardware        : ODROID-U2/U3
« Last Edit: 2015-02-21, 05:44:09 AM by Komorebi »