-
-
Save moriarty/1f20f0ab574888c56926 to your computer and use it in GitHub Desktop.
| 13:57:45.774480 TriggeredConveyorBelt: DETECTED PLATE: NO_PLATE | |
| 13:57:46.098968 TriggeredConveyorBelt: DETECTED PLATE: NO_PLATE | |
| 13:57:46.425638 TriggeredConveyorBelt: DETECTED PLATE: NO_PLATE | |
| 13:57:46.750732 TriggeredConveyorBelt: DETECTED PLATE: NO_PLATE | |
| 13:57:47.075578 TriggeredConveyorBelt: DETECTED PLATE: NO_PLATE | |
| 13:57:47.646121 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE | |
| 13:57:47.687523 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE | |
| 13:57:47.774259 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE | |
| 13:57:47.855565 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE | |
| 13:57:47.896288 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE | |
| 13:57:47.977402 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE | |
| 13:57:48.058969 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE | |
| 13:57:48.099858 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE | |
| 13:57:48.181604 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE | |
| 13:57:48.263399 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE | |
| 13:57:48.304049 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE | |
| 13:57:48.386053 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE | |
| 13:57:48.467246 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE | |
| 13:57:48.507883 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE | |
| 13:57:48.589269 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE | |
| 13:57:48.630142 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE | |
| 13:57:48.712200 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE | |
| 13:57:48.793174 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE | |
| 13:57:48.834194 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE | |
| 13:57:48.915548 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE | |
| 13:57:48.998729 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE | |
| 13:57:49.040052 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE | |
| 13:57:49.121651 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE | |
| 13:57:49.162531 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE | |
| 13:57:49.244542 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE | |
| 13:57:49.326647 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE | |
| terminate called after throwing an instance of 'std::runtime_error' | |
| what(): Serialized message too big | |
| Program received signal SIGABRT, Aborted. | |
| 0x00007ffff4eadcc9 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56 | |
| 56 ../nptl/sysdeps/unix/sysv/linux/raise.c: No such file or directory. | |
| (gdb) up | |
| #1 0x00007ffff4eb10d8 in __GI_abort () at abort.c:89 | |
| 89 abort.c: No such file or directory. | |
| (gdb) up | |
| #2 0x00007ffff7b36535 in __gnu_cxx::__verbose_terminate_handler() () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | |
| (gdb) up | |
| #3 0x00007ffff7b346d6 in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | |
| (gdb) up | |
| #4 0x00007ffff7b34703 in std::terminate() () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | |
| (gdb) up | |
| #5 0x00007ffff7b34922 in __cxa_throw () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | |
| (gdb) up | |
| #6 0x00007ffff3b52346 in protobuf_comm::ProtobufBroadcastPeer::send (this=0xa16ab0, component_id=2000, msg_type=200, m=...) | |
| at /home/alex/workspace/rockin/at_work_central_factory_hub/src/libs/protobuf_comm/peer.cpp:534 | |
| 534 throw std::runtime_error("Serialized message too big"); | |
| (gdb) up | |
| #7 0x00007ffff3b52bae in protobuf_comm::ProtobufBroadcastPeer::send (this=0xa16ab0, m=...) at /home/alex/workspace/rockin/at_work_central_factory_hub/src/libs/protobuf_comm/peer.cpp:636 | |
| 636 send(comp_id, msg_type, m); | |
| (gdb) |
I've push a dirty branch to Github.
I made a change to where the clips fact was being asserted
alex@ubuntu:at_work_central_factory_hub$ git diff
diff --git a/rockin/plugins/triggered_conveyor_belt/triggered_conveyor_belt_thread.cpp b/rockin/plugins/triggered_conveyor_belt/triggered_conveyor_belt_thread.cpp
index ddb5c07..4a9df1e 100644
--- a/rockin/plugins/triggered_conveyor_belt/triggered_conveyor_belt_thread.cpp
+++ b/rockin/plugins/triggered_conveyor_belt/triggered_conveyor_belt_thread.cpp
@@ -245,22 +245,6 @@ void TriggeredConveyorBeltThread::receiveAndBufferStatusMsgs()
{
// remember time of last received msg
prev_camera_update_timestamp_ = boost::posix_time::microsec_clock::local_time();
-
- std::string detected_plate;
-
- switch (last_camera_status_msg_.state()) {
- case 0: detected_plate = "NO_PLATE"; break;
- case 1: detected_plate = "UNKNOWN_PLATE"; break;
- case 2: detected_plate = "FAULTY_PLATE"; break;
- case 3: detected_plate = "UNUSABLE_PLATE"; break;
- default: detected_plate = "UNKNOWN_PLATE"; break;
- }
-
- // let CLIPS know about the plate by asserting it as a fact
- std::stringstream sstr;
- sstr << "(quality-control-camera-object " << detected_plate << ")";
- logger->log_warn("TriggeredConveyorBelt", "DETECTED PLATE: %s", detected_plate.c_str());
- clips->assert_fact(sstr.str());
}
} else
{
@@ -272,6 +256,21 @@ void TriggeredConveyorBeltThread::receiveAndBufferStatusMsgs()
last_camera_status_msg_.set_state(QualityControlCameraStatus::UNKNOWN_PLATE);
}
}
+ std::string detected_plate;
+
+ switch (last_camera_status_msg_.state()) {
+ case 0: detected_plate = "NO_PLATE"; break;
+ case 1: detected_plate = "UNKNOWN_PLATE"; break;
+ case 2: detected_plate = "FAULTY_PLATE"; break;
+ case 3: detected_plate = "UNUSABLE_PLATE"; break;
+ default: detected_plate = "UNKNOWN_PLATE"; break;
+ }
+
+ // let CLIPS know about the plate by asserting it as a fact
+ std::stringstream sstr;
+ sstr << "(quality-control-camera-object " << detected_plate << ")";
+ logger->log_warn("TriggeredConveyorBelt", "DETECTED PLATE: %s", detected_plate.c_str());
+ clips->assert_fact(sstr.str());
}
if (!zmq_conveyor_subscriber_){
This resulted in it switching from NO_PLATE to FAULTY_PLATE and then to one NO_PLATE before crashing
14:40:51.511094 TriggeredConveyorBelt: DETECTED PLATE: NO_PLATE
14:40:51.551975 TriggeredConveyorBelt: DETECTED PLATE: NO_PLATE
14:40:51.592450 TriggeredConveyorBelt: DETECTED PLATE: NO_PLATE
14:40:51.632902 TriggeredConveyorBelt: DETECTED PLATE: NO_PLATE
14:40:51.673552 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE
14:40:51.714111 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE
14:40:51.754791 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE
14:40:51.795509 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE
14:40:51.835907 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE
14:40:51.876450 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE
14:40:51.917044 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE
14:40:51.957585 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE
14:40:51.998134 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE
14:40:52.038808 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE
14:40:52.079476 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE
14:40:52.120097 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE
14:40:52.160659 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE
14:40:52.201329 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE
14:40:52.242104 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE
14:40:52.283065 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE
14:40:52.323506 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE
14:40:52.364114 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE
14:40:52.404699 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE
14:40:52.445578 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE
14:40:52.486620 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE
14:40:52.527428 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE
14:40:52.568216 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE
14:40:52.608792 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE
14:40:52.649588 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE
14:40:52.690589 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE
14:40:52.731460 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE
14:40:52.772193 TriggeredConveyorBelt: DETECTED PLATE: FAULTY_PLATE
14:40:52.812906 TriggeredConveyorBelt: DETECTED PLATE: NO_PLATE
terminate called after throwing an instance of 'std::runtime_error'
what(): Serialized message too big
Program received signal SIGABRT, Aborted.
0x00007ffff4eadcc9 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
56 ../nptl/sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) bt
#0 0x00007ffff4eadcc9 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
#1 0x00007ffff4eb10d8 in __GI_abort () at abort.c:89
#2 0x00007ffff7b36535 in __gnu_cxx::__verbose_terminate_handler() () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#3 0x00007ffff7b346d6 in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#4 0x00007ffff7b34703 in std::terminate() () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#5 0x00007ffff7b34922 in __cxa_throw () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#6 0x00007ffff3b52346 in protobuf_comm::ProtobufBroadcastPeer::send (this=0xa16800, component_id=2000, msg_type=200, m=...)
at /home/alex/workspace/rockin/at_work_central_factory_hub/src/libs/protobuf_comm/peer.cpp:534
#7 0x00007ffff3b52bae in protobuf_comm::ProtobufBroadcastPeer::send (this=0xa16800, m=...) at /home/alex/workspace/rockin/at_work_central_factory_hub/src/libs/protobuf_comm/peer.cpp:636
#8 0x00007ffff3b52832 in protobuf_comm::ProtobufBroadcastPeer::send (this=0xa16800, m=...) at /home/alex/workspace/rockin/at_work_central_factory_hub/src/libs/protobuf_comm/peer.cpp:604
#9 0x00007ffff59c8126 in protobuf_clips::ClipsProtobufCommunicator::clips_pb_broadcast (this=0x8d1530, peer_id=3, msgptr=0x8d3eb0)
at /home/alex/workspace/rockin/at_work_central_factory_hub/src/libs/protobuf_clips/communicator.cpp:708
#10 0x00007ffff59ff841 in sigc::bound_mem_functor2<void, protobuf_clips::ClipsProtobufCommunicator, long, void*>::operator() (this=0x94a1f8, _A_a1=@0x7fffffffd418: 3, _A_a2=@0x7fffffffd420: 0x8d3eb0)
at /usr/include/sigc++-2.0/sigc++/functors/mem_fun.h:1917
#11 0x00007ffff59f5875 in sigc::adaptor_functor<sigc::bound_mem_functor2<void, protobuf_clips::ClipsProtobufCommunicator, long, void*> >::operator()<long const&, void* const&> (this=0x94a1f0,
_A_arg1=@0x7fffffffd418: 3, _A_arg2=@0x7fffffffd420: 0x8d3eb0) at /usr/include/sigc++-2.0/sigc++/adaptors/adaptor_trait.h:103
#12 0x00007ffff59eb546 in sigc::internal::slot_call2<sigc::bound_mem_functor2<void, protobuf_clips::ClipsProtobufCommunicator, long, void*>, void, long, void*>::call_it (rep=0x94a1c0, a_1=@0x7fffffffd418: 3,
a_2=@0x7fffffffd420: 0x8d3eb0) at /usr/include/sigc++-2.0/sigc++/functors/slot.h:173
#13 0x00007ffff59eb647 in sigc::slot2<void, long, void*>::operator() (this=0x8d2c00, _A_a1=@0x7fffffffd418: 3, _A_a2=@0x7fffffffd420: 0x8d3eb0) at /usr/include/sigc++-2.0/sigc++/functors/slot.h:593
#14 0x00007ffff59dfefe in CLIPS::Environment::callback<void, long, void*> (theEnv=0x81c0d0) at /usr/local/include/clipsmm-0.3/clipsmm/environment.h:945
#15 0x00007ffff713d653 in EvaluateExpression (theEnv=theEnv@entry=0x81c0d0, problem=problem@entry=0xa01240, returnValue=returnValue@entry=0x7fffffffd670) at evaluatn.c:170
#16 0x00007ffff7105b13 in PrognFunction (theEnv=0x81c0d0, returnValue=0x7fffffffd670) at prcdrfun.c:570
#17 0x00007ffff713d596 in EvaluateExpression (theEnv=theEnv@entry=0x81c0d0, problem=problem@entry=0xa010a0, returnValue=returnValue@entry=0x7fffffffd670) at evaluatn.c:349
#18 0x00007ffff70ff6dd in EvaluateProcActions (theEnv=theEnv@entry=0x81c0d0, theModule=<optimized out>, actions=0xa010a0, lvarcnt=1, result=result@entry=0x7fffffffd670, crtproc=crtproc@entry=0x0) at prccode.c:873
#19 0x00007ffff7133518 in EnvRun (theEnv=0x81c0d0, runLimit=-1) at engine.c:315
#20 0x00007ffff73a4a66 in CLIPS::Environment::run (this=0x819d70, runlimit=-1) at environment.cpp:134
#21 0x0000000000545c61 in llsfrb::LLSFRefBox::handle_timer (this=0x7fffffffdd30, error=...) at /home/alex/workspace/rockin/at_work_central_factory_hub/src/refbox/refbox.cpp:914
#22 0x0000000000599590 in boost::_mfi::mf1<void, llsfrb::LLSFRefBox, boost::system::error_code const&>::operator() (this=0x7fffffffd9d0, p=0x7fffffffdd30, a1=...) at /usr/include/boost/bind/mem_fn_template.hpp:165
#23 0x0000000000597c68 in boost::_bi::list2<boost::_bi::value<llsfrb::LLSFRefBox*>, boost::arg<1> (*)()>::operator()<boost::_mfi::mf1<void, llsfrb::LLSFRefBox, boost::system::error_code const&>, boost::_bi::list1<boost::system::error_code const&> > (this=0x7fffffffd9e0, f=..., a=...) at /usr/include/boost/bind/bind.hpp:313
#24 0x0000000000591bfa in boost::_bi::bind_t<void, boost::_mfi::mf1<void, llsfrb::LLSFRefBox, boost::system::error_code const&>, boost::_bi::list2<boost::_bi::value<llsfrb::LLSFRefBox*>, boost::arg<1> (*)()> >::operator()<boost::system::error_code> (this=0x7fffffffd9d0, a1=...) at /usr/include/boost/bind/bind_template.hpp:47
#25 0x000000000058cb79 in boost::asio::detail::binder1<boost::_bi::bind_t<void, boost::_mfi::mf1<void, llsfrb::LLSFRefBox, boost::system::error_code const&>, boost::_bi::list2<boost::_bi::value<llsfrb::LLSFRefBox*>, boost::arg<1> (*)()> >, boost::system::error_code>::operator() (this=0x7fffffffd9d0) at /usr/include/boost/asio/detail/bind_handler.hpp:47
#26 0x00000000005870ef in boost::asio::asio_handler_invoke<boost::asio::detail::binder1<boost::_bi::bind_t<void, boost::_mfi::mf1<void, llsfrb::LLSFRefBox, boost::system::error_code const&>, boost::_bi::list2<boost::_bi::value<llsfrb::LLSFRefBox*>, boost::arg<1> (*)()> >, boost::system::error_code> > (function=...) at /usr/include/boost/asio/handler_invoke_hook.hpp:64
#27 0x0000000000581064 in boost_asio_handler_invoke_helpers::invoke<boost::asio::detail::binder1<boost::_bi::bind_t<void, boost::_mfi::mf1<void, llsfrb::LLSFRefBox, boost::system::error_code const&>, boost::_bi::list2<boost::_bi::value<llsfrb::LLSFRefBox*>, boost::arg<1> (*)()> >, boost::system::error_code>, boost::_bi::bind_t<void, boost::_mfi::mf1<void, llsfrb::LLSFRefBox, boost::system::error_code const&>, boost::_bi::list2<boost::_bi::value<llsfrb::LLSFRefBox*>, boost::arg<1> (*)()> > > (function=..., context=...) at /usr/include/boost/asio/detail/handler_invoke_helpers.hpp:37
#28 0x000000000057aea4 in boost::asio::detail::wait_handler<boost::_bi::bind_t<void, boost::_mfi::mf1<void, llsfrb::LLSFRefBox, boost::system::error_code const&>, boost::_bi::list2<boost::_bi::value<llsfrb::LLSFRefBox*>, boost::arg<1> (*)()> > >::do_complete (owner=0x80b650, base=0xa3d290) at /usr/include/boost/asio/detail/wait_handler.hpp:70
#29 0x0000000000547b0a in boost::asio::detail::task_io_service_operation::complete (this=0xa3d290, owner=..., ec=..., bytes_transferred=0) at /usr/include/boost/asio/detail/task_io_service_operation.hpp:37
#30 0x000000000054a3b7 in boost::asio::detail::task_io_service::do_run_one (this=0x80b650, lock=..., this_thread=..., ec=...) at /usr/include/boost/asio/detail/impl/task_io_service.ipp:384
#31 0x0000000000549e0f in boost::asio::detail::task_io_service::run (this=0x80b650, ec=...) at /usr/include/boost/asio/detail/impl/task_io_service.ipp:153
#32 0x000000000054a715 in boost::asio::io_service::run (this=0x7fffffffddb0) at /usr/include/boost/asio/impl/io_service.ipp:59
#33 0x0000000000545e62 in llsfrb::LLSFRefBox::run (this=0x7fffffffdd30) at /home/alex/workspace/rockin/at_work_central_factory_hub/src/refbox/refbox.cpp:958
#34 0x000000000053e467 in main (argc=1, argv=0x7fffffffdf98) at /home/alex/workspace/rockin/at_work_central_factory_hub/src/refbox/main.cpp:55
I've also tried moving the
clips->assert_fact
block into the loop(), as it is done in the simulation.
I've noticed a new behaviour when I ran the viewer. The FAULTY_PLATE is being added 3 times.
See screenshot above.
Getting better... I saw in the simulation version the clips fact was only being asserted when the conveyor belt was not running.
The first plate was detected and worked fine. Only one was added to the inventory
Then - once the conveyor belt started again, a bunch more plates were added.
When the next plate was detected - it crashed.




