[PolyORB-users] Storage error with simple server
Frédéric Praca
frederic.praca at free.fr
Wed Nov 7 23:11:47 CET 2018
Le 06/11/2018 à 15:56, Thomas Quinot a écrit :
> * Frédéric Praca, 2018-11-01 :
>
>> I have a PolyORB server which is running for a few minutes then fails
>> with the following
>>
>> polyorb.orb: ORB.Run got exception:
>> polyorb.orb: raised STORAGE_ERROR : s-intman.adb:136 explicit raise
>>
>> CBSG server raised raised STORAGE_ERROR : s-intman.adb:136 explicit raise
>>
>>
>> raised STORAGE_ERROR : s-intman.adb:136 explicit raise
>>
>>
>> It's using the Thread_Per_Session_Server setup and is quite simple.
>>
>> Is there a way to investigate the problem or does anyone know what is
>> going on?
> Run the server under gdb, and when it breaks on segfault, print a
> backtrace to identify the origin of it.
>
Hello Thomas,
here is the backtrace.7Thread 1 "server" received signal SIGSEGV,
Segmentation fault.
polyorb.annotations.get_note_if_present (np=..., n=...) at
/home/fred/Dev/Ada/PolyORB/src/polyorb-annotations.adb:83
(gdb) bt
#0 polyorb.annotations.get_note_if_present (np=..., n=...) at
/home/fred/Dev/Ada/PolyORB/src/polyorb-annotations.adb:83
#1 0x000000000056e469 in polyorb.annotations.get_note (np=..., n=...)
at /home/fred/Dev/Ada/PolyORB/src/polyorb-annotations.adb:106
#2 0x00000000005c4256 in
polyorb.orb.thread_per_session.handle_request_execution (p=<optimized
out>, orb=<optimized out>, rj=0xa4e110, <pL>=<optimized out>,
<rjL>=<optimized out>) at
/home/fred/Dev/Ada/PolyORB/src/polyorb-orb-thread_per_session.adb:219
#3 0x00000000005ca061 in polyorb.orb.handle_message (orb=0xa253b0,
msg=..., <orbL>=0) at /home/fred/Dev/Ada/PolyORB/src/polyorb-orb.adb:1261
#4 0x000000000059baff in polyorb.components.emit
(port=port at entry=0xa253b0, msg=...) at
/home/fred/Dev/Ada/PolyORB/src/polyorb-components.adb:104
#5 0x000000000059bc69 in polyorb.components.emit_no_reply
(port=0xa253b0, msg=...) at
/home/fred/Dev/Ada/PolyORB/src/polyorb-components.adb:121
#6 0x00000000005c5a05 in polyorb.orb.queue_request_to_handler
(orb=<optimized out>, msg=..., <orbL>=<orbL>@entry=0) at
/home/fred/Dev/Ada/PolyORB/src/polyorb-orb.adb:1465
#7 0x0000000000569e1a in polyorb.protocols.giop.queue_request
(sess=sess at entry=0xa4e350, req=req at entry=0xa4eaf0, req_id=3,
<sessL>=<sessL>@entry=0) at
/home/fred/Dev/Ada/PolyORB/src/giop/polyorb-protocols-giop.adb:1114
#8 0x0000000000563fec in
polyorb.protocols.giop.giop_1_2.process_request (<sL>=0, s=0xa4e350) at
/home/fred/Dev/Ada/PolyORB/src/giop/polyorb-protocols-giop-giop_1_2.adb:624
#9 polyorb.protocols.giop.giop_1_2.process_message (implem=<optimized
out>, s=0xa4e350, <implemL>=<optimized out>, <sL>=<optimized out>) at
/home/fred/Dev/Ada/PolyORB/src/giop/polyorb-protocols-giop-giop_1_2.adb:244
#10 0x0000000000567d8f in polyorb.protocols.giop.handle_data_indication
(sess=0xa4e350, data_amount=<optimized out>, error=...,
<sessL>=<optimized out>) at
/home/fred/Dev/Ada/PolyORB/src/giop/polyorb-protocols-giop.adb:236
#11 0x00000000005ef2e8 in polyorb.protocols.handle_message
(sess=0xa4e350, s=..., <sessL>=0) at
/home/fred/Dev/Ada/PolyORB/src/polyorb-protocols.adb:105
#12 0x000000000059baff in polyorb.components.emit (port=0xa4e350,
msg=...) at /home/fred/Dev/Ada/PolyORB/src/polyorb-components.adb:104
#13 0x00000000005ab6d5 in polyorb.filters.slicers.handle_message
(f=0xa542c0, s=..., <fL>=<optimized out>) at
/home/fred/Dev/Ada/PolyORB/src/polyorb-filters-slicers.adb:143
#14 0x000000000059baff in polyorb.components.emit (port=0xa542c0,
msg=...) at /home/fred/Dev/Ada/PolyORB/src/polyorb-components.adb:104
#15 0x0000000000633227 in polyorb.transport.connected.handle_message
(te=0xa50880, msg=..., <teL>=<optimized out>) at
/home/fred/Dev/Ada/PolyORB/src/polyorb-transport-connected.adb:154
#16 0x000000000059baff in polyorb.components.emit (port=0xa50880,
msg=...) at /home/fred/Dev/Ada/PolyORB/src/polyorb-components.adb:104
#17 0x0000000000635301 in polyorb.transport.handlers.handle_event
(h=0xa508e0, <hL>=<optimized out>) at
/home/fred/Dev/Ada/PolyORB/src/polyorb-transport-handlers.adb:65
#18 0x00000000005c7516 in polyorb.orb.perform_work (<orbL>=<optimized
out>, this_task=..., orb=<optimized out>) at
/home/fred/Dev/Ada/PolyORB/src/polyorb-orb.adb:275
#19 polyorb.orb.run (orb=0xa253b0, request=<optimized out>,
may_exit=<optimized out>, <orbL>=<optimized out>) at
/home/fred/Dev/Ada/PolyORB/src/polyorb-orb.adb:519
#20 0x0000000000407286 in server ()
FYI, the code is working well with Thread_Per_Request_Server setup.
Regards
Fred
More information about the PolyORB-users
mailing list