[rrd-developers] MRTG , Segmentation Fault , After re-installing perl .

Mr. James W. Laferriere babydr at baby-dragons.com
Wed Feb 18 20:16:58 CET 2009


 	Hello Kevin ,

On Thu, 12 Feb 2009, kevin brintnall wrote:
> On Thu, Feb 12, 2009 at 07:09:08PM -0900, Mr. James W. Laferriere wrote:
>>  	Hello All ,  Following is a transcript that I posted to Steve Shipway's
>> blog on routers2.cgi .  What follows should( hopefully) be enough help someone
>> to give me some pointers of where I am going wrong .
>
> Jim,
 	Thank you .

> A back-trace would be very helpful.  Is the crashing program generating a
> core file?

 	No core file found on file system .  system may be configured not to 
allow creation of one ,  Not sure ,  checking ,  the system IS configure to NOT 
allow a core file to be produced ,  I'll try seeing if this will create one , 
Fyi ,  It does not produce a core file .

 	Can you help with getting 'gdb' to allow ...

# gdb /usr/local/bin/perl /usr/local/mrtg-2/bin/mrtg-ORIG /var/www/htdocs/router2cgi/cfg/to-rtr01.cfg
Excess command line arguments ignored. 
(/var/www/htdocs/router2cgi/cfg/to-rtr01.cfg)
GNU gdb 6.6
...snip...


> I presume your RRDTool was linked against the new libperl.

 	I hope so as I (re-)compiled after installing the perl ,
 	'rrdtool -V' Below as well .

> Please send `perl -V`.
 	See below ...


> fcntl64() should not be causing the seg fault; it's likely happening
> shortly after.

 	I'd agree ,  But all I can find is the RRDs::update & RRDs::updatev .
 	I am very sure it is the RRDs::updatev call in mrtg causing the 
'SegFault' because in order to work arround the issue I have edited mrtg to 
something like below & it updates just fine .  I am running "RRDtool 1.3.6" as 
you'll see further below .  Also 'mrtg 2.16.2' .

<my edit to mrtg>
#
# if ( $RRDs::VERSION >= 1.2 ){
# $rrddata=RRDs::updatev($dotrrd, "$time:$inlast:$outlast");
# } else {
#
RRDs::update($dotrrd, "$time:$inlast:$outlast");
#}
#
</my edit to mrtg>


# perl -V
Summary of my perl5 (revision 5 version 10 subversion 0) configuration:
   Platform:
     osname=linux, osvers=2.6.23.12, archname=i686-linux
     uname='linux dsb-mntr01 2.6.23.12 #1 smp fri dec 28 16:18:35 akst 2007 i686 intel(r) pentium(r) 4 cpu 1.70ghz genuineintel gnulinux '
     config_args=''
     hint=recommended, useposix=true, d_sigaction=define
     useithreads=undef, usemultiplicity=undef
     useperlio=define, d_sfio=undef, uselargefiles=define, usesocks=undef
     use64bitint=undef, use64bitall=undef, uselongdouble=undef
     usemymalloc=n, bincompat5005=undef
   Compiler:
     cc='cc', ccflags ='-fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
     optimize='-O2',
     cppflags='-fno-strict-aliasing -pipe -I/usr/local/include'
     ccversion='', gccversion='4.1.2', gccosandvers=''
     intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
     d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
     ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8
     alignbytes=4, prototype=define
   Linker and Libraries:
     ld='cc', ldflags =' -L/usr/local/lib'
     libpth=/usr/local/lib /lib /usr/lib
     libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc
     perllibs=-lnsl -ldl -lm -lcrypt -lutil -lc
     libc=/lib/libc-2.5.so, so=so, useshrplib=false, libperl=libperl.a
     gnulibc_version='2.5'
   Dynamic Linking:
     dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E'
     cccdlflags='-fPIC', lddlflags='-shared -O2 -L/usr/local/lib'


Characteristics of this binary (from libperl):
   Compile-time options: PERL_DONT_CREATE_GVSV PERL_MALLOC_WRAP
                         USE_LARGE_FILES USE_PERLIO
   Built under linux
   Compiled at Feb  5 2009 17:17:36
   @INC:
     /usr/local/lib/perl5/5.10.0/i686-linux
     /usr/local/lib/perl5/5.10.0
     /usr/local/lib/perl5/site_perl/5.10.0/i686-linux
     /usr/local/lib/perl5/site_perl/5.10.0
     /usr/local/lib/perl5/site_perl/5.8.9
     /usr/local/lib/perl5/site_perl
     .


# rrdtool -V
RRDtool 1.3.6  Copyright 1997-2008 by Tobias Oetiker <tobi at oetiker.ch>
                Compiled Feb  6 2009 09:28:18

Usage: rrdtool [options] command command_options

Valid commands: create, update, updatev, graph, graphv,  dump, restore,
                 last, lastupdate, first, info, fetch, tune,
                 resize, xport

RRDtool is distributed under the Terms of the GNU General
Public License Version 2. (www.gnu.org/copyleft/gpl.html)

For more information read the RRD manpages


-- 
+------------------------------------------------------------------+
| James   W.   Laferriere | System    Techniques | Give me VMS     |
| Network&System Engineer | 2133    McCullam Ave |  Give me Linux  |
| babydr at baby-dragons.com | Fairbanks, AK. 99701 |   only  on  AXP |
+------------------------------------------------------------------+



More information about the rrd-developers mailing list