Support #355
Feature #328: Enduro/X Version 6.0 master task
Oracle Solaris Posix Shared API may hang
Status: | Closed | Start date: | 11/22/2018 | |
---|---|---|---|---|
Priority: | Normal (Code 4) | Due date: | ||
Assignee: | - | % Done: | 100% | |
Category: | - | |||
Target version: | - |
Description
-------- ----- -------- -------- ----- ----- -- ---- ---- ---- ---- - ---- ----- TESTSV1 2 Test exiting with: 255 Setting domain 1 Killing [atmi.sv59] ... Failed * Shared resources opened... * Enduro/X back-end (ndrxd) is not running WARNING ! `ndrxd' daemon is in `not started', use -f to force shutdown! test059_pq/run.sh: line 72: 9887 Terminated xadmin down -y Killing [atmiclt59] ... Failed ~/endurox/atmitest ************ FINISHED TEST: [test059_pq/run.sh] with 65280 ************ /export/home/user1/endurox/atmitest/atmiunit1.c:477: Failure: atmi_test_all -> test059_pq [ret] should be [0] but was [65280] Completed "atmi_test_all": 52 passes, 6 failures, 0 exceptions. Completed "main": 52 passes, 6 failures, 0 exceptions. ---- Leak info ---- -------------------
user1@solaris11:~/endurox/atmitest/test048_cache$ cat ndrxd-dom3.log N:NDRX:2:ad5a7960:27370:00000001:000:20181121:232229437:_svqshm_init:svqshm.c:0231:Missing config key NDRX_SVQREADERSMAX - defaulting to 50 N:NDRX:2:ad5a7960:27370:00000001:000:20181121:232229437:_svqshm_init:svqshm.c:0244:Missing config key NDRX_MSGQUEUESMAX - defaulting to 20000 N:NDRX:2:ad5a7960:27370:00000001:000:20181121:232229437:drx_shm_open:td_shm.c:0124:Shared memory exists [/dom3,shm,p2s] - attaching N:NDRX:2:ad5a7960:27370:00000001:000:20181121:232229437:drx_shm_open:td_shm.c:0124:Shared memory exists [/dom3,shm,s2p] - attaching N:NDRX:2:ad5a7960:27370:00000001:000:20181121:232229437:drx_sem_open:td_sem.c:0262:Semaphore exists [56001] - attaching N:NDRX:2:ad5a7960:27370:00000001:000:20181121:232229441:x_svqshm_ctl:svqshm.c:1253:Queue not found [/dom3,sys,bg,ndrxd]/-1 N:NDRX:2:ad5a7960:27370:00000001:000:20181121:232229442:d_open_queue:cessor.c:0199:Queue [/dom3,sys,bg,ndrxd] opened! N:NDRX:2:ad5a7960:27370:00000001:000:20181121:232229442:main_init :/ndrxd.c:0311:Using PID file [/tmp/ndrxd-dom3.pid] N:NDRX:2:ad5a7960:27370:00000001:000:20181121:232229442:main_init :/ndrxd.c:0326:Using QPath [/dev/mqueue] N:NDRX:3:ad5a7960:27370:00000001:000:20181121:232229442:drx_sem_open:td_sem.c:0287:Semaphore for key 56000 open, id: 771751989 N:NDRX:2:ad5a7960:27370:00000001:000:20181121:232333453:drx_shm_open:td_shm.c:0124:Shared memory exists [/dom3,shm,srvinfo] - attaching N:NDRX:2:ad5a7960:27370:00000001:000:20181121:232437467:x_shm_attach:td_shm.c:0189:Failed to attach shm [/dom3,shm,srvinfo]: File exists N:NDRX:2:ad5a7960:27370:00000001:000:20181121:232437467:main_init :/ndrxd.c:0387:Failed to open shared memory segments! N:NDRX:2:ad5a7960:27370:00000001:000:20181121:232437467:main :/ndrxd.c:0469:ndrxd - INIT FAILED! N:NDRX:2:ad5a7960:27370:00000001:000:20181121:232437467:x_sem_remove:td_sem.c:0308:Removing semid: 771751989 N:NDRX:2:ad5a7960:27370:00000001:000:20181121:232437467:rx_shm_close:td_shm.c:0246:cannot close shm [/dom3,shm,srvinfo] as fd is -1 N:NDRX:2:ad5a7960:27370:00000001:000:20181121:232437467:rx_shm_close:td_shm.c:0246:cannot close shm [/dom3,shm,svcinfo] as fd is -1 N:NDRX:2:ad5a7960:27370:00000001:000:20181121:232437467:rx_shm_close:td_shm.c:0246:cannot close shm [/dom3,shm,brinfo] as fd is -1 N:NDRX:2:ad5a7960:27370:00000001:000:20181121:232541476:x_shm_remove:td_shm.c:0266:Failed to remove: [/dom3,shm,srvinfo]: File exists N:NDRX:2:ad5a7960:27370:00000001:000:20181121:232541476:x_shm_remove:td_shm.c:0266:Failed to remove: [/dom3,shm,svcinfo]: No such file or directory N:NDRX:2:ad5a7960:27370:00000001:000:20181121:232541476:x_shm_remove:td_shm.c:0266:Failed to remove: [/dom3,shm,brinfo]: No such file or directory N:NDRX:2:ad5a7960:27370:00000001:000:20181121:232541479:x_sem_remove:td_sem.c:0308:Removing semid: 771751988 N:NDRX:2:ad5a7960:27370:00000001:000:20181121:232541479:main :/ndrxd.c:0486:exiting -1 user1@solaris11:~/endurox/atmitest/test048_cache$
/* Attach to shared memory block */ shm->fd = shm_open(shm->path, O_RDWR, S_IRWXU | S_IRWXG); if (shm->fd < 0) { NDRX_LOG(log_error, "Failed to attach shm [%s]: %s", shm->path, strerror(errno)); EXFAIL_OUT(ret); }
So we try to attach to existing segment, but shm_open reports that it already exists... Seems like bug in shm_open() in Oracle implementation.
History
#1 Updated by Madars over 5 years ago
Also it tries to delete the SHM and reports that file exists...
So seems that better we move to System V shared memory model and we could use IPC KEY for segmenting the memory objects.
#3 Updated by Madars over 5 years ago
- Status changed from New to Resolved
- % Done changed from 0 to 100
- Parent task set to #328
#4 Updated by Madars over 5 years ago
- Status changed from Resolved to Closed