mapnik/mapnik — Issue #951: race condition or memory corruption in csv plugin
Author: springmeyer
Created: 2011-11-16 01:18:26+00:00
State: open

Or at least that is what it looks like. This can be replicated by loading multiple csv file references into tilemill (which then, after saving kicks off several asynchrnous map loads)

```

#0 0x00007fff92f1ace2 in __pthread_kill ()
#1 0x00007fff8d2147d2 in pthread_kill ()
#2 0x00007fff8d205a7a in abort ()
#3 0x00007fff8d26484c in free ()
#4 0x00007fff5fc0e634 in __dyld__ZNSt6vectorIPK11ImageLoaderSaIS2_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS2_S4_EERKS2_ ()
#5 0x00007fff5fc0e23b in __dyld__ZN11ImageLoader19addDynamicReferenceEPKS_ ()
#6 0x00007fff5fc1743e in __dyld__ZN26ImageLoaderMachOCompressed11resolveFlatERKN11ImageLoader11LinkContextEPKcbbPPKS0_ ()
#7 0x00007fff5fc17578 in __dyld__ZN26ImageLoaderMachOCompressed7resolveERKN11ImageLoader11LinkContextEPKchiPPKS0_PNS_10LastLookupEb ()
#8 0x00007fff5fc17810 in __dyld__ZN26ImageLoaderMachOCompressed20doBindFastLazySymbolEjRKN11ImageLoader11LinkContextEPFvvES5_ ()
#9 0x00007fff5fc048f2 in __dyld__ZN4dyld18fastBindLazySymbolEPP11ImageLoaderm ()
#10 0x00007fff937ff716 in dyld_stub_binder_ ()
#11 0x000000012644e2c0 in typeinfo name for Featureset ()
#12 0x0000000126423e16 in boost::detail::variant::visitation_impl, boost::detail::variant::visitation_impl_step, mapnik::value_null, boost::mpl::l_item, bool, boost::mpl::l_item, int, boost::mpl::l_item, double, boost::mpl::l_item, icu_48::UnicodeString, boost::mpl::l_end> > > > > >, boost::mpl::l_iter >, boost::variant::assigner, void const*, boost::variant::has_fallback_type_> (internal_which=655442288, logical_which=655444368, visitor=@0x12b05a560, storage=0x12b05a538, unnamed_arg=Cannot access memory at address 0x0
) at mapnik_js_datasource.cpp:173
#13 0x000000012948b09b in boost::put, std::allocator > > >, mapnik::value&, std::string, icu_48::UnicodeString> ()
#14 0x00000001294887af in csv_datasource::parse_csv > > ()
#15 0x000000012947b645 in csv_datasource::bind ()
#16 0x000000012947a267 in csv_datasource::csv_datasource ()
#17 0x000000012947972c in create ()
#18 0x0000000127262314 in mapnik::datasource_cache::create ()
#19 0x000000012720c550 in mapnik::map_parser::parse_layer ()
#20 0x0000000127208602 in mapnik::map_parser::parse_map_include ()
#21 0x000000012720756a in mapnik::map_parser::parse_map ()
#22 0x0000000127207777 in mapnik::load_map_string ()
#23 0x0000000126409b21 in Map::EIO_FromString (req=0x12b05ecf0) at mapnik_map.cpp:814
#24 0x000000010002c10d in etp_proc (thr_arg=0x12b05ecf0) at eio.c:1830
#25 0x00007fff8d2128bf in _pthread_start ()
#26 0x00007fff8d215b75 in thread_start ()
```