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?
     >


Reply via email to