Full Backtrace:
(gdb) bt
#0 0x00007ffff4eadcc9 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
#1 0x00007ffff4eb10d8 in __GI_abort () at abort.c:89
#2 0x00007ffff7b36535 in __gnu_cxx::__verbose_terminate_handler() () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#3 0x00007ffff7b346d6 in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#4 0x00007ffff7b34703 in std::terminate() () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#5 0x00007ffff7b34922 in __cxa_throw () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#6 0x00007ffff3b52346 in protobuf_comm::ProtobufBroadcastPeer::send (this=0xa16ab0, component_id=2000, msg_type=200, m=...)
#7 0x00007ffff3b52bae in protobuf_comm::ProtobufBroadcastPeer::send (this=0xa16ab0, m=...) at /home/alex/workspace/rockin/at_work_central_factory_hub/src/libs/protobuf_comm/peer.cpp:636
#8 0x00007ffff3b52832 in protobuf_comm::ProtobufBroadcastPeer::send (this=0xa16ab0, m=...) at /home/alex/workspace/rockin/at_work_central_factory_hub/src/libs/protobuf_comm/peer.cpp:604
#9 0x00007ffff59c8126 in protobuf_clips::ClipsProtobufCommunicator::clips_pb_broadcast (this=0x8d1530, peer_id=1, msgptr=0xa3e1c0)
#10 0x00007ffff59ff841 in sigc::bound_mem_functor2<void, protobuf_clips::ClipsProtobufCommunicator, long, void*>::operator() (this=0x94a1f8, _A_a1=@0x7fffffffd418: 1, _A_a2=@0x7fffffffd420: 0xa3e1c0)
#11 0x00007ffff59f5875 in sigc::adaptor_functor<sigc::bound_mem_functor2<void, protobuf_clips::ClipsProtobufCommunicator, long, void*> >::operator()<long const&, void* const&> (this=0x94a1f0,
#12 0x00007ffff59eb546 in sigc::internal::slot_call2<sigc::bound_mem_functor2<void, protobuf_clips::ClipsProtobufCommunicator, long, void*>, void, long, void*>::call_it (rep=0x94a1c0, a_1=@0x7fffffffd418: 1,
#13 0x00007ffff59eb647 in sigc::slot2<void, long, void*>::operator() (this=0x8d2c00, _A_a1=@0x7fffffffd418: 1, _A_a2=@0x7fffffffd420: 0xa3e1c0) at /usr/include/sigc++-2.0/sigc++/functors/slot.h:593
#14 0x00007ffff59dfefe in CLIPS::Environment::callback<void, long, void*> (theEnv=0x81c0d0) at /usr/local/include/clipsmm-0.3/clipsmm/environment.h:945
#15 0x00007ffff713d653 in EvaluateExpression (theEnv=theEnv@entry=0x81c0d0, problem=problem@entry=0xa015f0, returnValue=returnValue@entry=0x7fffffffd670) at evaluatn.c:170
#16 0x00007ffff7105b13 in PrognFunction (theEnv=0x81c0d0, returnValue=0x7fffffffd670) at prcdrfun.c:570
#17 0x00007ffff713d596 in EvaluateExpression (theEnv=theEnv@entry=0x81c0d0, problem=problem@entry=0xa01450, returnValue=returnValue@entry=0x7fffffffd670) at evaluatn.c:349
---Type to continue, or q to quit---
#18 0x00007ffff70ff6dd in EvaluateProcActions (theEnv=theEnv@entry=0x81c0d0, theModule=, actions=0xa01450, lvarcnt=1, result=result@entry=0x7fffffffd670, crtproc=crtproc@entry=0x0) at prccode.c:873
#19 0x00007ffff7133518 in EnvRun (theEnv=0x81c0d0, runLimit=-1) at engine.c:315
#20 0x00007ffff73a4a66 in CLIPS::Environment::run (this=0x819d70, runlimit=-1) at environment.cpp:134
#21 0x0000000000545c61 in llsfrb::LLSFRefBox::handle_timer (this=0x7fffffffdd30, error=...) at /home/alex/workspace/rockin/at_work_central_factory_hub/src/refbox/refbox.cpp:914
#22 0x0000000000599590 in boost::_mfi::mf1<void, llsfrb::LLSFRefBox, boost::system::error_code const&>::operator() (this=0x7fffffffd9d0, p=0x7fffffffdd30, a1=...) at /usr/include/boost/bind/mem_fn_template.hpp:165
#23 0x0000000000597c68 in boost::_bi::list2boost::bi::value<llsfrb::LLSFRefBox*, boost::arg<1> ()()>::operator()<boost::_mfi::mf1<void, llsfrb::LLSFRefBox, boost::system::error_code const&>, boost::_bi::list1<boost::system::error_code const&> > (this=0x7fffffffd9e0, f=..., a=...) at /usr/include/boost/bind/bind.hpp:313
#24 0x0000000000591bfa in boost::_bi::bind_t<void, boost::_mfi::mf1<void, llsfrb::LLSFRefBox, boost::system::error_code const&>, boost::_bi::list2boost::_bi::value<llsfrb::LLSFRefBox, boost::arg<1> ()()> >::operator()boost::system::error_code (this=0x7fffffffd9d0, a1=...) at /usr/include/boost/bind/bind_template.hpp:47
#25 0x000000000058cb79 in boost::asio::detail::binder1<boost::_bi::bind_t<void, boost::_mfi::mf1<void, llsfrb::LLSFRefBox, boost::system::error_code const&>, boost::_bi::list2boost::_bi::value<llsfrb::LLSFRefBox, boost::arg<1> ()()> >, boost::system::error_code>::operator() (this=0x7fffffffd9d0) at /usr/include/boost/asio/detail/bind_handler.hpp:47
#26 0x00000000005870ef in boost::asio::asio_handler_invoke<boost::asio::detail::binder1<boost::_bi::bind_t<void, boost::_mfi::mf1<void, llsfrb::LLSFRefBox, boost::system::error_code const&>, boost::_bi::list2boost::_bi::value<llsfrb::LLSFRefBox, boost::arg<1> ()()> >, boost::system::error_code> > (function=...) at /usr/include/boost/asio/handler_invoke_hook.hpp:64
#27 0x0000000000581064 in boost_asio_handler_invoke_helpers::invoke<boost::asio::detail::binder1<boost::_bi::bind_t<void, boost::_mfi::mf1<void, llsfrb::LLSFRefBox, boost::system::error_code const&>, boost::_bi::list2boost::_bi::value<llsfrb::LLSFRefBox, boost::arg<1> ()()> >, boost::system::error_code>, boost::_bi::bind_t<void, boost::_mfi::mf1<void, llsfrb::LLSFRefBox, boost::system::error_code const&>, boost::_bi::list2<boost::_bi::valuellsfrb::LLSFRefBox_, boost::arg<1> ()()> > > (function=..., context=...) at /usr/include/boost/asio/detail/handler_invoke_helpers.hpp:37
#28 0x000000000057aea4 in boost::asio::detail::wait_handler<boost::_bi::bind_t<void, boost::_mfi::mf1<void, llsfrb::LLSFRefBox, boost::system::error_code const&>, boost::_bi::list2boost::_bi::value<llsfrb::LLSFRefBox, boost::arg<1> (*)()> > >::do_complete (owner=0x80b650, base=0xa331f0) at /usr/include/boost/asio/detail/wait_handler.hpp:70
#29 0x0000000000547b0a in boost::asio::detail::task_io_service_operation::complete (this=0xa331f0, owner=..., ec=..., bytes_transferred=0) at /usr/include/boost/asio/detail/task_io_service_operation.hpp:37
#30 0x000000000054a3b7 in boost::asio::detail::task_io_service::do_run_one (this=0x80b650, lock=..., this_thread=..., ec=...) at /usr/include/boost/asio/detail/impl/task_io_service.ipp:384
#31 0x0000000000549e0f in boost::asio::detail::task_io_service::run (this=0x80b650, ec=...) at /usr/include/boost/asio/detail/impl/task_io_service.ipp:153
#32 0x000000000054a715 in boost::asio::io_service::run (this=0x7fffffffddb0) at /usr/include/boost/asio/impl/io_service.ipp:59
#33 0x0000000000545e62 in llsfrb::LLSFRefBox::run (this=0x7fffffffdd30) at /home/alex/workspace/rockin/at_work_central_factory_hub/src/refbox/refbox.cpp:958
---Type to continue, or q to quit---
#34 0x000000000053e467 in main (argc=1, argv=0x7fffffffdf98) at /home/alex/workspace/rockin/at_work_central_factory_hub/src/refbox/main.cpp:55