docker - sybase ase 컨테이너 실행 시 Current process (0x30002) infected with signal 11 (SIGSEGV)
오랜만에 컨테이너를 실행했더니,
$ docker run --name ase16 -it nguoianphu/docker-sybase
00:0000:00000:00000:2025/11/11 01:28:07.78 kernel SySAM: Using licenses from: /opt/sybase/SYSAM-2_0/licenses/SYBASE_ASE_DE.lic:/opt/sybase/SYSAM-2_0/licenses/SYBASE_ASE_XE.lic
00:0000:00000:00000:2025/11/11 01:28:07.79 kernel SySAM: Checked out license for 20 ASE_CORE (2018.1231/permanent/0534 6FD0 8CE5 427C).
00:0000:00000:00000:2025/11/11 01:28:07.79 kernel This product is licensed to: ASE Developer Edition - For Development and Test use only
00:0000:00000:00000:2025/11/11 01:28:07.79 kernel Checked out license ASE_CORE
00:0000:00000:00000:2025/11/11 01:28:07.79 kernel Adaptive Server Enterprise (Developer Edition)
00:0000:00000:00000:2025/11/11 01:28:07.80 kernel Using config area from primary master device.
00:0000:00000:00000:2025/11/11 01:28:07.81 kernel Could not allocate memory using Huge Pages. Allocated using regular pages. For better performance, reboot the server after configuring enough Huge Pages.
00:0000:00000:00000:2025/11/11 01:28:07.81 kernel Internal run-time model set for Linux - Native
00:0000:00000:00000:2025/11/11 01:28:07.81 kernel Adaptive Server is using the threaded kernel mode.
00:0000:00000:00000:2025/11/11 01:28:07.81 kernel Using 40000 file descriptors.
00:0000:00000:00000:2025/11/11 01:28:07.82 kernel Adaptive Server Enterprise/16.0 SP02 PL02/EBF 25320 SMP/P/x86_64/Enterprise Linux/ase160sp02plx/2492/64-bit/FBO/Sat Nov 21 04:05:39 2015
00:0000:00000:00000:2025/11/11 01:28:07.82 kernel Confidential property of SAP AG or an SAP affiliate company.
00:0000:00000:00000:2025/11/11 01:28:07.82 kernel Copyright 2015
00:0000:00000:00000:2025/11/11 01:28:07.82 kernel SAP AG or an SAP affiliate company. All rights reserved.
00:0000:00000:00000:2025/11/11 01:28:07.82 kernel Unpublished rights reserved under U.S. copyright laws.
00:0000:00000:00000:2025/11/11 01:28:07.82 kernel
00:0000:00000:00000:2025/11/11 01:28:07.82 kernel This software contains confidential and trade secret information of SAP AG or
00:0000:00000:00000:2025/11/11 01:28:07.82 kernel an SAP affiliate company. Use, duplication or disclosure of the software and
00:0000:00000:00000:2025/11/11 01:28:07.82 kernel documentation by the U.S. Government is subject to restrictions set forth
00:0000:00000:00000:2025/11/11 01:28:07.82 kernel in a license agreement between the Government and SAP AG or an SAP affiliate
00:0000:00000:00000:2025/11/11 01:28:07.82 kernel company, or other written agreement specifying the Government's rights to
00:0000:00000:00000:2025/11/11 01:28:07.82 kernel use the software and any applicable FAR provisions, for example, FAR 52.227-19.
00:0000:00000:00000:2025/11/11 01:28:07.82 kernel SAP AG or an SAP affiliate company
00:0000:00000:00000:2025/11/11 01:28:07.82 kernel Using /opt/sybase as the 'SYBASE' environment variable, found during startup.
00:0000:00000:00000:2025/11/11 01:28:07.82 kernel Using OCS-16_0 as the 'SYBASE_OCS' environment variable, found during startup.
00:0000:00000:00000:2025/11/11 01:28:07.82 kernel Using ASE-16_0 as the 'SYBASE_ASE' environment variable, found during startup.
00:0000:00000:00000:2025/11/11 01:28:07.82 kernel ASE booted on host 'd7434f8ff0b2' running Linux release 6.8.0-85-generic version #85-Ubuntu SMP PREEMPT_DYNAMIC Thu Sep 18 15:26:59 UTC 2025.
00:0000:00000:00000:2025/11/11 01:28:07.82 kernel Using '/opt/sybase/ASE-16_0/MYSYBASE.cfg' for configuration information.
00:0000:00000:00000:2025/11/11 01:28:07.82 kernel Logging ASE messages in file '/opt/sybase/ASE-16_0/install/MYSYBASE.log'.
00:0000:00000:00000:2025/11/11 01:28:07.82 kernel Disk Controller Manager is online.
00:0000:00000:00000:2025/11/11 01:28:07.82 kernel Network Controller Manager is online.
00:0000:00000:00000:2025/11/11 01:28:07.82 kernel Ct-Lib Controller Manager is online.
00:0000:00000:00000:2025/11/11 01:28:07.83 kernel Platform TCP network support seems IPv6-aware, IPv4/IPv6 are both enabled.
00:0000:00000:00000:2025/11/11 01:28:07.83 kernel ASE booted with TCP_NODELAY enabled.
00:0000:00000:00000:2025/11/11 01:28:07.83 kernel ASE - Dynamic Pluggable Component Interface is enabled
00:0000:00000:00000:2025/11/11 01:28:07.83 kernel PCI(M0): PCI Memory not available, initializing now....
00:0000:00000:00000:2025/11/11 01:28:07.83 kernel PCI(M0): 64.0 Mb. allocated for the PCI Memory pool ....
00:0000:00000:00000:2025/11/11 01:28:07.83 kernel ASE_PCI: 4 slot(s) available
00:0000:00000:00000:2025/11/11 01:28:07.83 kernel PCI(M0): PCI Bridge initializing the PLB for 4 slots
00:0000:00000:00000:2025/11/11 01:28:07.83 kernel PCI(M0): PCI Bridge escapes large memory allocation requests to the run-time
00:0000:00000:00000:2025/11/11 01:28:07.83 kernel PCI(M1): Slot 1 has been bound to engine 0
00:0000:00000:00000:2025/11/11 01:28:07.83 kernel PCI(M1): Slot 2 has been bound to engine 0
00:0000:00000:00000:2025/11/11 01:28:07.83 kernel PCI(M1): PCI Bridge Slot# 1, Module "JVM Adaptor", Vendor "Sybase an SAP Company", Logical name "PCA/JVM"
00:0000:00000:00000:2025/11/11 01:28:07.83 kernel PCI(M1): PCI Bridge Slot# 2, Module "ODBC Adaptor", Vendor "Sybase an SAP Company", Logical name "PCA/ODBC"
00:0000:00000:00000:2025/11/11 01:28:07.83 kernel Network and device connection limit is 39985.
00:0000:00000:00000:2025/11/11 01:28:07.84 kernel Adaptive Server is running as process id 8.
00:0000:00000:00000:2025/11/11 01:28:08.06 server Number of blocks left for proc headers: 13976.
00:0000:00000:00000:2025/11/11 01:28:08.06 server Proc header memory allocated 6950 pages for each per engine cache.
00:0000:00000:00000:2025/11/11 01:28:08.08 kernel Create Thread Pool 2, "syb_system_pool", type="Run To Completion", with 1 threads
00:0000:00000:00000:2025/11/11 01:28:08.08 kernel Warning: Operating System stack size is greater than 2MB. If it is too large, ASE may run out of memory during thread creation. You can reconfigure it using 'limit' (csh) or 'ulimit' (bash)
00:0000:00000:00000:2025/11/11 01:28:08.08 kernel Create Thread Pool 1, "syb_default_pool", type="Engine (Multiplexed)", with 1 threads
00:0000:00000:00000:2025/11/11 01:28:08.08 kernel Aggressive task stealing enabled
00:0000:00000:00000:2025/11/11 01:28:08.08 kernel Create Thread Pool 3, "syb_blocking_pool", type="Run To Completion", with 4 threads
00:0007:00000:00000:2025/11/11 01:28:08.08 kernel I/O controller 2 (NetController) is running as task 786438 on thread 7 (LWP 21).
00:0000:00000:00000:2025/11/11 01:28:08.08 kernel Enabling Linux Native Kernel asynchronous disk I/O strategy.
00:0008:00000:00000:2025/11/11 01:28:08.08 kernel I/O controller 3 (DiskController) is running as task 917511 on thread 8 (LWP 22).
00:0000:00000:00000:2025/11/11 01:28:08.08 kernel Initializing virtual device 0, '/opt/sybase/data/master.dat' with dsync 'off'.
00:0000:00000:00000:2025/11/11 01:28:08.08 kernel Virtual device 0 started using asynchronous (with DIRECTIO) i/o.
00:0000:00000:00000:2025/11/11 01:28:08.08 server Loaded default Unilib conversion handle.
00:0000:00000:00000:2025/11/11 01:28:08.08 kernel Worker Thread Manager is not enabled for use in ASE.
00:0000:00000:00000:2025/11/11 01:28:08.09 kernel Either the config parameter 'use security services' is set to 0, or ASE does not support use of external security mechanisms on this platform. The Security Control Layer will not be initialized. No external security mechanisms will be supported.
00:0000:00000:00000:2025/11/11 01:28:08.09 kernel libsybibmmq - Sybase IBM MQ interface/16.0 SP02 PL02/EBF 25320 SMP/P/x86_64/Enterprise Linux/ase160sp02plx/2492/64-bit/OPT/Sat Nov 21 02:29:37 2015
00:0000:00000:00000:2025/11/11 01:28:08.09 kernel Loaded encryption provider CSI-2.9M18-linuxamd64-2015/07/13 21:00:24 PDT-sybcsi_openssl-OpenSSL 1.0.1p-fips 9 Jul 2015.
00:0000:00000:00000:2025/11/11 01:28:08.09 kernel Begin processing to generate RSA keypair.
00:0000:00000:00000:2025/11/11 01:28:08.15 kernel Completed processing to generate RSA keypair.
00:0000:00000:00000:2025/11/11 01:28:08.15 kernel Begin processing to generate RSA keypair.
00:0000:00000:00000:2025/11/11 01:28:08.22 kernel Completed processing to generate RSA keypair.
00:0002:00000:00000:2025/11/11 01:28:08.22 kernel ASE - Dynamic Pluggable Component Interface is enabled
00:0002:00000:00000:2025/11/11 01:28:08.22 kernel Thread 2 (LWP 11) of Threadpool syb_default_pool online as engine 0
00:0002:00000:00000:2025/11/11 01:28:08.22 kernel bucket manager consolidator online
00:0002:00000:00000:2025/11/11 01:28:08.23 kernel Current process (0x30002) infected with signal 11 (SIGSEGV)
00:0002:00000:00000:2025/11/11 01:28:08.23 kernel Address 0x0x00007b9d70031190 (), siginfo (code, address) = (2, 0x0x00007b9d70031190)
00:0002:00000:00000:2025/11/11 01:28:08.23 kernel **** Saved signal context (0x0x000000014ae674c0): ****
00:0002:00000:00000:2025/11/11 01:28:08.23 kernel uc_flags: 0x7, uc_link: 0x(nil)
00:0002:00000:00000:2025/11/11 01:28:08.23 kernel uc_sigmask: 0x416000 0xb 0x2 0x70031190
00:0002:00000:00000:2025/11/11 01:28:08.23 kernel uc_stack: ss_sp: 0x(nil), ss_size: 0x0, ss_flags: 0x2
00:0002:00000:00000:2025/11/11 01:28:08.23 kernel General Registers (uc_mcontext.gregs):
00:0002:00000:00000:2025/11/11 01:28:08.23 kernel PC : 0x00007b9d70031190 ()
00:0002:00000:00000:2025/11/11 01:28:08.23 kernel RAX : 0x00007b9d70031190 RBX : 0x000000014ae67dc0
00:0002:00000:00000:2025/11/11 01:28:08.23 kernel RCX : 0x00007b9d700439a0 RDX : 0x00007b9d70000078
00:0002:00000:00000:2025/11/11 01:28:08.23 kernel RBP : 0x000000014ae67f00 RSP : 0x000000014ae67a58
00:0002:00000:00000:2025/11/11 01:28:08.23 kernel R8 : 0x0000000000000001 R9 : 0x00007b9d7000dce0
00:0002:00000:00000:2025/11/11 01:28:08.23 kernel R10 : 0x0000000000000001 R11 : 0x00007b9d86455620
00:0002:00000:00000:2025/11/11 01:28:08.23 kernel R12 : 0x00007b9d70031190 R13 : 0x00007b9d70004970
00:0002:00000:00000:2025/11/11 01:28:08.23 kernel R14 : 0x00007b9d70031080 R15 : 0x00007b9d70030fe8
00:0002:00000:00000:2025/11/11 01:28:08.23 kernel RDI : (nil) RSI : (nil)
00:0002:00000:00000:2025/11/11 01:28:08.23 kernel RIP : 0x00007b9d70031190 CSGSFS : 0x002b000000000033
00:0002:00000:00000:2025/11/11 01:28:08.23 kernel TRAPNO : 0x000000000000000e ERR : 0x0000000000000015
00:0002:00000:00000:2025/11/11 01:28:08.23 kernel EFL : 0x0000000000010206
00:0002:00000:00000:2025/11/11 01:28:08.23 kernel **** end of signal context ****
00:0002:00000:00000:2025/11/11 01:28:08.24 kernel pc: 0x00000000012deabc pcstkwalk+0x46e()
00:0002:00000:00000:2025/11/11 01:28:08.24 kernel pc: 0x00000000012de48f ucstkgentrace+0x20f()
00:0002:00000:00000:2025/11/11 01:28:08.24 kernel pc: 0x00000000012db382 ucbacktrace+0x54()
00:0002:00000:00000:2025/11/11 01:28:08.24 kernel pc: 0x0000000001587225 terminate_process+0xe95()
00:0002:00000:00000:2025/11/11 01:28:08.24 kernel pc: 0x0000000001310144 kisignal+0x31b()
00:0002:00000:00000:2025/11/11 01:28:08.24 kernel pc: 0x00007b9d70031190 ()
00:0002:00000:00000:2025/11/11 01:28:08.24 kernel pc: 0x00000000011fc075 Snap::Validate()+0x35()
00:0002:00000:00000:2025/11/11 01:28:08.24 kernel pc: 0x00000000008ae3d0 SnapValidation+0x82()
00:0002:00000:00000:2025/11/11 01:28:08.24 kernel pc: 0x000000000158331c dsinit+0x25c()
00:0002:00000:00000:2025/11/11 01:28:08.24 kernel end of stack trace, kernel service process: kpid 196610
프로세스 종료가 안 된 상태로 컨테이너는 동작 중으로 나옵니다. 그래서 문제가 있다는 것을 저 로그를 보고 알게 되었는데요, 실제로 이 상태에서는 DB 서비스가 안 되므로 isql 테스트에도 오류가 발생합니다.
# isql -U sa -P myPassword -S MYSYBASE
The context allocation routine failed when it tried to load localization files!!
One or more following problems may caused the failure
Your sybase home directory is /opt/sybase. Check the environment variable SYBASE if it is not the one you want!
Using locale name "C.UTF-8" defined in environment variable LC_ALL
Locale name "C.UTF-8" doesn't exist in your /opt/sybase/locales/locales.dat file
An error occurred when attempting to allocate localization-related structures.
이에 대해 질문하신 분이 있었는데,
docker - SAP Adaptive Server Enterprise 컨테이너 실행
; https://www.sysnet.pe.kr/2/0/12193#15853
다행히 ^^ 그분이 링크한 이슈를 보면,
Sybase 16.0 DB is not getting setup properly on Docker Desktop for Mac #13
; https://github.com/DataGrip/docker-env/issues/13
이후 2022년 8월에 달린 덧글에
우회방법이 나옵니다. 정리하면, RUN_MYBASE 파일을 편집해야 하는데요,
$ cd /opt/sybase/ASE-16_0/install
$ cat RUN_MYSYBASE
#!/bin/sh
#
# SAP ASE page size (KB): 16k
# Master device path: /opt/sybase/data/master.dat
# Error log path: /opt/sybase/ASE-16_0/install/MYSYBASE.log
# Configuration file path: /opt/sybase/ASE-16_0/MYSYBASE.cfg
# Directory for shared memory files: /opt/sybase/ASE-16_0
# License properties file: /opt/sybase/ASE-16_0/sysam/MYSYBASE.properties
# Interfaces file directory: /opt/sybase
# SAP Adaptive Server Enterprise name: MYSYBASE
#
/opt/sybase/ASE-16_0/bin/dataserver \
-d/opt/sybase/data/master.dat \
-e/opt/sybase/ASE-16_0/install/MYSYBASE.log \
-c/opt/sybase/ASE-16_0/MYSYBASE.cfg \
-M/opt/sybase/ASE-16_0 \
-N/opt/sybase/ASE-16_0/sysam/MYSYBASE.properties \
-i/opt/sybase \
-sMYSYBASE \
-T11889 \
위와 같이 -T11889 옵션을 추가해 주면 문제가 되는 SnapValidation 체크를 끈다고 합니다. 물론, 문제도 해결 되고. ^^
[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]