Opened 10 years ago

Closed 10 years ago

#2380 closed defect (invalid)

osm2pgsql: crash when applying updates

Reported by: aubreyholland@… Owned by: Tom Hughes
Priority: major Milestone:
Component: utils Version:
Keywords: osm2pgsql Cc:

Description

I'm doing the minutely mapnik thing by feeding data from osmosis to osm2pgsql. With newer releases I'm getting a crash with the following stack trace when I do that:

#0 0x0000000000746b75 in raise () #1 0x00000000006ebfd0 in abort () #2 0x000000000070728b in libc_message () #3 0x000000000070f6a6 in _int_free () #4 0x00000000007131e7 in free () #5 0x000000000051101c in geos::geom::Polygon::apply_ro (this=0x1c9ba110, filter=0x7fff8a2feef0) at Polygon.cpp:393 #6 0x000000000040e725 in get_wkt_split (nodes=<value optimized out>, count=5, polygon=1, split_at=100000) at build_geometry.cpp:120 #7 0x000000000040a359 in pgsql_out_way (id=23075536, tags=0x7fff8a2ff080, nodes=0x1c9ee710, count=5, exists=<value optimized out>) at output-pgsql.c:641 #8 0x0000000000402c9c in pgsql_iterate_ways (callback=0x40a280 <pgsql_out_way>) at middle-pgsql.c:836 #9 0x00000000004088fb in pgsql_out_stop () at output-pgsql.c:1165 #10 0x0000000000406351 in main (argc=12, argv=0x7fff8a2ff508) at osm2pgsql.c:776

I noticed that there were some recent changes to get_wkt_split and wonder if that's the problem. This is the end of the log, including the crash:

Going over pending ways processing way (7k)* glibc detected * ./osm2pgsql: free(): invalid pointer: 0x00007fff8a2feef0 * ======= Backtrace: ========= [0x70f6a6] [0x7131e7] [0x51101c] [0x40e725] [0x40a359] [0x402c9c] [0x4088fb] [0x406351] [0x6e4490] [0x4001b9] ======= Memory map: ======== 00400000-00946000 r-xp 00000000 00:14 1763069 /tmp/osm2pgsql 00b46000-00b88000 rw-p 00546000 00:14 1763069 /tmp/osm2pgsql 00b88000-051d7000 rw-p 00b88000 00:00 0 1c99f000-1cd55000 rw-p 1c99f000 00:00 0 [heap] 3af6600000-3af661c000 r-xp 00000000 fd:00 196613 /lib64/ld-2.5.so 3af661c000-3af681b000 ---p 0001c000 fd:00 196613 /lib64/ld-2.5.so 3af681b000-3af681c000 r--p 0001b000 fd:00 196613 /lib64/ld-2.5.so 3af681c000-3af681d000 rw-p 0001c000 fd:00 196613 /lib64/ld-2.5.so 3af6a00000-3af6b4c000 r-xp 00000000 fd:00 196620 /lib64/libc-2.5.so 3af6b4c000-3af6d4c000 ---p 0014c000 fd:00 196620 /lib64/libc-2.5.so 3af6d4c000-3af6d50000 r--p 0014c000 fd:00 196620 /lib64/libc-2.5.so 3af6d50000-3af6d51000 rw-p 00150000 fd:00 196620 /lib64/libc-2.5.so 3af6d51000-3af6d56000 rw-p 3af6d51000 00:00 0 3afc200000-3afc211000 r-xp 00000000 fd:00 196667 /lib64/libresolv-2.5.so 3afc211000-3afc411000 ---p 00011000 fd:00 196667 /lib64/libresolv-2.5.so 3afc411000-3afc412000 r--p 00011000 fd:00 196667 /lib64/libresolv-2.5.so 3afc412000-3afc413000 rw-p 00012000 fd:00 196667 /lib64/libresolv-2.5.so 3afc413000-3afc415000 rw-p 3afc413000 00:00 0 2ae80ff9e000-2ae80ffa8000 r-xp 00000000 fd:00 196635 /lib64/libnss_files-2.5.so 2ae80ffa8000-2ae8101a7000 ---p 0000a000 fd:00 196635 /lib64/libnss_files-2.5.so 2ae8101a7000-2ae8101a8000 r--p 00009000 fd:00 196635 /lib64/libnss_files-2.5.so 2ae8101a8000-2ae8101a9000 rw-p 0000a000 fd:00 196635 /lib64/libnss_files-2.5.so 2ae8101a9000-2ae8102a9000 rw-p 2ae8101a9000 00:00 0 2ae8102b6000-2ae8102ba000 r-xp 00000000 fd:00 196633 /lib64/libnss_dns-2.5.so 2ae8102ba000-2ae8104b9000 ---p 00004000 fd:00 196633 /lib64/libnss_dns-2.5.so 2ae8104b9000-2ae8104ba000 r--p 00003000 fd:00 196633 /lib64/libnss_dns-2.5.so 2ae8104ba000-2ae8104bb000 rw-p 00004000 fd:00 196633 /lib64/libnss_dns-2.5.so 2ae8104bb000-2ae81066d000 rw-p 2ae8104bb000 00:00 0 2ae814000000-2ae81403b000 rw-p 2ae814000000 00:00 0 2ae81403b000-2ae818000000 ---p 2ae81403b000 00:00 0 7fff8a2eb000-7fff8a300000 rw-p 7ffffffea000 00:00 0 [stack] ffffffffff600000-ffffffffffe00000 ---p 00000000 00:00 0 [vdso] Aborted (core dumped)

Change History (1)

comment:1 Changed 10 years ago by aubreyholland@…

Resolution: invalid
Status: newclosed

Sorry, this seems to have been a problem with how I was compiling it.

Note: See TracTickets for help on using tickets.