Ad blocker detected: Our website is made possible by displaying online advertisements to our visitors. Please consider supporting us by disabling your ad blocker on our website.
i've recently upgrade my cacti version from 0.8.6j to 0.8.7e on windows 2003 server. I've passed the poller from cmd.php to spine and it's OK. When a host is detected as DOWN the poller return me a POPEN timeout (it's normal, i know) but on the server the poller windows where the timeout occure stay open. Even more the system stats time (duration) increase about 40 seconds when a host is detected as down. So imagine when more than two host go down, the poller became out of sync because the poller pass more than 300 seconds to finish.
Any ideas ?
Thanks for your support
Cacti Version - 0.8.7e Plugin Architecture - 2.4 Poller Type - Cactid v Server Info - Windows NT 5.2 Web Server - Apache/2.2.11 (Win32) PHP/5.2.9 PHP - 5.2.9 PHP Extensions - bcmath, calendar, com_dotnet, ctype, session, filter, ftp, hash, iconv, json, odbc, pcre, Reflection, date, libxml, standard, tokenizer, zlib, SimpleXML, dom, SPL, wddx, xml, xmlreader, xmlwriter, apache2handler, ldap, mysql, snmp, sockets MySQL - 5.0.83-community-nt RRDTool - 1.2.30 SNMP - snmpwalk [OPTIONS] AGENT [OID] Plugins
Hi, i still don't understand the POPEN timeout message error. The status (UP or DOWN) of the device is not a consequence of this error message so i wonder why it happens.
Thanks for your support
it's very difficult to debug this problème because is it not permanent. I've install cacti on a windows 2003 server R2 with the last package cacti-0.8.7e-1.931x86.exe
I' don't have apply any patch so is there some to install (pre-patched files)
Also, i'm running cacti 0.8.7e with PIA 2.4 and i wonder if it is possible to downgrade Spine from 0.8.7e to 0.8.7c.
Popen is more of a linux thing that works on windows... "The popen() function executes the command specified by the string command. It creates a pipe between the calling program and the executed command, and returns a pointer to a stream that can be used to either read from or write to the pipe. "
Yes, you could downgrade spine versions if you wanted.
I have tried to downgrade spine to 0.8.7d and c, this don't solve the POPEN problem. This action have increase a lot of different new problems like perl script Empty result with spine poller. At 11:20 i've tried to passe the poller on cmd.php and the poller seems to not finish well. After all I finally change the poller to spine with 0.8.7e binaries.
I've seen a new patch name "Cross-Site Scripting Fixes" publish at 2009/11/21. What does it solve ? Did I have to apply this and where can i fin the pre-patched file associated ?
guitou wrote:I've seen a new patch name "Cross-Site Scripting Fixes" publish at 2009/11/21. What does it solve ? Did I have to apply this and where can i fin the pre-patched file associated ?
Details are possibly in the bug tracker and/or can be extrapolated from the lines of code it patches.
Also, I post you the windows error when Spine crash ERROR: Spine Timed Out While Processing Hosts Internal or ERROR: The POPEN timed out
Did the Spine Dev have return to you something ...?
Finally, the cacti server i an VMware virtual serveur with quad core and 2GB memory, is there known bug on VM plateform ..?
Attachments
Spine error windows debug.jpg (36.65 KiB) Viewed 7764 times
Naw, doubt its a vmware issue since cacti/spine aren't aware of it. I do see the crash was likely caused by the cygwin dll. Search your system for cygwin1.dll. Make sure you only have ONE COPY and that it resides in your spine folder. If you have other applications which depend on cygwin functionality, then install it, put it in the system path and then remove all cygwin dlls from the spine folder.
TheWitness is the spine author who can better troubleshoot how/why its broken.
after several tuning test of poller option, I've finally discover that my problem is link with the number of threads value I put in poller option, strange... When i passe this value from 1 to 2, 4, 8 or more, POPEN timeout occurs more often.
Also i have search for duplicate cygwin1.dll file. I just find one in the spine folder.
Finally, i have reinstall my cacti server with the latest installer 1.94 on a new stand alone plateform and the problem still exist
I'm looking for answer on my POPEN timout problem. When i put value 1 in maximum threads per process field this error disappear and sometime i've got this message"SPINE: Poller[0] ERROR: Spine Timed Out While Processing Hosts Internal". If I increase the maximum thread to 2, 4 or more in the poller option the POPEN timout message reappear more often.
This is why I dislike Windows, for spine and forking anyway. I never know if it's a Cygwin issue or a spine issue.
Windows has issues (at the API level) when using native ANSI C applications combined with forking. This is most evident when killing child processes that timeout.
The Nifty Popen is designed to kill the child if it times out. That's why its the default. The native Popen provides no mechanism to trap a timeout without an alarm. I guess that's what I have to implement. Not today I suspect though.
TheWitness
True understanding begins only when we realize how little we truly understand...