AW: [Linux-ha-dev] Hb-2.09: cib crashes onstartupundersolaris10/i386
t.d.lee at durham.ac.uk
Wed Jun 6 08:37:36 MDT 2007
On Wed, 6 Jun 2007, Otte, Joerg wrote:
> Good news:
Joerg: Firstly, a huge "thank you" for all the hard work and "staying
with it" that you have done from your Solaris environment. As a fellow
Solaris-user, I appreciate it!
> I had to include the /etc/profile.local into heartbeat's startup script.
> The /etc/profile.local mainly defines LD_LIBRARY_PATH with some platform
> specific shared object libraries:
> --- ./heartbeat/init.d/heartbeat.in 2007-04-23 10:32:16.000000000 +0200
> +++ ./heartbeat/init.d/heartbeat.in.patched 2007-06-05 15:56:06.000177000 +0200
> @@ -43,6 +43,8 @@
> # Default-Stop: 0 6
> ### END INIT INFO
> +# define LD_LIBRARY_PATH
> +test -s /etc/profile.local && . /etc/profile.local
> HA_DIR=@sysconfdir@/ha.d; export HA_DIR
That feels very unusual. Never before have I seen a "/etc/profile.local"
convention. Although Google reveals several hits, there's nothing that
stands out as being a common convention around this. I've not seen it in
any Solaris or Linux (Redhat/Fedora) "/etc/init.d/*" files.
I've also done a "strings" of the various /bin/sh, /bin/bash that I have
on the various systems I have here (Solaris, Redhat/Fedora) and don't see
any "/etc/profile.local". (One of the Google hits suggested it might be
present on Suse bash.)
If your run-time environment needs this extra definitions (LD_LIBRARY_PATH
etc.) for heartbeat, then the chances are that it also needs it for other
products. But how many of the rest of us here (irrespective of our
operating systems) have tripped over this?
What I'm heading towards is this: That this seems to be something unique
about your environment, so let's be cautious about patching the heartbeat
distribution in such an unconventional way.
I would have hoped that "libtool" would have handled this. I suspect that
your build ("ConfigureMe") environment is different from your root
start-up environment. Perhaps your build environment has LD_LIBRARY_PATH
etc., and thus leads "libtool" to build under this assumption, which then
breaks at run-time.
Could I suggest that you strip down your build-time environment, for
instance removing LD_LIBRARY_PATH references. While this may initially
break the build, it would then give a basis for analysing, understanding
and resolving that breakage without using LD_LIBRARY_PATH, and thus giving
better chance of 'pure' run-time working.
(I'd be happy to see "configure" patched to do checks for such things.)
> The last reported crashes during last week are all gone now!
> Thank you very much for your help.
Could you confirm whether the patch I provided to use 'wordexp()' just
prior to an 'exec()' worked? I haven't yet put that patch into the
heartbeat source. Your confirmation that it improves things would be
: David Lee I.T. Service :
: Senior Systems Programmer Computer Centre :
: UNIX Team Leader Durham University :
: South Road :
: http://www.dur.ac.uk/t.d.lee/ Durham DH1 3LE :
: Phone: +44 191 334 2752 U.K. :
More information about the Linux-HA-Dev