Archived

This forum has been archived. Please start a new discussion on GitHub.

Terminate called on Ice::FileException in IcePy

Using Ice 3.2.1 the following test:
$ cat terminate.py 
#!/usr/bin/env python

from exceptions import Exception
import Ice, Glacier2

# Copied from omero.__init__.py
class client(object):

    def __init__(self, args, id = Ice.InitializationData()):

        self.ic = None
        ic = Ice.initialize(args,id)
        if not ic:
            raise Excecption("Improper initialization")
        self.ic = ic

import unittest
class TerminationTest(unittest.TestCase):

    def testNull(self):
        a = None
        c = client(a)

    def testEmpty(self):
        a = [""]
        c = client(a)

    def testGarbage(self):
        a = ["foo"]
        c = client(a)

    def testDevNull(self):
        a = ["--Ice.Config=/dev/null"]
        c = client(a)

    def testNonfile(self):
        a = ["--Ice.Config=abcdefghijklmnopqrstuvwxyz"]
        c = client(a)

if __name__ == '__main__':
    unittest.main()

causes the following core dump:
python2.4 terminate.py -v
testDevNull (__main__.TerminationTest) ... ok
testEmpty (__main__.TerminationTest) ... ok
testGarbage (__main__.TerminationTest) ... ok
testNonfile (__main__.TerminationTest) ... terminate called after throwing an instance of 'Ice::FileException'
  what():  N3Ice13FileExceptionE
Aborted (core dumped)

