Bacula-users

[Bacula-users] Ubuntu 16: make_mysql_tables misbehavior "Invalid default value for"

2016-06-15 16:50:46
Subject: [Bacula-users] Ubuntu 16: make_mysql_tables misbehavior "Invalid default value for"
From: Heitor Faria <heitor AT bacula.com DOT br>
To: Kern Sibbald <kern AT sibbald DOT com>
Date: Wed, 15 Jun 2016 17:49:42 -0300 (BRT)
Hello, Kern,

Another Ubuntu 16 issue is running the make_mysql_tables results in error:

ERROR 1067 (42000) at line 91: Invalid default value for 'CleaningDate'
ERROR 1067 (42000) at line 111: Invalid default value for 'SchedTime'
ERROR 1067 (42000) at line 145: Invalid default value for 'SchedTime'
ERROR 1067 (42000) at line 187: Invalid default value for 'Date'
ERROR 1067 (42000) at line 201: Invalid default value for 'CreateTime'
ERROR 1067 (42000) at line 225: Invalid default value for 'FirstWritten'
ERROR 1067 (42000) at line 321: Invalid default value for 'Time'

The workaround for this is:

sed -i s/'DATETIME DEFAULT 0'/'DATETIME'/g /etc/bacula/scripts/make_mysql_tables

I wasn't able to reproduce it in any Debian yet.
If it is needed I'll be glad to open a bug report.

Regards,

----- Original Message -----
> From: "Kern Sibbald" <kern AT sibbald DOT com>
> To: bacula-users AT lists.sourceforge DOT net, "bacula-devel" <bacula-devel 
> AT lists.sourceforge DOT net>
> Sent: Wednesday, June 15, 2016 4:51:18 AM
> Subject: Re: [Bacula-devel] [Bacula-users] Error Director 
> /usr/lib64/libbaccats-7.4.0.so: undefined symbol: mysql_init

> Hello,
> 
> To everyone who is having problems building Bacula to support MySQL
> version 5.7.x.  This is indeed a linking problem.  This version is found
> on Ubuntu 16.04, and probably other OSes with the most recent MySQL
> releases.  MySQL has eliminated the libmysqlclient_r.so library, which
> is the thread safe library by making the standard libmysqlclient.so
> thread safe.  While this is logical and desirable, to do so, they
> modified the way that MySQL is linked and rely on mysql_config to
> provide the correct parameters.  All is OK to that point.
> Unfortunately, since Bacula has a lot of detection code for old versions
> of MySQL, the Bacula implementation was not quite up to par.
> 
> I have now fixed that problem and pushed a somewhat complicated patch
> into the Bacula public repositories for Branch-7.0, Branch-7.2, and
> Branch-7.4.
> 
> If you want a quickie work around without getting the latest code:
> 
> - cd <bacula>
> - run your ./configure
>  - cd <bacula>/src/cats
> - edit Makefile
> - Change the line that reads:
> MYSQL_LIBS =
> to
> MYSQL_LIBS = -L/usr/lib/x86_64-linux-gnu -lmysqlclient -lpthread -lz -lm
> -lrt -ldl
> - cd <bacula>
> - make -j9
> - ...
> 
> You should then have a Bacula that is correctly built.  Note: it is
> possible that the mysqlclient library is in a different place on your
> system.  To get the correct values to assign to MYSQL_LIBS, on your
> system simply do:
> 
> mysql_setup --libs_r
> 
> A final note about MySQL: for version 5.7, it seems that either they
> have a bug or more likely some default sync/fsync has been made the
> default, which means that using an out of the box MySQL and delivered on
> Ubuntu 16.04 is 10-15 times slower than either PostgreSQL out of the box
> or prior MySQL versions.  For me, this makes even running regression
> tests on that particular MySQL totally unusable (i.e. the normal set of
> regression tests run in about 2 hours; with this version of MySQL, it
> will probably take between 20 and 30 hours).  Hopefully Ubuntu or Oracle
> (MySQL) will fix this problem, which I will officially report today.
> 
> Best regards,
> Kern
> 
> PS:
> 
> If any of you are C/C++ experienced Linux or Windows developers, Bacula
> Systems is hiring two new developers.  These jobs are in Switzerland.
> If you are interested, please see:
> 
>     http://www.baculasystems.com/company/careers
> 
> 
> On 01/30/2016 03:16 AM, Phil Stracchino wrote:
>> On 01/29/16 19:41, Hector Javier Agudelo Corredor wrote:
>>> HI team
>>>
>>>
>>> I installed centos 6.7.
>>>
>>> I have installed bacula 7.4 with postgres  5.7.10 but when I set the
>>> mysql password in the file director.
>> [...]
>>
>>> But when I test settings file manager with the command
>>>
>>> bacula-dir sudo -tc /etc/bacula/bacula-dir.conf
>>>
>>> get the following error:
>>>
>>> bacula-dir: symbol lookup error: /usr/lib64/libbaccats-7.4.0.so
>>> <http://libbaccats-7.4.0.so>: undefined symbol: mysql_init
>>
>> Ummmmm......   What's wrong with this picture?
>>
>> Did you mean you installed with *MySQL* 5.7.10?
>>
>>
>> Personally, if I were you, I would not be using MySQL 5.7 yet.  It seems
>> to still have some teething issues, some of them serious.  You might try
>> backing out to MySQL (or Percona Server) 5.6.28.
>>
>> That said, as Michael suggested, it looks as though there is something
>> wrong (or simply odd) about either your configure options or your build
>> environment.
>>
>>
> 
> 
> ------------------------------------------------------------------------------
> What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
> patterns at an interface-level. Reveals which users, apps, and protocols are
> consuming the most bandwidth. Provides multi-vendor support for NetFlow,
> J-Flow, sFlow and other flows. Make informed decisions using capacity planning
> reports. http://pubads.g.doubleclick.net/gampad/clk?id=1444514421&iu=/41014381
> _______________________________________________
> Bacula-devel mailing list
> Bacula-devel AT lists.sourceforge DOT net
> https://lists.sourceforge.net/lists/listinfo/bacula-devel

-- 
======================================================================= 
Heitor Medrado de Faria | Bacula do Brasil 
Próximas aulas telepresencial ao-vivo - 02 de maio: 
http://www.bacula.com.br/agenda/ 
Ministro treinamento e implementação in-company Bacula: 
http://www.bacula.com.br/in-company/ 
61 8268-4220 
Site: www.bacula.com.br 
========================================================================

------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports. http://pubads.g.doubleclick.net/gampad/clk?id=1444514421&iu=/41014381
_______________________________________________
Bacula-users mailing list
Bacula-users AT lists.sourceforge DOT net
https://lists.sourceforge.net/lists/listinfo/bacula-users