bacula-director does not start, dummy libbaccats

Bug #929523 reported by Scott Moser
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
bacula (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

On 5.2.3-0ubuntu3, reported from bug 897303.

The latest package installed
When attempting to start the bacula-director the following error is logged, and the service does not start.

08-Feb 18:59 bacula-dir JobId 0: Fatal error: Please replace this dummy libbaccats library with a proper one.
08-Feb 18:59 bacula-dir JobId 0: Fatal error: Could not open Catalog "MyCatalog", database ";".
08-Feb 18:59 bacula-dir ERROR TERMINATION

Related branches

Revision history for this message
Scott Moser (smoser) wrote :

bacula has mulitple implementors of the libbaccats.so (pgsql, sqlite3, mysql).

It seems like the right place for this library is in the bacula-common-<variant> package.

After one change to get the correct libbaccats-<variant>-<version>.so copied in, I have layout like:
  /usr/lib/bacula/libbaccats-5.2.3.so -> libbaccats-mysql-5.2.3.so
  /usr/lib/bacula/libbaccats-mysql-5.2.3.so
  /usr/lib/bacula/libbaccats-mysql.so -> libbaccats-mysql-5.2.3.so
  /usr/lib/bacula/libbaccats.so -> libbaccats-5.2.3.so

However, doing that results in dpkg-shlibeps complaining and failing as :

| dh_shlibdeps -pbacula-sd-mysql -Lbacula-common-mysql
| dpkg-shlibdeps: warning: debian/bacula-common-mysql/usr/lib/bacula/libbaccats-5.2.3.so has an unexpected SONAME (libbaccats-mysql-5.2.3.so)
| dpkg-shlibdeps: error: no dependency information found for debian/bacula-common-mysql/usr/lib/bacula/libbaccats-5.2.3.so (used by debian/bacula-sd-mysql/usr/bin/bscan).
| dh_shlibdeps: dpkg-shlibdeps -Tdebian/bacula-sd-mysql.substvars -Sdebian/bacula-common-mysql debian/bacula-sd-mysql/usr/bin/bcopy debian/bacula-sd-mysql/usr/bin/bscan debian/bacula-sd-mysql/usr/sbin/btape returned exit code 2
| make: *** [binary-arch-common] Error 2
| dpkg-buildpackage: error: fakeroot debian/rules binary gave error exit status 2

I'm not sure how to work around this, because bacula is certainly intending to provide the file libbaccats-mysql-5.2.3.so as libbaccats-5.2.3.so.

Revision history for this message
Scott Moser (smoser) wrote :

just for the record, to get the correct libbaccats installed, I've just changed debian/rules like:
=== modified file 'debian/rules'
--- debian/rules 2012-01-19 00:13:55 +0000
+++ debian/rules 2012-02-09 14:25:48 +0000
@@ -203,9 +203,10 @@
        dh_install -pbacula-console -pbacula-console-qt
        cp $(DEFAULTINSTALLDIR)/usr/sbin/bconsole debian/bacula-console/usr/sbin/bacula-console
        cp debian/tmp-build-$(DEFAULTVARIANT)/src/qt-console/.libs/bat debian/bacula-console-qt/usr/bin/bat
- cp debian/tmp-build-mysql/src/cats/.libs/libbaccats-$(MAINVER).so debian/tmp-install-mysql/usr/lib/bacula
- cp debian/tmp-build-sqlite3/src/cats/.libs/libbaccats-$(MAINVER).so debian/tmp-install-sqlite3/usr/lib/bacula
- cp debian/tmp-build-pgsql/src/cats/.libs/libbaccats-$(MAINVER).so debian/tmp-install-pgsql/usr/lib/bacula
+ cp debian/tmp-build-mysql/src/cats/.libs/libbaccats-*$(MAINVER).so debian/tmp-install-mysql/usr/lib/bacula
+ cp debian/tmp-build-sqlite3/src/cats/.libs/libbaccats-*$(MAINVER).so debian/tmp-install-sqlite3/usr/lib/bacula
+ cp debian/tmp-build-pgsql/src/cats/.libs/libbaccats-*$(MAINVER).so debian/tmp-install-pgsql/usr/lib/bacula
+

 ######### dbconfig-common stuff
 # $(call ext-upgrade-all,7_to_8,1.36.0)

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package bacula - 5.2.5-0ubuntu1

---------------
bacula (5.2.5-0ubuntu1) precise; urgency=low

  * New upstream release.
    * fixes SONAME of libbaccats-{mysql,pgsql,sqlite3}-<version>.so to be
      libbaccats-<version> which made dh_shlibdeps fail in 5.2.3 after
      correct libraries were copied.
  * copy correct backend-specific libbaccats files to the appropriate
    package to not have only the dummy library (LP: #929523)
  * include /usr/lib/x86_64-linux-gnu in build-time --with-mysql search path
  * fix database creation data so it works with mysql 5.5
 -- Scott Moser <email address hidden> Thu, 09 Feb 2012 16:05:44 -0500

Changed in bacula (Ubuntu):
status: New → Fix Released
Revision history for this message
Scott Moser (smoser) wrote :

@Sandy,
  Could you please put this through some test?
 I've verified the mysql daemon installs and starts.

Revision history for this message
Sandy Mackenzie (sandy) wrote :

A reboot took care of the following.
"bacula-dir JobId 0: Fatal error: Please replace this dummy libbaccats library with a proper one."

Then
#/usr/share/bacula-director/update_mysql_tables

took care the error opening the database.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.