[slurm-users] RPM build error - accounting_storage_mysql.so

Ole Holm Nielsen Ole.H.Nielsen at fysik.dtu.dk
Tue Nov 12 07:51:56 UTC 2019


On 11/12/19 8:10 AM, Nguyen Dai Quy wrote:
> I have the same issue by compiling RPM. Just add "--with mysql" at 
> rpmbuild option and the error gone :-)
> HTH,

That's an interesting observation!  Do you know what the "--with mysql" 
actually does?

IMHO, the Slurm .spec file should include all required options (including 
the database), so if "--with mysql" is required with rpmbuild, I'd report 
this as a bug!  A SchedMD support contract will do you good here :-)

Is the problem specific to MariaDB 10.4, or are the slurm 19.05 RPMs also 
failing for you with the CentOS/RHEL 7 MariaDB 5.5 version?  Actually, I 
had built the Slurm 19.05.3 RPMs ("rpmbuild -ta slurm-19.05.3-2.tar.bz2") 
a while ago and this RPM does include the library as expected:

$ less slurm-slurmdbd-19.05.3-2.el7.x86_64.rpm
Name        : slurm-slurmdbd
Version     : 19.05.3
Release     : 2.el7
Architecture: x86_64
Install Date: (not installed)
Group       : System Environment/Base
Size        : 2398545
License     : GPLv2+
Signature   : (none)
Source RPM  : slurm-19.05.3-2.el7.src.rpm
Build Date  : Fri 25 Oct 2019 02:10:56 PM CEST
Build Host  : slurmdb.fysik.dtu.dk
Relocations : (not relocatable)
URL         : https://slurm.schedmd.com/
Summary     : Slurm database daemon
Description :
Slurm database daemon. Used to accept and process database RPCs and upload
database changes to slurmctld daemons on each cluster
-rw-r--r--    1 root    root                      361 Oct 25 14:10 
/usr/lib/systemd/system/slurmdbd.service
-rwxr-xr-x    1 root    root                  1834952 Oct 25 14:09 
/usr/lib64/slurm/accounting_storage_mysql.so
-rwxr-xr-x    1 root    root                   563232 Oct 25 14:10 
/usr/sbin/slurmdbd

We use the CentOS 7 standard MariaDB:

$ rpm -qa | grep mariadb
mariadb-libs-5.5.64-1.el7.x86_64
mariadb-server-5.5.64-1.el7.x86_64
mariadb-devel-5.5.64-1.el7.x86_64
mariadb-5.5.64-1.el7.x86_64

I hope someone can clarify the issue?

Thanks,
Ole


>     On 11-11-2019 15:22, William Brown wrote:
>      > Fabio
>      >
>      > Did you ever resolve the problem building accounting_storage_mysql.so?
>      >
>      > I have the exact same problem with CentOS 7.6, building Slurm
>     19.05.03.
>      > My command:
>      >
>      > rpmbuild -ta slurm-19.05.3-2.tar.bz2 | tee /var/tmp/slurm-build.log
>      >
>      > The directory with the plugin source is all there:
>      >
>     /home/users/slurm/rpmbuild/BUILD/slurm-19.05.3-2/src/plugins/accounting_storage/mysql,
> 
>      > with a Makefile that is the same date/time as the other
>      > accounting_storage alternatives.
>      >
>      > In the log I can see:
>      >
>      > checking for mysql_config... /usr/bin/mysql_config
>      >
>      > Looking at the process of building the RPMs it looks as if it has
>      > skipped trying to create the missing library file, but then expects to
>      > find it in the RPM.
>      >
>      > This is what I see when it is building, it builds the
>     accounting_storage
>      > .so files for _fileext, _none and _slurmdbd, but not for _mysql.  I do
>      > have MariaDB-devel 10.4.10 installed
>      >
>      > .
>      >
>      > .
>      >
>      > Making all in mysql
>      >
>      > make[5]: Entering directory
>      >
>     `/home/users/slurm/rpmbuild/BUILD/slurm-19.05.3-2/src/plugins/accounting_storage/mysql'
>      >
>      > make[5]: Nothing to be done for `all'.
>      >
>      > make[5]: Leaving directory
>      >
>     `/home/users/slurm/rpmbuild/BUILD/slurm-19.05.3-2/src/plugins/accounting_storage/mysql'
>      >
>      > .
>      >
>      > .
>      >
>      > Making install in mysql
>      >
>      > make[4]: Entering directory
>      >
>     `/home/users/slurm/rpmbuild/BUILD/slurm-19.05.3-2/src/plugins/accounting_storage/mysql'
>      >
>      > make[5]: Entering directory
>      >
>     `/home/users/slurm/rpmbuild/BUILD/slurm-19.05.3-2/src/plugins/accounting_storage/mysql'
>      >
>      > make[5]: Nothing to be done for `install-data-am'.
>      >
>      > make[5]: Leaving directory
>      >
>     `/home/users/slurm/rpmbuild/BUILD/slurm-19.05.3-2/src/plugins/accounting_storage/mysql'
>      >
>      > make[4]: Leaving directory
>      >
>     `/home/users/slurm/rpmbuild/BUILD/slurm-19.05.3-2/src/plugins/accounting_storage/mysql'
>      >
>      > The error stream shows the problem a little later:
>      >
>      > Processing files: slurm-19.05.3-2.el7.x86_64
>      >
>      > warning: File not found:
>      >
>     /home/users/slurm/rpmbuild/BUILDROOT/slurm-19.05.3-2.el7.x86_64/home/apps/slurm/lib64/slurm/accounting_storage_mysql.so
>      >
>      > .
>      >
>      > .
>      >
>      > Processing files: slurm-slurmdbd-19.05.3-2.el7.x86_64
>      >
>      > error: File not found:
>      >
>     /home/users/slurm/rpmbuild/BUILDROOT/slurm-19.05.3-2.el7.x86_64/home/apps/slurm/lib64/slurm/accounting_storage_mysql.so
>      >
>      > File not found:
>      >
>     /home/users/slurm/rpmbuild/BUILDROOT/slurm-19.05.3-2.el7.x86_64/home/apps/slurm/lib64/slurm/accounting_storage_mysql.so
>      >
>      > File not found:
>      >
>     /home/users/slurm/rpmbuild/BUILDROOT/slurm-19.05.3-2.el7.x86_64/home/apps/slurm/lib64/slurm/accounting_storage_mysql.so
>      >
>      > RPM build errors:
>      >
>      > I looked at the Makefile for the accounting_storage_mysql as
>     compared to
>      > the Makefile for accounting_storage_slurmdbd to try to understand them.
>      >
>      > This is a selection from the Makefile for mysql:
>      >
>      > all: all-am
>      >
>      > all-am: Makefile $(LTLIBRARIES)
>      >
>      > LTLIBRARIES = $(pkglib_LTLIBRARIES)
>      >
>      > #pkglib_LTLIBRARIES = accounting_storage_mysql.la
>     <http://accounting_storage_mysql.la>
>      > <http://accounting_storage_mysql.la>
>      >
>      > And this is for slurmdbd:
>      >
>      > all: all-am
>      >
>      > all-am: Makefile $(LTLIBRARIES)
>      >
>      > LTLIBRARIES = $(pkglib_LTLIBRARIES)
>      >
>      > pkglib_LTLIBRARIES = accounting_storage_slurmdbd.la
>     <http://accounting_storage_slurmdbd.la>
>      > <http://accounting_storage_slurmdbd.la>
>      >
>      > So I think that the problem is that the definition of
>     pkglib_LTLIBRARIES
>      > is commented out in the accounting_storage_mysql Makefile, hence
>     nothing
>      > to build.
>      >
>      > Is that intended?  Is it a consequence of something in my environment?
>      >




More information about the slurm-users mailing list