Comments

  • Backtrace
    #0  0x00002b2156558cab in raise () from /lib/libc.so.6
    #1  0x00002b215655a660 in abort () from /lib/libc.so.6
    #2  0x00002b21580cd4a4 in __gnu_cxx::__verbose_terminate_handler () from /usr/lib/libstdc++.so.6
    #3  0x00002b21580cb626 in ?? () from /usr/lib/libstdc++.so.6
    #4  0x00002b21580cb653 in std::terminate () from /usr/lib/libstdc++.so.6
    #5  0x00002b21580cb73a in __cxa_throw () from /usr/lib/libstdc++.so.6
    #6  0x00002b21573b796e in Ice::PropertiesI::load (this=0x81c140, file=@0x7fff5503d460) at PropertiesI.cpp:220
    #7  0x00002b21573b671a in Ice::PropertiesI::loadConfig (this=0x81c140) at PropertiesI.cpp:407
    #8  0x00002b21573b8852 in PropertiesI (this=0x81c140, args=@0x7fff5503d830, defaults=@0x7fff5503d800, converter=@0x7fff5503d920) at PropertiesI.cpp:306
    #9  0x00002b215735243e in Ice::createProperties (args=@0x7fff5503d830, defaults=@0x7fff5503d800, converter=@0x7fff5503d920) at Initialize.cpp:97
    #10 0x00002b2156ef40f5 in communicatorInit (self=0x2b2158782880, args=0x2b2158785f80) at Communicator.cpp:167
    #11 0x000000000044cbe1 in ?? ()
    #12 0x0000000000415690 in PyObject_Call ()
    #13 0x00000000004740c9 in PyEval_EvalFrame ()
    #14 0x0000000000478286 in PyEval_EvalCodeEx ()
    #15 0x000000000047650a in PyEval_EvalFrame ()
    #16 0x0000000000478286 in PyEval_EvalCodeEx ()
    #17 0x00000000004c0d13 in ?? ()
    #18 0x0000000000415690 in PyObject_Call ()
    #19 0x000000000041b3d0 in ?? ()
    #20 0x0000000000415690 in PyObject_Call ()
    #21 0x00000000004506b8 in ?? ()
    #22 0x000000000044cbe1 in ?? ()
    #23 0x0000000000415690 in PyObject_Call ()
    #24 0x00000000004740c9 in PyEval_EvalFrame ()
    #25 0x0000000000476ff6 in PyEval_EvalFrame ()
    #26 0x0000000000478286 in PyEval_EvalCodeEx ()
    #27 0x00000000004c0cac in ?? ()
    #28 0x0000000000415690 in PyObject_Call ()
    #29 0x0000000000475a80 in PyEval_EvalFrame ()
    #30 0x0000000000478286 in PyEval_EvalCodeEx ()
    #31 0x00000000004c0d13 in ?? ()
    #32 0x0000000000415690 in PyObject_Call ()
    #33 0x000000000041b3d0 in ?? ()
    #34 0x0000000000415690 in PyObject_Call ()
    #35 0x0000000000450a76 in ?? ()
    #36 0x0000000000415690 in PyObject_Call ()
    #37 0x00000000004740c9 in PyEval_EvalFrame ()
    #38 0x0000000000478286 in PyEval_EvalCodeEx ()
    #39 0x00000000004c0cac in ?? ()
    #40 0x0000000000415690 in PyObject_Call ()
    #41 0x0000000000475a80 in PyEval_EvalFrame ()
    #42 0x0000000000478286 in PyEval_EvalCodeEx ()
    #43 0x00000000004c0d13 in ?? ()
    #44 0x0000000000415690 in PyObject_Call ()
    #45 0x000000000041b3d0 in ?? ()
    #46 0x0000000000415690 in PyObject_Call ()
    #47 0x0000000000450a76 in ?? ()
    #48 0x0000000000415690 in PyObject_Call ()
    #49 0x00000000004740c9 in PyEval_EvalFrame ()
    #50 0x0000000000478286 in PyEval_EvalCodeEx ()
    #51 0x00000000004c0cac in ?? ()
    #52 0x0000000000415690 in PyObject_Call ()
    #53 0x0000000000475a80 in PyEval_EvalFrame ()
    #54 0x0000000000478286 in PyEval_EvalCodeEx ()
    #55 0x00000000004c0d13 in ?? ()
    #56 0x0000000000415690 in PyObject_Call ()
    #57 0x000000000041b3d0 in ?? ()
    #58 0x0000000000415690 in PyObject_Call ()
    #59 0x0000000000450a76 in ?? ()
    #60 0x0000000000415690 in PyObject_Call ()
    #61 0x00000000004740c9 in PyEval_EvalFrame ()
    #62 0x0000000000476ff6 in PyEval_EvalFrame ()
    #63 0x0000000000476ff6 in PyEval_EvalFrame ()
    #64 0x0000000000478286 in PyEval_EvalCodeEx ()
    #65 0x00000000004c0d13 in ?? ()
    #66 0x0000000000415690 in PyObject_Call ()
    #67 0x000000000041b3d0 in ?? ()
    #68 0x0000000000415690 in PyObject_Call ()
    #69 0x00000000004506b8 in ?? ()
    #70 0x000000000044cbe1 in ?? ()
    #71 0x0000000000415690 in PyObject_Call ()
    #72 0x00000000004740c9 in PyEval_EvalFrame ()
    #73 0x0000000000478286 in PyEval_EvalCodeEx ()
    #74 0x0000000000478332 in PyEval_EvalCode ()
    #75 0x000000000049cc92 in PyRun_FileExFlags ()
    #76 0x000000000049ce90 in PyRun_SimpleFileExFlags ()
    #77 0x000000000041263a in Py_Main ()
    #78 0x00002b21565458e4 in __libc_start_main () from /lib/libc.so.6
    #79 0x0000000000411b19 in _start ()
    
  • mes
    mes California
    Josh,

    Thanks for the bug report. This will be fixed in the next release.

    - Mark
  • Related?

    Just got informed about another termination from IcePy 3.2.1:
    08/27/07 14:26:27.042 warning: connection exception:
    TcpTransceiver.cpp:223: Ice::ConnectionLostException:
    connection lost: recv() returned zero
    local address = 127.0.0.1:51322
    remote address = 127.0.0.1:9998
    Terminated
    
    Could this be related? I haven't reproduced this one myself, but I can try to get a backtrace from the 3rd party if it's necessary.
  • mes
    mes California
    Hi Josh,

    I don't think that crash is related to the problem you reported. It would be great to see a backtrace.

    - Mark