[Linux-HA] stonith apcmastersnmp relocation error

Horms horms at verge.net.au
Thu Jun 3 20:48:10 MDT 2004


On Thu, Jun 03, 2004 at 09:43:53AM -0400, Karl Meisterheim wrote:
> 
> > Hi,
> > 
> > Which version of heartbeat are you using?
> > There is a problem in the build system that keeps creeping in.
> > I believe it is present in all current releases. But is fixed in CVS.
> > 
> > http://cvs.linux-ha.org/viewcvs/viewcvs.cgi/linux-ha/configure.in#rev1.282
> > 
> > This is usually only a problem when you have ucdsnmp installed,
> > wheras most newer systems have netsnmp. It is also only a problem
> > if you use the apcmastersnmp.so module.
> > 
> > I believe that all the 1.2.2 binary packages on ultramonkey.org
> > either don't exhibit this problem, or are patched to fix it.
> > Reports to the contrary are welcome.
> > 
> > http://www.ultramonkey.org/download/heartbeat/1.2.2/
> 
> The system is running RHEL 3 es with all the latest errata.  I was
> running heartbeat 1.2.2 from the rpms on the linux-ha site.
> 
> In response to your email, I uninstalled all the rpms (heartbeat, pils,
> stonith, ldirector) and reinstalled the rpms and perl dependancies from
> ultramonkey.  I did md5sum the packages I was using and they are the
> same as what's on the site.
> 
> I still have the problem..
> #stonith -t apcmastersnmp node1
> stonith: relocation error:
> /usr/lib/stonith/plugins/stonith/apcmastersnmp.so: undefined symbol:
> init_snmp
> # rpm -qa | grep snmp
> net-snmp-utils-5.0.9-2.30E.3
> net-snmp-devel-5.0.9-2.30E.3
> net-snmp-5.0.9-2.30E.3

Thanks, I will look into this.
It sounds like I need to rebuild the packages.

[watch this space]

> #uname -a
> 2.4.21-15.ELsmp 
> 
> The frustrating thing is that I'm using apcmastersnmp instead of
> apcmaster because apcmaster didn't work and someone on this list once
> said to use the snmp version because it was better for some reason.

Let me try and explain the problem a little more. 
Perhaps this will ease your frustration.

When heartbeat builds apcmastersnmp.so it links it against
the various libraries that are required. In the case of the snmp
library, as there are fundamentally two versions, the build process
tries to guess which one to use. For various reasons, that I won't go
into, the build system had a bug that ment that sometimes it
did not link an snmp library at all.

In the case of building a programme, like say the heartbeat executable,
this error would have shown up during the build. But as apcmastersnmp.so
is a library of sorts, it is not detected by the build system.
It just shows up at run time. Which explains in a lot of ways
why the bug was in the build system, and how it keeps being
reintroduced in the course of trying to fix other problems.

The solution to this problem is quite simple.

Go into the directory in the build tree where apcmastersnmp.so is built.
Edit the Makefile.am to forcibly link the snmp library on your system.
Run make clean all

There are other more elegant solutions, but that should work.

> I'm not running any of the kernel packages from ultramonkey, just these
> rpms:
> heartbeat-1.2.2-1.rh.el.3.0.i386.rpm            
> perl-IO-Socket-SSL-0.92-1.rh.el.um.1.noarch.rpm
> heartbeat-ldirectord-1.2.2-1.rh.el.3.0.i386.rpm 
> perl-ldap-0.2701-1.rh.el.um.1.noarch.rpm
> heartbeat-pils-1.2.2-1.rh.el.3.0.i386.rpm       
> perl-Mail-IMAPClient-2.2.7-1.rh.el.um.1.noarch.rpm
> heartbeat-stonith-1.2.2-1.rh.el.3.0.i386.rpm    
> perl-Net-SSLeay-1.23-1.rh.el.um.1.i386.rpm
> ipvsadm-1.21-1.rh.el.1.i386.rpm                 
> perl-Parse-RecDescent-1.80-1.rh.el.um.1.noarch.rpm
> perl-Authen-SASL-2.03-1.rh.el.um.1.noarch.rpm   
> perl-XML-NamespaceSupport-1.08-1.rh.el.um.1.noarch.rpm
> perl-Convert-ASN1-0.16-2.rh.el.um.1.noarch.rpm  
> perl-XML-SAX-0.12-1.rh.el.um.1.noarch.rpm

That should be fine. The problem you are seeing is not related to the
kernel.

-- 
Horms



More information about the Linux-HA mailing list