Zálohování serveru Sybase pomocí nástroje NetWorker/NMDA selže s chybami I/O a končí zhroucením procesu Sybase sybmultbuf

Summary: Zálohování serveru Sybase pomocí nástroje NetWorker/NMDA se nezdaří s chybami I/O a končí zhroucením procesu Sybase sybmultbuf.

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms

  • Selhání zálohy Sybase modulu NetWorker Module for Database Applications (NMDA)
  • Nástroj nsrdasv zaprotokoloval tyto chyby:
24146:nsrdasv: Error from server SL4_BS: Msg 419402, Level 2, State 1
Backup Server: 4.194.2.1: Internal error. The srv_select() function was called to complete an I/O for 2240 bytes. After retrying 2241 times only 0 bytes have been read.24146:nsrdasv: Error from server SL4_BS: Msg 414102, Level 2, State 75
Backup Server: 4.141.2.75: [0] The 'read' call failed for database/archive device while working on stripe device 'nsrsyb::model..3.1./nsr/apps/tmp/sybtmp_1671421.txt::000' with error number 0 (Success). Refer to your operating system documentation for further details.24146:nsrdasv: Error from server SL4_BS: Msg 406203, Level 3, State 1
Backup Server Internal Error: 4.62.3.1: Multibuffering subprocesses died, archive nsrsyb::model..3.1./nsr/apps/tmp/sybtmp_1671421.txt::000.24146:nsrdasv: Error from server SL4_BS: Msg 414102, Level 2, State 66
Backup Server: 4.141.2.66: [0] The 'write' call failed for database/archive device while working on stripe device 'nsrsyb::model..3.1./nsr/apps/tmp/sybtmp_1671421.txt::000' with error number 32 (Broken pipe). Refer to your operating system documentation for further details.24146:nsrdasv: Error from server SL4_BS: Msg 406203, Level 3, State 8
Backup Server Internal Error: 4.62.3.8: Multibuffering subprocesses died, archive nsrsyb::model..3.1./nsr/apps/tmp/sybtmp_1671421.txt::000.24146:nsrdasv: Error from server SL4_BS: Msg 603102, Level 2, State 2
Backup Server: 6.31.2.2: Volume rejected.24146:nsrdasv: Error from server SL4_BS: Msg 101402, Level 2, State 2
Backup Server: 1.14.2.2: Unrecoverable I/O or volume error. This DUMP or LOAD session must exit.24146:nsrdasv: Error from server SL4_BS: Msg 414102, Level 2, State 66
  • sybmultbuf jader, když NMDA API provádí nějaké šifrování pomocí Openssl:
 A00: SYBMULTBUF: bs_trap; process received signal 11
 A00: 0x7fc08ac64b20 : (killpg+0x40) [0x7fc08ac64b20]
 A00: 0x7fc0898fba79 : (EVP_MD_CTX_clear_flags+0x9) [0x7fc0898fba79]
 A00: 0x7fc0898e9461 : (EVP_DigestInit_ex+0x21) [0x7fc0898e9461]
 A00: 0x7fc08990af31 : (HMAC_Init_ex+0x211) [0x7fc08990af31]
 A00: 0x7fc088a1a219 : (comssl_OpenSSL_hmac_init+0x69) [0x7fc088a1a219]
 A00: 0x7fc0889ab8f9 : (cryptoiface_get_hmac+0x89) [0x7fc0889ab8f9]
 A00: 0x7fc0889ac1c5 : (gsslgtov1_export_sec_context+0x285) [0x7fc0889ac1c5]
 A00: 0x7fc0889af5b0 : (gsslgtov1_init_sec_context+0xe20) [0x7fc0889af5b0]
 A00: 0x7fc0889a1dbc : (authgss_create+0x5dc) [0x7fc0889a1dbc]
 A00: 0x7fc0889af6e0 : (gsslgtov1_init_sec_context+0xf50) [0x7fc0889af6e0]
 A00: 0x7fc0889b0553 : (gsslgtov1_acquire_cred+0xad3) [0x7fc0889b0553]
 A00: 0x7fc08898673c : (lgto_parms+0x127c) [0x7fc08898673c]
 A00: 0x7fc088987909 : (acquire_lg_authgen_cred_lsp_host_override+0x299) [0x7fc088987909]
 A00: 0x7fc088987b87 : (acquire_lg_authgen_cred+0x37) [0x7fc088987b87]
 A00: 0x7fc0889822ba : (rap_bind+0x41a) [0x7fc0889822ba]
 A00: 0x7fc088992f71 : (resdb_net_encrypt+0xd1) [0x7fc088992f71]
 A00: 0x7fc0888789d4 : (nsr_ladb_net+0xc4) [0x7fc0888789d4]
 A00: 0x7fc088878379 : (nsr_findserver+0x109) [0x7fc088878379]
 A00: 0x7fc0887ad5b3 : (_nwbsa_open_options_session+0x243) [0x7fc0887ad5b3]
 A00: 0x7fc08879d145 : (BSAInit+0x275) [0x7fc08879d145]
 A00: 0x7fc08879b273 : (init_bsa+0x33) [0x7fc08879b273]
 A00: 0x7fc088797e1e : (syb_open+0xa8e) [0x7fc088797e1e]
 A00: 0x44d691 : (api_open+0x501) [0x44d691]
 A00: 0x42924f : (ctl_job+0x249) [0x42924f]
 A00: 0x425fe8 : (archive_proc+0x593) [0x425fe8]
 A00: 0x42526a : (sybmbuf_main+0x66e) [0x42526a]
 A00: 0x424bfa : (main+0x1b) [0x424bfa]
 A00: 0x7fc08ac50cf3 : (__libc_start_main+0xf3) [0x7fc08ac50cf3]
 A00: 0x424b09 : (_start+0x29) [0x424b09]
 D00: SYBMULTBUF ERROR: Emulator interprocess communication failed with error state = 9, error code=0, system message=Pipe I/O returned 0 bytes.
 Open Server Error: 16248.10.0: Error in srv_select() - file descriptor 12 is no longer active
 Backup Server: 4.194.2.1: Internal error. The srv_select() function was called to complete an I/O for 2240 bytes. After retrying 2241 times only 0 bytes have been read.
 Backup Server: 4.141.2.75: [0] The 'read' call failed for database/archive device while working on stripe device 'nsrsyb::...1::000' with error number 0 (Success). Refer to your operating system documentation for further details.
 Backup Server Internal Error: 4.62.3.1: Multibuffering subprocesses died, archive nsrsyb::...1::000.
 Backup Server: 4.141.2.66: [0] The 'write' call failed for database/archive device while working on stripe device 'nsrsyb::...1::000' with error number 32 (Broken pipe). Refer to your operating system documentation for further details.
 Backup Server Internal Error: 4.62.3.8: Multibuffering subprocesses died, archive nsrsyb::...1::000.
