Bacula-users

Re: [Bacula-users] Bacula 5.2.5 - Postgresql 9.1 - libpq.a - dir inserting attributes ??

2012-11-29 09:41:21
Subject: Re: [Bacula-users] Bacula 5.2.5 - Postgresql 9.1 - libpq.a - dir inserting attributes ??
From: Martin Simmons <martin AT lispworks DOT com>
To: Dan Langille <dan AT langille DOT org>
Date: Thu, 29 Nov 2012 14:34:34 GMT
>>>>> On Thu, 29 Nov 2012 08:51:36 -0500, Dan Langille said:
> 
> On 2012-11-29 08:34, Olivier Delestre wrote:
> > Le 29/11/2012 13:55, Dan Langille a écrit :
> >> On 2012-11-29 07:38, Olivier Delestre wrote:
> >>> Hi,
> >>>
> >>>  I upgrade bacula 5.0.3 ( psql 8.4 ) to 5.2.5 ( psql 9.1 ) on 
> >>> ubuntu
> >>> 12.04.1 LTS.
> >>>
> >>>  I asked about :
> >>>
> >>>  1) The documentation of bacula that saying :
> >>>
> >>> "If you configure the Batch Insert code in Bacula (attribute 
> >>> inserts
> >>> are
> >>> 10 times faster), you MUST be using a PostgreSQL that was built 
> >>> with
> >>> the --ENABLE-THREAD-SAFETY option, otherwise you will get
> >>> DATA CORRUPTION. Most major Linux distros have thread safety turned
> >>> on, but
> >>> it is better to check. One way is to see if the PostgreSQL library
> >>> that
> >>> Bacula will be linked against references pthreads. This can be done
> >>> with a command such as:
> >>> nm /usr/lib/libpq.a | grep pthread_mutex_lock "
> >>>
> >>> But, no such file. What is its usefulness ?
> >>
> >> Different operating systems install this file in different places.  
> >> Here is
> >> how I found it on a FreeBSD system:
> >>
> >> $ locate libpq.a
> >> /usr/local/lib/libpq.a
> >>
> >> And running the command:
> >>
> >> $ nm /usr/local/lib/libpq.a | grep pthread_mutex_lock
> >>          U pthread_mutex_lock
> >>          U pthread_mutex_lock
> >>
> >>
> >>> i found it by installing postgresql-server-dev-9.1. Not installed 
> >>> from
> >>> scratch install or upgrade...
> >>>
> >>> I think the package bacula 5.2.5 is compiled with 
> >>> enable-batch-insert
> >>> and postgresql 5.2.5 with enable-thread-safety ( obtain source 
> >>> package
> >>> with apt-get source xxx )
> >>
> >> Do you have any unanswered questions?
> >
> > I found /usr/lib/libpq.a if i installed postgresql-server-dev-9.1 on
> > my test machine. what use is it ?
> 
> I'm sorry, but I don't know for sure.  I'm sure it is used by that 
> package.  :)

The Bacula documentation assumes static libraries (.a), but Linux distros
typically don't install them by default.  In some Linux distros, the static
libraries are in the dev(el) package.

I suspect Olivier has /usr/lib/libpq.so* instead, so

objdump -T /usr/lib/libpq.so* | grep pthread_mutex_lock

should be check instead.

-- 
Martin Simmons
LispWorks Ltd
http://www.lispworks.com/

------------------------------------------------------------------------------
Keep yourself connected to Go Parallel: 
VERIFY Test and improve your parallel project with help from experts 
and peers. http://goparallel.sourceforge.net
_______________________________________________
Bacula-users mailing list
Bacula-users AT lists.sourceforge DOT net
https://lists.sourceforge.net/lists/listinfo/bacula-users