ApolloAuto / apollo

An open autonomous driving platform
Apache License 2.0
25k stars 9.67k forks source link

dreamview failed to start, possible cause: lane sampled_ width is too small. #7228

Closed llrraa closed 5 years ago

llrraa commented 5 years ago

I failed to start dreamview. From the dreamview.INFO log, I think possible cause: lane sampled_ width is too small. Please help resolve this issue.

System information

Steps to reproduce the issue:

llrraa commented 5 years ago

My CPU does not support FMA/FMA3 and AVX instructions, so I make some change on source following the guide of https://github.com/ApolloAuto/apollo/blob/master/docs/howto/how_to_debug_dreamview_start_problem.md. Would it be the reason for this issue?

natashadsouza commented 5 years ago

@llrraa I would recommend debugging using this guide. If this issue persists, feel free to reach out. Thanks!

llrraa commented 5 years ago

The following is what I get from gdb. It seems that sampled_rightwidth gets the wrong values. Where does sampled_rightwidth get these values? gdb: 4 breakpoint keep y 0x0000000000e70ede in apollo::hdmap::LaneInfo::Init() at modules/map/hdmap/hdmap_common.cc:183 Breakpoint 4, apollo::hdmap::LaneInfo::Init (this=0x7ffe88601170) at modules/map/hdmap/hdmap_common.cc:183 183 AERROR (gdb) l 178 << kMinHalfWidth << "]."; 179 } 180 } 181 for (const auto &p : sampled_rightwidth) { 182 if (p.second < kMinHalfWidth) { 183 AERROR 184 << "lane[id = " << lane_.id().DebugString() 185 << "]. sampled_rightwidth[" << p.second 186 << "] is too small. It should be larger than half vehicle width[" 187 << kMinHalfWidth << "]."; (gdb) b sampled_rightwidth Function "sampled_rightwidth" not defined. Make breakpoint pending on future shared library load? (y or [n]) n (gdb) p sampled_rightwidth $2 = std::vector of length 22, capacity 32 = {{first = 0, second = 0.78709399999999996}, {first = 0.19980200000000001, second = 0.78710500000000005}, {first = 0.39960400000000001, second = 0.78711600000000004}, {first = 0.59940499999999997, second = 0.78712700000000002}, {first = 0.799207, second = 0.787138}, { first = 0.99900900000000004, second = 0.78714899999999999}, { first = 1.1988099999999999, second = 0.787161}, { first = 1.3986099999999999, second = 0.78717199999999998}, { first = 1.5984100000000001, second = 0.78718399999999999}, { first = 1.7982199999999999, second = 0.78719499999999998}, { first = 1.9980199999999999, second = 0.78720699999999999}, { first = 2.1978200000000001, second = 0.78721799999999997}, { first = 2.3976199999999999, second = 0.78722999999999999}, { first = 2.5974200000000001, second = 0.78724099999999997}, { first = 2.7972299999999999, second = 0.78725299999999998}, { first = 2.9970300000000001, second = 0.78726499999999999}, { first = 3.1968299999999998, second = 0.787277}, {first = 3.39663, second = 0.78728900000000002}, {first = 3.5964299999999998, second = 0.78730100000000003}, {first = 3.79623, second = 0.78731200000000001}, {first = 3.9960399999999998, second = 0.78732400000000002}, {first = 4.1916799999999999, second = 0.78709399999999996}} (gdb) bt

0 apollo::hdmap::LaneInfo::Init (this=0x7ffe88601170)

at modules/map/hdmap/hdmap_common.cc:183

1 0x0000000000e70257 in apollo::hdmap::LaneInfo::LaneInfo (

this=0x7ffe88601170, lane=...) at modules/map/hdmap/hdmap_common.cc:130

2 0x0000000000e80da6 in apollo::hdmap::HDMapImpl::LoadMapFromProto (

this=0x7ffea4000c80, map_proto=...) at modules/map/hdmap/hdmap_impl.cc:69

3 0x0000000000e80ca8 in apollo::hdmap::HDMapImpl::LoadMapFromFile (

this=0x7ffea4000c80, 
map_filename="/apollo/modules/map/data/sunnyvale_with_two_offices/base_map.bin") at modules/map/hdmap/hdmap_impl.cc:60

4 0x0000000000e6e8ce in apollo::hdmap::HDMap::LoadMapFromFile (

this=0x7ffea4000c80, 
map_filename="/apollo/modules/map/data/sunnyvale_with_two_offices/base_map.bin") at modules/map/hdmap/hdmap.cc:25

5 0x0000000000e3d5c8 in apollo::hdmap::CreateMap (

map_file_path="/apollo/modules/map/data/sunnyvale_with_two_offices/base_map.bin") at modules/map/hdmap/hdmap_util.cc:73

6 0x0000000000e3db54 in apollo::hdmap::HDMapUtil::BaseMapPtr ()

at modules/map/hdmap/hdmap_util.cc:137

7 0x0000000000cc19e9 in apollo::dreamview::MapService::HDMap (this=0x1ddf550)

at modules/dreamview/backend/map/map_service.cc:149

8 0x0000000000cc1a2a in apollo::dreamview::MapService::MapReady (

this=0x1ddf550) at modules/dreamview/backend/map/map_service.cc:156

---Type to continue, or q to quit---

9 0x0000000000cc1a86 in apollo::dreamview::MapService::CollectMapElementIds (

this=0x1ddf550, point=..., radius=200, ids=0x7ffea4000960)
at modules/dreamview/backend/map/map_service.cc:160

10 0x00000000009dca66 in apollo::dreamview::SimulationWorldService::GetMapElementIds (this=0x27103e8, radius=200, ids=0x7ffea4000960)

at modules/dreamview/backend/simulation_world/simulation_world_service.cc:414

11 0x00000000009dcae6 in apollo::dreamview::SimulationWorldService::PopulateMapInfo (this=0x27103e8, radius=200)

at modules/dreamview/backend/simulation_world/simulation_world_service.cc:419

12 0x00000000009dc7c6 in apollo::dreamview::SimulationWorldService::GetWireFormatString (this=0x27103e8, radius=200, sim_world=0x27108d8,

sim_world_with_planning_data=0x27108e0)
at modules/dreamview/backend/simulation_world/simulation_world_service.cc:387

13 0x00000000009ca93a in apollo::dreamview::SimulationWorldUpdater::OnTimer (

this=0x27103e0)
at modules/dreamview/backend/simulation_world/simulation_world_updater.cc:381

14 0x00000000009ca7f7 in apollo::dreamview::SimulationWorldUpdater::lambda78::operator() (closure=0x7ffea00009c0)

at modules/dreamview/backend/simulation_world/simulation_world_updater.cc:37---Type <return> to continue, or q <return> to quit---

0

15 0x00000000009cc4a3 in std::_Function_handler<void(), apollo::dreamview::SimulationWorldUpdater::Start()::__lambda78>::_M_invoke(const std::_Any_data &) (

__functor=...) at /usr/include/c++/4.8/functional:2071

16 0x00000000004b0da2 in std::function<void ()>::operator()() const (

this=0x7ffea0000990) at /usr/include/c++/4.8/functional:2471

17 0x0000000000f926b4 in apollo::cyber::TimingWheel::__lambda19::operator() (

__closure=0x7ffea0000990) at cyber/timer/timing_wheel.cc:82

18 0x0000000000f941e0 in std::_Function_handler<void(), apollo::cyber::TimingWheel::StartTimer(uint64_t, apollo::cyber::CallHandler, bool)::lambda19>::_M_invoke(const std::_Any_data &) (functor=...)

at /usr/include/c++/4.8/functional:2071

19 0x00000000004b0da2 in std::function<void ()>::operator()() const (

this=0x7ffea0000aa0) at /usr/include/c++/4.8/functional:2471

20 0x0000000000f987ea in std::_Bind<std::function<void ()> ()>::__call(std::tuple<>&&, std::_Index_tuple<>) (this=0x7ffea0000aa0,

__args=<unknown type in /home/leon/.cache/bazel/_bazel_leon/540135163923dd7d5820f3ee4b306b32/execroot/apollo/bazel-out/local-dbg/bin/modules/dreamview/dreamview, CU 0x3128d41, DIE 0x3167dcd>) at /usr/include/c++/4.8/functional:1296

21 0x0000000000f987c6 in std::_Bind<std::function<void ()> ()>::operator()<, void>() (this=0x7ffea0000aa0) at /usr/include/c++/4.8/functional:1355

22 0x0000000000f9879b in std::invoke<std::_Bind<std::function<void ()> ()>>(std::_Bind<std::function<void ()> ()>&) (f=...)

---Type to continue, or q to quit--- at /usr/include/c++/4.8/functional:234

23 0x0000000000f98770 in std::reference_wrapper<std::_Bind<std::function<void ()> ()> >::operator()<>() const (this=0x7ffec27fef20)

at /usr/include/c++/4.8/functional:467

24 0x0000000000f986d2 in std::_Bind_simple<std::reference_wrapper<std::_Bind<std::function<void ()> ()> > ()>::_M_invoke<>(std::_Index_tuple<>) (

this=0x7ffec27fef20) at /usr/include/c++/4.8/functional:1732

25 0x0000000000f98549 in std::_Bind_simple<std::reference_wrapper<std::_Bind<std::function<void ()> ()> > ()>::operator()() (this=0x7ffec27fef20)

at /usr/include/c++/4.8/functional:1720

26 0x0000000000f983b0 in std::_Function_handler<void (), std::reference_wrapper<std::_Bind_simple<std::reference_wrapper<std::_Bind<std::function<void ()> ()> > ()> > >::_M_invoke(std::_Any_data const&) (__functor=...)

at /usr/include/c++/4.8/functional:2101

27 0x00000000004b0da2 in std::function<void ()>::operator()() const (

this=0x7ffea40008e8) at /usr/include/c++/4.8/functional:2471

28 0x0000000000529f66 in std::future_base::_Task_setter<std::unique_ptr<std::future_base::_Result, std::__future_base::_Result_base::_Deleter>, void>::operator() (this=0x7ffea40008e0) at /usr/include/c++/4.8/future:1235

29 0x0000000000528eaf in std::_Function_handler<std::unique_ptr<std::__future_base::_Result_base, std::future_base::_Result_base::_Deleter> (), std::future_base::_Task_setter<std::unique_ptr<std::future_base::_Result, std::future_base::_Result_base::_Deleter>, void> >::_M_invoke(std::_Any_data const&) (

---Type to continue, or q to quit--- __functor=...) at /usr/include/c++/4.8/functional:2057

30 0x00000000004b24af in std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()>::operator()() const (

this=0x7ffec27fef40) at /usr/include/c++/4.8/functional:2471

31 0x00000000004afd1c in std::future_base::_State_base::_M_do_set(std::function<std::unique_ptr<std::__future_base::_Result_base, std::future_base::_Result_base::_Deleter> ()>&, bool&) (this=0x7ffea0000a28, __f=...,

__set=@0x7ffec27feebf: false) at /usr/include/c++/4.8/future:471

32 0x00000000004ba587 in std::_Mem_fn<void (std::future_base::_State_base::*)(std::function<std::unique_ptr<std::future_base::_Result_base, std::future_base::_Result_base::_Deleter> ()>&, bool&)>::operator()<std::reference_wrapper<std::function<std::unique_ptr<std::future_base::_Result_base, std::future_base::_Result_base::_Deleter> ()> >, std::reference_wrapper, void>(std::__future_base::_State_base*, std::reference_wrapper<std::function<std::unique_ptr<std::future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()> >&&, std::reference_wrapper&&) const (this=0x7ffec27fee48,

__object=0x7ffea0000a28) at /usr/include/c++/4.8/functional:601

33 0x00000000004b84c5 in std::_Bind_simple<std::_Mem_fn<void (std::future_base::_State_base::*)(std::function<std::unique_ptr<std::future_base::_Result_base, std::future_base::_Result_base::_Deleter> ()>&, bool&)> (std::future_base::_State_base*, std::reference_wrapper<std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()> >, std::reference_wrapper)>::_M_invoke<0ul, 1ul, 2ul>(std::_Index_tuple<0ul, 1ul, 2---Type to continue, or q to quit---

ul>) (this=0x7ffec27fee30) at /usr/include/c++/4.8/functional:1732

34 0x00000000004b6653 in std::_Bind_simple<std::_Mem_fn<void (std::future_base::_State_base::*)(std::function<std::unique_ptr<std::future_base::_Result_base, std::future_base::_Result_base::_Deleter> ()>&, bool&)> (std::future_base::_State_base*, std::reference_wrapper<std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()> >, std::reference_wrapper)>::operator()() (this=0x7ffec27fee30)

at /usr/include/c++/4.8/functional:1720

35 0x00000000004b4a2d in std::once_call_impl<std::_Bind_simple<std::_Mem_fn<void (std::future_base::_State_base::)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::future_base::_Result_base::_Deleter> ()>&, bool&)> (std::future_base::_State_base, std::reference_wrapper<std::function<std::unique_ptr<std::__future_base::_Result_base, std::__future_base::_Result_base::_Deleter> ()> >, std::reference_wrapper)> >() ()

at /usr/include/c++/4.8/mutex:754

36 0x00007fffedff7a80 in pthread_once ()

at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_once.S:103

37 0x00000000004ac1a4 in __gthread_once (__once=0x7ffea0000a94,

__func=0x7fffed88d110 <__once_proxy>)
at /usr/include/x86_64-linux-gnu/c++/4.8/bits/gthr-default.h:699

38 0x00000000004b2355 in std::call_once<void (std::future_base::_State_base::*)(std::function<std::unique_ptr<std::future_base::_Result_base, std::future_base::_Result_base::_Deleter> ()>&, bool&), std::future_base::_State_base* co---Type to continue, or q to quit---

nst, std::reference_wrapper<std::function<std::unique_ptr<std::future_base::_Result_base, std::future_base::_Result_base::_Deleter> ()> >, std::reference_wrapper >(std::once_flag&, void (std::future_base::_State_base::*&&)(std::function<std::unique_ptr<std::__future_base::_Result_base, std::future_base::_Result_base::_Deleter> ()>&, bool&), std::future_base::_State_base* const&&, std::reference_wrapper<std::function<std::unique_ptr<std::__future_base::_Result_base, std::future_base::_Result_base::_Deleter> ()> >&&, std::reference_wrapper&&) (once=..., f=<unknown type in /home/leon/.cache/bazel/_bazel_leon/540135163923dd7d5820f3ee4b306b32/execroot/apollo/bazel-out/local-dbg/bin/modules/dreamview/dreamview, CU 0x1abd06, DIE 0x2c397a>) at /usr/include/c++/4.8/mutex:786

39 0x00000000004afade in std::future_base::_State_base::_M_set_result(std::function<std::unique_ptr<std::__future_base::_Result_base, std::future_base::_Result_base::_Deleter> ()>, bool) (this=0x7ffea0000a28, __res=...,

__ignore_failure=false) at /usr/include/c++/4.8/future:358

40 0x0000000000f97bc4 in std::__future_base::_Task_state<std::_Bind<std::function<void ()> ()>, std::allocator, void ()>::_M_run() (this=0x7ffea0000a28)

at /usr/include/c++/4.8/future:1286

41 0x0000000000501ad9 in std::packaged_task<void ()>::operator()() (

this=0x7ffea00009f8) at /usr/include/c++/4.8/future:1421

42 0x0000000000f952b4 in std::future<std::result_of<std::function<void ()>& ()>::type> apollo::cyber::TaskManager::Enqueue<std::function<void ()>&>(std::function<void ()>&)::{lambda()#1}::operator()() const (__closure=0x7ffea40008c0)

---Type to continue, or q to quit--- at ./cyber/task/task_manager.h:47

43 0x0000000000f96017 in std::_Function_handler<void (), std::future<std::result_of<std::function<void ()>& ()>::type> apollo::cyber::TaskManager::Enqueue<std::function<void ()>&>(std::function<void ()>&)::{lambda()#1}>::_M_invoke(std::_Any_data const&) (__functor=...) at /usr/include/c++/4.8/functional:2071

44 0x00000000004b0da2 in std::function<void ()>::operator()() const (

this=0x7ffec27ff0a0) at /usr/include/c++/4.8/functional:2471

45 0x0000000000f9a08f in apollo::cyber::TaskManager::TaskManager()::{lambda()#1}::operator()() const () at cyber/task/task_manager.cc:45

46 0x0000000000f9aba0 in std::_Function_handler<void(), apollo::cyber::TaskManager::TaskManager()::__lambda19>::_M_invoke(const std::_Any_data &) (

__functor=...) at /usr/include/c++/4.8/functional:2071

47 0x00000000004b0da2 in std::function<void ()>::operator()() const (

this=0x27f0ae0) at /usr/include/c++/4.8/functional:2471

48 0x0000000000fb8858 in apollo::cyber::croutine::CRoutine::Run (

this=0x27f0ac8) at ./cyber/croutine/croutine.h:143

49 0x0000000000fb7ead in apollo::cyber::croutine::(anonymous namespace)::CRoutineEntry (arg=0x27f0ac8) at cyber/croutine/croutine.cc:43

50 0x0000000000000000 in ?? ()

(gdb)

llrraa commented 5 years ago

I think I got it.

4 0x0000000000e6e8ce in apollo::hdmap::HDMap::LoadMapFromFile (

this=0x7ffea4000c80, 
map_filename="/apollo/modules/map/data/sunnyvale_with_two_offices/base_map.bin") at modules/map/hdmap/hdmap.cc:25

So the map is loaded from "/apollo/modules/map/data/sunnyvale_with_two_offices/base_map.bin". It should be a file of the docker. Is its data wrong?

llrraa commented 5 years ago

If its data is wrong, can anyone please correct it?

llrraa commented 5 years ago

HELP!!!Any help available here?

vlin17 commented 5 years ago

@llrraa seems like your dreamview server is up and running according to the dreamview log you provided. It is okay to see "sampled_rightwidth is too small" error from dreamview log. If it failed because you couldn't see the dreamview from localhost:8888, a common issue we heard is related to git lfs: The files may not be properly downloaded as most of them are stored with git lfs. You can check the file modules/dreamview/frontend/dist/app.bundle.js and see if it only contains a little information about git lfs links. If so, try to run "git lfs fetch --all ." at the project root directory.

llrraa commented 5 years ago

@llrraa seems like your dreamview server is up and running according to the dreamview log you provided. It is okay to see "sampled_rightwidth is too small" error from dreamview log. If it failed because you couldn't see the dreamview from localhost:8888, a common issue we heard is related to git lfs: The files may not be properly downloaded as most of them are stored with git lfs. You can check the file modules/dreamview/frontend/dist/app.bundle.js and see if it only contains a little information about git lfs links. If so, try to run "git lfs fetch --all ." at the project root directory.

Thanks for your reply. I try to search "lfs" in modules/dreamview/frontend/dist/app.bundle.js to see if it only contains a little information about git lfs links. Am I doing it coorectly? And I search no "lfs" in it, and try to run "git lfs fetch --all ." and get no luck. Do I misunderstand what you mean?

llrraa commented 5 years ago

@llrraa seems like your dreamview server is up and running according to the dreamview log you provided. It is okay to see "sampled_rightwidth is too small" error from dreamview log. If it failed because you couldn't see the dreamview from localhost:8888, a common issue we heard is related to git lfs: The files may not be properly downloaded as most of them are stored with git lfs. You can check the file modules/dreamview/frontend/dist/app.bundle.js and see if it only contains a little information about git lfs links. If so, try to run "git lfs fetch --all ." at the project root directory.

Just to make sure. When you say "try to run "git lfs fetch --all ." at the project root directory" , you mean try to run "git lfs fetch --all ." at the project root directory" before "bash docker/scripts/dev_into.sh", right?

natashadsouza commented 5 years ago

@llrraa please refer to our Software FAQs. The second last question is identifying if the issue is a Git LFS issue or not. Please follow the hints there and let me know if the issue persists. Thanks!

llrraa commented 5 years ago

Today is my lucky day!!! I update my apollo code and docker images, then it's working now. Many thanks to you all.

liudiligent commented 5 years ago

您好,我现在安装apolio也出现了 同样的问题。能否告知一下您是怎么解决的?

qwetqwe commented 4 years ago

Today is my lucky day!!! I update my apollo code and docker images, then it's working now. Many thanks to you all. which image do you update? I update all images that is up to data, but still has problem