{"action":"opened","issue":{"url":"https://api.github.com/repos/jacknlliu/development-issues/issues/44","repository_url":"https://api.github.com/repos/jacknlliu/development-issues","labels_url":"https://api.github.com/repos/jacknlliu/development-issues/issues/44/labels{/name}","comments_url":"https://api.github.com/repos/jacknlliu/development-issues/issues/44/comments","events_url":"https://api.github.com/repos/jacknlliu/development-issues/issues/44/events","html_url":"https://github.com/jacknlliu/development-issues/issues/44","id":325113084,"number":44,"title":"ROS moveit plan in callback function blocking","user":{"login":"jacknlliu","id":6220143,"avatar_url":"https://avatars1.githubusercontent.com/u/6220143?v=4","gravatar_id":"","url":"https://api.github.com/users/jacknlliu","html_url":"https://github.com/jacknlliu","followers_url":"https://api.github.com/users/jacknlliu/followers","following_url":"https://api.github.com/users/jacknlliu/following{/other_user}","gists_url":"https://api.github.com/users/jacknlliu/gists{/gist_id}","starred_url":"https://api.github.com/users/jacknlliu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jacknlliu/subscriptions","organizations_url":"https://api.github.com/users/jacknlliu/orgs","repos_url":"https://api.github.com/users/jacknlliu/repos","events_url":"https://api.github.com/users/jacknlliu/events{/privacy}","received_events_url":"https://api.github.com/users/jacknlliu/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-05-22T01:47:34Z","updated_at":"2018-05-22T01:47:34Z","closed_at":null,"author_association":"OWNER","body":"moveit using the same callback queue with the main thread, this makes blocking when it is in a callback function, because the new callback from the moveit can't enter when the current callback function does not exit. \r\n\r\n**Solution**:\r\nusing a separated callback queue to service callback.\r\n\r\n```\r\n```\r\n\r\n## Reference\r\n- [MoveGroup API gets stuck in plan(...)](https://groups.google.com/forum/#!topic/moveit-users/s9b7IJuKRKY)\r\n- [Using Different Callback Queues - ROS wiki](http://wiki.ros.org/roscpp/Overview/Callbacks%20and%20Spinning#Advanced:_Using_Different_Callback_Queues)\r\n- [multiple callback queues](https://answers.ros.org/question/214629/multiple-callback-queues/)\r\n- [MoveIt! planning not continue after successful planning?](https://answers.ros.org/question/231025/moveit-planning-not-continue-after-successful-planning/)\r\n- [ros::NodeHandle::advertiseService](http://docs.ros.org/api/roscpp/html/classros_1_1NodeHandle.html#ae4711ef282892176ba145d02f8f45f8d)\r\n- [advertiseService](https://github.com/Xamla/torch-ros/blob/40cd7316e2e1511af6245edb2e0cfc910d800e9b/demo/advertiseService.lua#L11)\r\n- [multi_thread_node](https://github.com/a-loner/exercise/blob/master/multi_thread/src/multi_thread_node.cpp#L13)\r\n- [CommanderROS](https://github.com/radioactive1014/svn/blob/f31810762aa2344ed22506e539bd083218776395/rokon_commander/src/KUKACommanderROS.cpp#L111)\r\n- [client callback_queue](https://github.com/rokon1014/Real-Time-Model-Predictive-Control/blob/1257c2b53d0294bb0de49250414688d20001186c/src/app/src/client.cpp#L24:6)\r\n"}}
{"actor":{"display_login":"jacknlliu"}}