.....
Jul 6 20:23:36 2022: D02: SYBMULTBUF ERROR: Emulator interprocess communication failed with error state = 9, error code=0, system message=Pipe I/O returned 0 bytes.
Jul 6 20:23:36 2022: Open Server Error: 16248.10.0: Error in srv_select() - file descriptor 17 is no longer active
Jul 6 20:23:36 2022: Open Server Error: 16248.10.0: Error in srv_select() - file descriptor 17 is no longer active

Cause

Selhání je způsobeno konfliktem mezi operačními systémy a knihovnami Openssl libcrypto.so NMDA. 
Zálohovací server Sybase načte knihovnu libcrypto.so.1.1.1 systému Red Hat 8.6, jak je znázorněno ve výstupu ldd .
$ ldd ./backupserver
        linux-vdso.so.1 (0x00007ffe6d6db000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007faea79ab000)
        librt.so.1 => /lib64/librt.so.1 (0x00007faea77a3000)
        libm.so.6 => /lib64/libm.so.6 (0x00007faea7421000)
        libnsl.so.1 => /lib64/libnsl.so.1 (0x00007faea7207000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007faea6fe7000)
        libc.so.6 => /lib64/libc.so.6 (0x00007faea6c22000)
        /lib64/ld-linux-x86-64.so.2 (0x00007faea7baf000)
        libtirpc.so.3 => /lib64/libtirpc.so.3 (0x00007faea69ef000)
        libgssapi_krb5.so.2 => /lib64/libgssapi_krb5.so.2 (0x00007faea679a000)
        libkrb5.so.3 => /lib64/libkrb5.so.3 (0x00007faea64b0000)
        libk5crypto.so.3 => /lib64/libk5crypto.so.3 (0x00007faea6299000)
        libcom_err.so.2 => /lib64/libcom_err.so.2 (0x00007faea6095000)
        libkrb5support.so.0 => /lib64/libkrb5support.so.0 (0x00007faea5e84000)
        libkeyutils.so.1 => /lib64/libkeyutils.so.1 (0x00007faea5c80000)
        libcrypto.so.1.1 => /lib64/libcrypto.so.1.1 (0x00007faea5797000)
        libresolv.so.2 => /lib64/libresolv.so.2 (0x00007faea5580000)
        libselinux.so.1 => /lib64/libselinux.so.1 (0x00007faea5356000)
        libz.so.1 => /lib64/libz.so.1 (0x00007faea513e000)
        libpcre2-8.so.0 => /lib64/libpcre2-8.so.0 (0x00007faea4eba000)
