Results 1 to 9 of 9

Thread: Compiling Ice 3.3.0 with Optimize=yes get runtime error

  1. #1
    paolo is offline Registered User
    Name: paolo volpi
    Organization: tvblob
    Project: tvblob blobbox
    Join Date
    Aug 2007
    Posts
    22

    Compiling Ice 3.3.0 with Optimize=yes get runtime error

    Hi,
    i'm compiling Ice 3.3.0 on an Ubuntu 8.04 Intel Xeon Quad Core 64bit machine.
    With OPTIMIZE flag disabled (as default) all test are passed, if I enable OPTIMIZE,
    ./cpp/allTests.py fails:

    *** running tests 10/61 in /usr/src/Ice-3.3.0/cpp/test/Ice/operations
    *** configuration: Default
    *** test started: 05/22/08 16:52:52
    tests with regular server.
    starting server... ok
    starting client... ok
    testing twoway operations... Bus error
    *** glibc detected *** /usr/src/Ice-3.3.0/cpp/test/Ice/operations/client: malloc(): memory corruption (fast): 0x00000000006c1250 ***
    ======= Backtrace: =========
    /lib/libc.so.6[0x7fa0c3bc93b2]
    /lib/libc.so.6(__libc_malloc+0x90)[0x7fa0c3bca360]
    /usr/lib/libstdc++.so.6(_Znwm+0x1d)[0x7fa0c44095ed]
    /usr/src/Ice-3.3.0/cpp/lib/libIce.so.33(_ZNK3Ice23ConnectionLostException9ice _cloneEv+0x13)[0x7fa0c4dffa03]
    /usr/src/Ice-3.3.0/cpp/lib/libIce.so.33(_ZN3Ice11ConnectionI8setStateENS0_5St ateERKNS_14LocalExceptionE+0x7e)[0x7fa0c4db2dee]
    /usr/src/Ice-3.3.0/cpp/lib/libIce.so.33(_ZN3Ice11ConnectionI9exceptionERKNS_1 4LocalExceptionE+0xc2)[0x7fa0c4db4592]
    /usr/src/Ice-3.3.0/cpp/lib/libIce.so.33(_ZN11IceInternal10ThreadPool3runEv+0x 1d20)[0x7fa0c4ed0060]
    /usr/src/Ice-3.3.0/cpp/lib/libIce.so.33(_ZN11IceInternal10ThreadPool18EventHa ndlerThread3runEv+0x52)[0x7fa0c4ed01e2]
    /usr/src/Ice-3.3.0/cpp/lib/libIceUtil.so.33[0x7fa0c4aa2722]
    /lib/libpthread.so.0[0x7fa0c485f3f7]
    /lib/libc.so.6(clone+0x6d)[0x7fa0c3c2bb2d]
    ======= Memory map: ========
    00400000-0049f000 r-xp 00000000 09:01 118850 /usr/src/Ice-3.3.0/cpp/test/Ice/operations/client
    0069e000-006b9000 rw-p 0009e000 09:01 118850 /usr/src/Ice-3.3.0/cpp/test/Ice/operations/client
    006b9000-006da000 rw-p 006b9000 00:00 0 [heap]
    41f33000-41f34000 ---p 41f33000 00:00 0
    41f34000-42734000 rw-p 41f34000 00:00 0
    42734000-42735000 ---p 42734000 00:00 0
    42735000-42f35000 rw-p 42735000 00:00 0
    42f35000-42f36000 ---p 42f35000 00:00 0
    42f36000-43736000 rw-p 42f36000 00:00 0
    43736000-43737000 ---p 43736000 00:00 0
    43737000-43f37000 rw-p 43737000 00:00 0
    43f37000-43f38000 ---p 43f37000 00:00 0
    43f38000-44738000 rw-p 43f38000 00:00 0
    7fa0bc000000-7fa0bc021000 rw-p 7fa0bc000000 00:00 0
    7fa0bc021000-7fa0c0000000 ---p 7fa0bc021000 00:00 0
    7fa0c3740000-7fa0c3742000 r-xp 00000000 09:01 33896 /lib/libdl-2.7.so
    7fa0c3742000-7fa0c3942000 ---p 00002000 09:01 33896 /lib/libdl-2.7.so
    7fa0c3942000-7fa0c3944000 rw-p 00002000 09:01 33896 /lib/libdl-2.7.so
    7fa0c3944000-7fa0c3953000 r-xp 00000000 09:01 4182 /lib/libbz2.so.1.0.4
    7fa0c3953000-7fa0c3b52000 ---p 0000f000 09:01 4182 /lib/libbz2.so.1.0.4
    7fa0c3b52000-7fa0c3b54000 rw-p 0000e000 09:01 4182 /lib/libbz2.so.1.0.4
    7fa0c3b54000-7fa0c3cac000 r-xp 00000000 09:01 33892 /lib/libc-2.7.so
    7fa0c3cac000-7fa0c3eac000 ---p 00158000 09:01 33892 /lib/libc-2.7.so
    7fa0c3eac000-7fa0c3eaf000 r--p 00158000 09:01 33892 /lib/libc-2.7.so
    7fa0c3eaf000-7fa0c3eb1000 rw-p 0015b000 09:01 33892 /lib/libc-2.7.so
    7fa0c3eb1000-7fa0c3eb6000 rw-p 7fa0c3eb1000 00:00 0
    7fa0c3eb6000-7fa0c3ec3000 r-xp 00000000 09:01 33202 /lib/libgcc_s.so.1
    7fa0c3ec3000-7fa0c40c3000 ---p 0000d000 09:01 33202 /lib/libgcc_s.so.1
    7fa0c40c3000-7fa0c40c4000 rw-p 0000d000 09:01 33202 /lib/libgcc_s.so.1
    7fa0c40c4000-7fa0c4144000 r-xp 00000000 09:01 33897 /lib/libm-2.7.so
    7fa0c4144000-7fa0c4343000 ---p 00080000 09:01 33897 /lib/libm-2.7.so
    7fa0c4343000-7fa0c4345000 rw-p 0007f000 09:01 33897 /lib/libm-2.7.so
    7fa0c4345000-7fa0c4434000 r-xp 00000000 09:01 33211 /usr/lib/libstdc++.so.6.0.9
    7fa0c4434000-7fa0c4634000 ---p 000ef000 09:01 33211 /usr/lib/libstdc++.so.6.0.9
    7fa0c4634000-7fa0c463a000 r--p 000ef000 09:01 33211 /usr/lib/libstdc++.so.6.0.9
    7fa0c463a000-7fa0c463d000 rw-p 000f5000 09:01 33211 /usr/lib/libstdc++.so.6.0.9
    7fa0c463d000-7fa0c4650000 rw-p 7fa0c463d000 00:00 0
    7fa0c4650000-7fa0c4658000 r-xp 00000000 09:01 33910 /lib/librt-2.7.so
    7fa0c4658000-7fa0c4857000 ---p 00008000 09:01 33910 /lib/librt-2.7.so
    7fa0c4857000-7fa0c4859000 rw-p 00007000 09:01 33910 /lib/librt-2.7.so
    7fa0c4859000-7fa0c486f000 r-xp 00000000 09:01 33908 /lib/libpthread-2.7.so
    7fa0c486f000-7fa0c4a6f000 ---p 00016000 09:01 33908 /lib/libpthread-2.7.so
    7fa0c4a6f000-7fa0c4a71000 rw-p 00016000 09:01 33908 /lib/libpthread-2.7.so
    7fa0c4a71000-7fa0c4a75000 rw-p 7fa0c4a71000 00:00 0
    7fa0c4a75000-7fa0c4ab1000 r-xp 00000000 09:01 66411 /usr/src/Ice-3.3.0/cpp/lib/libIceUtil.so.3.3.0
    7fa0c4ab1000-7fa0c4cb1000 ---p 0003c000 09:01 66411 /usr/src/Ice-3.3.0/cpp/lib/libIceUtil.so.3.3.0
    7fa0c4cb1000-7fa0c4cb3000 rw-p 0003c000 09:01 66411 /usr/src/Ice-3.3.0/cpp/lib/libIceUtil.so.3.3.0
    7fa0c4cb3000-7fa0c4f48000 r-xp 00000000 09:01 118475 /usr/src/Ice-3.3.0/cpp/lib/libIce.so.3.3.0
    7fa0c4f48000-7fa0c5147000 ---p 00295000 09:01 118475 /usr/src/Ice-3.3.0/cpp/lib/libIce.so.3.3.0
    7fa0c5147000-7fa0c516b000 rw-p 00294000 09:01 118475 /usr/src/Ice-3.3.0/cpp/lib/libIce.so.3.3.0
    7fa0c516b000-7fa0c516f000 rw-p 7fa0c516b000 00:00 0
    7fa0c516f000-7fa0c518c000 r-xp 00000000 09:01 33889 /lib/ld-2.7.so
    7fa0c537a000-7fa0c537f000 rw-p 7fa0c537a000 00:00 0
    7fa0c5388000-7fa0c538c000 rw-p 7fa0c5388000 00:00 0
    7fa0c538c000-7fa0c538e000 rw-p 0001d000 09:01 33889 /lib/ld-2.7.so
    7fffcd379000-7fffcd38e000 rw-p 7ffffffea000 00:00 0 [stack]
    7fffcd3fe000-7fffcd400000 r-xp 7fffcd3fe000 00:00 0 [vdso]
    ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]
    Aborted
    ('test in /usr/src/Ice-3.3.0/cpp/test/Ice/operations failed with exit status', 256)

    I'm using mcpp 2.7 patched as suggested
    Last edited by paolo; 05-22-2008 at 11:04 AM. Reason: more info

  2. #2
    matthew's Avatar
    matthew is offline ZeroC Staff
    Name: Matthew Newhook
    Organization: ZeroC, Inc.
    Project: Internet Communications Engine
    Join Date
    Feb 2003
    Location
    NL, Canada
    Posts
    1,458
    What version of gcc are you using? It certainly works with optimization on our officially supported versions of Linux (for example, gcc 4.1.2 on SLES 10 x64).

  3. #3
    paolo is offline Registered User
    Name: paolo volpi
    Organization: tvblob
    Project: tvblob blobbox
    Join Date
    Aug 2007
    Posts
    22
    gcc (GCC) 4.2.3 (Ubuntu 4.2.3-2ubuntu7)

  4. #4
    matthew's Avatar
    matthew is offline ZeroC Staff
    Name: Matthew Newhook
    Organization: ZeroC, Inc.
    Project: Internet Communications Engine
    Join Date
    Feb 2003
    Location
    NL, Canada
    Posts
    1,458
    Ok, its sounds like later versions of gcc have something broken in their optimizer! We'll take a look.

  5. #5
    minifat is offline Registered User
    Name: Yan Yaqin
    Organization: CEPRI
    Project: data interface
    Join Date
    Jul 2004
    Location
    Beijing, China
    Posts
    40
    After running allTests.py, it seems test 10 is passed in my environment, but test 45 faild

    [root@localhost cpp]# gcc -v
    Using built-in specs.
    Target: i686-pc-linux-gnu
    Configured with: ../gcc-4.3.0/configure --prefix=/opt --enable-shared --enable-threads=posix --disable-checking --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-languages=c,c++
    Thread model: posix
    gcc version 4.3.0 (GCC)


    starting icestorm replicas... 0 1 2 ok
    creating topic... ok
    running subscriber... ok
    running publisher... ok
    stopping replica 2 (0, 1 running)... ok
    starting 2, stopping 0 (1, 2 running)... ok
    starting 0, stopping 1 (0, 2 running)... ok
    starting 1 (all running)... ok
    stopping replica 2 (0, 1 running)... ok
    starting 2, stopping 0 (1, 2 running)... ok
    starting 0, stopping 1 (0, 2 running)... ok
    starting 1 (all running)... ok
    stopping replica 2 (0, 1 running)... ok
    starting 2, stopping 0 (1, 2 running)... ok
    starting 0, stopping 1 (0, 2 running)... ok
    starting 1 (all running)... ok
    stopping publisher... ok
    stopping replicas... ok
    stopping subscriber... ok
    publisher published 3814 events, subscriber received 3814 events

    *** running tests 45/61 in /root/Ice-3.3.0/cpp/test/FreezeScript/dbmap
    *** configuration: Default
    *** test started: 06/04/08 18:23:50
    testing error detection... failed! (1)
    ('test in /root/Ice-3.3.0/cpp/test/FreezeScript/dbmap failed with exit status', 256)

  6. #6
    matthew's Avatar
    matthew is offline ZeroC Staff
    Name: Matthew Newhook
    Organization: ZeroC, Inc.
    Project: Internet Communications Engine
    Join Date
    Feb 2003
    Location
    NL, Canada
    Posts
    1,458
    Do the other tests all work? You can skip that test with

    ./allTests.py --start=46

    What version of BerkeleyDB are you using?

  7. #7
    minifat is offline Registered User
    Name: Yan Yaqin
    Organization: CEPRI
    Project: data interface
    Join Date
    Jul 2004
    Location
    Beijing, China
    Posts
    40
    ./allTests.py --start=46 finished normally
    and the Berkeley version is as the followings;
    [root@localhost ~]# rpm -qi db4
    Name : db4 Relocations: (not relocatable)
    Version : 4.3.29 Vendor: CentOS
    Release : 9.fc6 Build Date: Sun Jan 7 17:45:01 2007
    Install Date: Tue Jun 5 04:13:50 2007 Build Host: builder1.centos.org
    Group : System Environment/Libraries Source RPM: db4-4.3.29-9.fc6.src.rpm
    Size : 2123554 License: GPL
    Signature : DSA/SHA1, Wed Apr 4 08:20:46 2007, Key ID a8a447dce8562897
    URL : berkeley-db.html
    Summary : The Berkeley DB database library (version 4) for C.
    Description :
    The Berkeley Database (Berkeley DB) is a programmatic toolkit that
    provides embedded database support for both traditional and
    client/server applications. The Berkeley DB includes B+tree, Extended
    Linear Hashing, Fixed and Variable-length record access methods,
    transactions, locking, logging, shared memory caching, and database
    recovery. The Berkeley DB supports C, C++, Java, and Perl APIs. It is
    used by many applications, including Python and Perl, so this should
    be installed on all systems.
    Last edited by minifat; 06-06-2008 at 05:27 AM.

  8. #8
    bernard's Avatar
    bernard is offline ZeroC Staff
    Name: Bernard Normier
    Organization: ZeroC, Inc.
    Project: Ice
    Join Date
    Feb 2003
    Location
    Palm Beach Gardens, FL
    Posts
    1,294
    Please try with Berkeley DB 4.6; that's the only Berkeley DB version we support and test with.

    You should be able to build the DB 4.6 RPMs for your distribution using the Berkeley DB 4.6.21 source RPM on our download page.

    Cheers,
    Bernard
    Bernard Normier
    ZeroC, Inc.

  9. #9
    xdm's Avatar
    xdm
    xdm is offline ZeroC Staff
    Name: Jose Gutierrez de la Concha
    Organization: ZeroC, Inc.
    Project: Ice Developer
    Join Date
    Sep 2003
    Location
    La Coruña, Spain
    Posts
    588
    Hi,

    I have run the complete test suite under ubuntu gcc-4.2.3 and not found any
    problems.

    Ice-3.3.0 was compiled from sources with OPTIMIZED enabled and all dependencies where compiled from the ZeroC third party packages.

    Here is the system configuration i used to run test suite:
    Code:
    root@ubuntu:/home/ubuntu/src/Ice-3.3.0/cpp# gcc -v
    Using built-in specs.
    Target: i486-linux-gnu
    Configured with: ../src/configure -v
    --enable-languages=c,c++,fortran,objc,obj-c++,treelang --prefix=/usr
    --enable-shared --with-system-zlib --libexecdir=/usr/lib
    --without-included-gettext --enable-threads=posix --enable-nls
    --with-gxx-include-dir=/usr/include/c++/4.2 --program-suffix=-4.2
    --enable-clocale=gnu --enable-libstdcxx-debug --enable-objc-gc --enable-mpfr
    --enable-targets=all --enable-checking=release --build=i486-linux-gnu
    --host=i486-linux-gnu --target=i486-linux-gnu
    Thread model: posix
    gcc version 4.2.3 (Ubuntu 4.2.3-2ubuntu7)
    root@ubuntu:/home/ubuntu/src/Ice-3.3.0/cpp# echo $OPTIMIZE
    yes
    root@ubuntu:/home/ubuntu/src/Ice-3.3.0/cpp# echo $LD_LIBRARY_PATH
    :/opt/db/lib:/opt/mcpp/lib:/opt/bzip2/lib:/opt/expat/lib:/opt/openssl/lib
    root@ubuntu:/home/ubuntu/src/Ice-3.3.0/cpp# uname -a
    Linux ubuntu 2.6.24-17-generic #1 SMP Thu May 1 14:31:33 UTC 2008 i686
    GNU/Linux
    root@ubuntu:/home/ubuntu/src/Ice-3.3.0/cpp#
    Regards,
    José

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Similar Threads

  1. Freeze runtime error
    By ngambek2003 in forum Help Center
    Replies: 4
    Last Post: 09-29-2009, 09:49 PM
  2. runtime error in IceRuby
    By ctennis in forum Bug Reports
    Replies: 1
    Last Post: 05-14-2007, 09:42 AM
  3. Compiling Ice-3 error
    By orphean in forum Help Center
    Replies: 13
    Last Post: 01-10-2006, 06:04 AM
  4. Replies: 3
    Last Post: 08-29-2005, 11:08 PM
  5. a runtime error
    By fw_csha in forum Help Center
    Replies: 10
    Last Post: 09-29-2004, 10:29 AM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •