php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #77174 SNMP poll stale when new snmp poll is initiated
Submitted: 2018-11-19 09:49 UTC Modified: -
From: ognyan dot dimitrov at deltatel dot ro Assigned:
Status: Open Package: SNMP related
PHP Version: 7.1.24 OS: Windows Version 10.0.17134 Build
Private report: No CVE-ID: None
View Add Comment Developer Edit
Welcome! If you don't have a Git account, you can't do anything here.
You can add a comment by following this link or if you reported this bug, you can edit this bug over here.
(description)
Block user comment
Status: Assign to:
Package:
Bug Type:
Summary:
From: ognyan dot dimitrov at deltatel dot ro
New email:
PHP Version: OS:

 

 [2018-11-19 09:49 UTC] ognyan dot dimitrov at deltatel dot ro
Description:
------------
PHP Version => 7.1.1

System => Windows NT DESKTOP-PJ7K6O7 10.0 build 17134 (Windows 10) i586
Build Date => Jan 18 2017 18:37:40
Compiler => MSVC14 (Visual C++ 2015)
Architecture => x86
Configure Command => cscript /nologo configure.js  "--enable-snapshot-build" "--enable-debug-pack" "--with-pdo-oci=c:\php-sdk\oracle\x86\instantclient_12_1\sdk,shared" "--with-oci8-12c=c:\php-sdk\oracle\x86\instantclient_12_1\sdk,shared" "--enable-object-out-dir=../obj/" "--enable-com-dotnet=shared" "--with-mcrypt=static" "--without-analyzer" "--with-pgo"
Server API => Command Line Interface
Virtual Directory Support => enabled
Configuration File (php.ini) Path => C:\WINDOWS
Loaded Configuration File => D:\xampp-web\php\php.ini
Scan this dir for additional .ini files => (none)
Additional .ini files parsed => (none)
PHP API => 20160303
PHP Extension => 20160303
Zend Extension => 320160303
Zend Extension Build => API320160303,TS,VC14
PHP Extension Build => API20160303,TS,VC14
Debug Build => no
Thread Safety => enabled
Zend Signal Handling => disabled
Zend Memory Manager => enabled
Zend Multibyte Support => provided by mbstring
IPv6 Support => enabled
DTrace Support => disabled


Core

PHP Version => 7.1.1


snmp                              
                                  
NET-SNMP Support => enabled       
NET-SNMP Version => 5.7.2         
PHP SNMP Version => 0.1           
                                  



D:\xampp-web\apache\bin
λ httpd.exe -v
Server version: Apache/2.4.25 (Win32)
Server built:   Dec 17 2016 10:42:52



Test script:
---------------
$this->snmpSession = new \SNMP(\SNMP::VERSION_2c, $this->ip, $this->community, 4000000, 5);
$rawPortCounters['ifInErrors'] = $this->snmpSession->walk("1.3.6.1.2.1.2.2.1.14", true);
...


Expected result:
----------------
When a web request is initiating php code for snmp pooling specific device it shall be possible another request from the same or other browser to trigger pooling of same or different node without interrupting the first one.

No timeout is helping. neither snmp_timeout in class instantiation, nor max_execution_time in php.ini, even TimeOut in apache server directive is not killing the request.

Actual result:
--------------
When a pooling to Device A in moment X is initiated via web request if a pooling to device B in X+1 is initiated the poll in moment X will stale, take memory which will in one moment crash php since staled requests will never be completed. Also redis session stale (used for snmp results pooling).

I've tried upgrading to 
PHP 7.2.11 (cli) (built: Oct 10 2018 02:39:52) ( ZTS MSVC15 (Visual C++ 2017) x86 )

but the behaviour is the same

Patches

Add a Patch

Pull Requests

Add a Pull Request

 
PHP Copyright © 2001-2018 The PHP Group
All rights reserved.
Last updated: Mon Dec 10 09:01:25 2018 UTC