NMDA volá funkce OpenSSL pomocí LIBCOMMONSSL (openssl 1.0.0), ale protože Sybase již načte knihovnu 1.1.1, záloha selže.

Resolution

Zástupné řešení: 

Předběžně načtěte knihovnu NMDA libcrypto.so.1.0.0 ve skriptu Sybase backupserver RUN. Restartujte záložní server Sybase,
 

  1. V klientovi Sybase se přihlaste jako uživatel Sybase.
  2. Přejděte do domovského adresáře instalace Sybase
  3. Zdroj skriptu prostředí Sybase.
$ . ./SYBASE.sh
  1. Exportujte proměnnou LD_PRELOAD ve skriptu RUN. Uložte změny.
$ cd $SYBASE/$SYBASE_ASE/install
$ vi RUN_<SERVER>_BS
# Multibuf executable path:     /home/sybase16sp4/ASE-16_0/bin/sybmultbuf
# Backup Server name:   DELLSP4_BS
#
LD_PRELOAD=/usr/lib/nsr/apps/lib64/libcrypto.so.1.0.0
export LD_PRELOAD
/home/sybase16sp4/ASE-16_0/bin/backupserver \
-e/home/sybase16sp4/ASE-16_0/install/DELLSP4_BS.log \
-N25 \
POZNÁMKA: Novější verze NetWorker podporují jinou verzi knihovny libcrypto. Vždy se ujistěte, že jste předem načetli správnou knihovnu kontrolou souboru libcrypto v umístění /usr/lib/nsr/apps/lib64.
  1.  Restartujte záložní server Sybase.
A. Zastavte zálohovací server Sybase na příkazovém řádku isql.
$ cd $SYBASE/$SYBASE_OCS/bin
$ Isql -U<user> -P<Password> -S<Sybase Server>
Isql> shutdown SYB_BACKUP
Isql> quit
B. Spusťte záložní server Sybase:
$ cd $SYBASE/$SYBASE_ASE/install
$ startserver -f RUN_<Sybase server>_BS
C. Ověřte, zda je spuštěn zálohovací server Sybase:
$ ./showserver

Additional Information

Prostředí:

Red Hat 8.6
SAP ASE 16 SP4 PL02
NetWorker/NMDA 19.5.0.5

Affected Products

NetWorker, NetWorker Module for Databases and Applications

Products

NetWorker Family
Article Properties
Article Number: 000205566
Article Type: Solution
Last Modified: 04 Dec 2024
Version:  2
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.