<html>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<br>
<div class="moz-cite-prefix">On 16.09.2014 13:49, Sylvain Joyeux
wrote:<br>
</div>
<blockquote
cite="mid:CAKDpF4Tp_6X0eDxgGTZKE5fZUPAXJzhhKqgB+6fpqFi=8RKdbg@mail.gmail.com"
type="cite">
<pre wrap="">When using pull connections, such a problem should not happen. The
only bit missing was to not send notifications (needed for
port-triggered tasks) when they are not needed, but I've seen a pull
request a while ago fixing that
Just had a quick look. A leftover is the call to #state and #states in
<a class="moz-txt-link-freetext" href="http://goo.gl/6Mt0H3">http://goo.gl/6Mt0H3</a> and <a class="moz-txt-link-freetext" href="http://goo.gl/fBXb8n">http://goo.gl/fBXb8n</a>. These are actually a
port read, so here's one non-pull connection. Given that I know that
your code is usually spamming with state changes, that is definitely
one possible culprit.</pre>
</blockquote>
Unfortunately,
<meta http-equiv="content-type" content="text/html; charset=utf-8">
the real problem is coming from:<br>
<a class="moz-txt-link-freetext" href="https://github.com/rock-core/tools-orocosrb/blob/master/lib/orocos/async/task_context_base.rb#L69">https://github.com/rock-core/tools-orocosrb/blob/master/lib/orocos/async/task_context_base.rb#L69</a><br>
<br>
Here, the worker thread is triggering "states" every second. A
workaround would be to remove this peace from the watch_dog and use
Sylvain suggestion.<br>
<br>
Greets <br>
Alex<br>
<br>
<blockquote
cite="mid:CAKDpF4Tp_6X0eDxgGTZKE5fZUPAXJzhhKqgB+6fpqFi=8RKdbg@mail.gmail.com"
type="cite">
<pre wrap="">
You can try the following: get rid of #process_states and define
#on_state_change with
<a class="moz-txt-link-freetext" href="https://gist.github.com/doudou/0ff1b3ac8f2d397c0307">https://gist.github.com/doudou/0ff1b3ac8f2d397c0307</a>. This is
completely untested. You will probably have to define an attr_reader
:state_symbols on Orocos::TaskContext. The documentation says that you
can listen to states by doing obj.state { |s| ... } but I can't see
where this comes from.
Sylvain
PS: The proper fix (that I wanted to implement for a long, long time)
would be to have multiple corba dispatchers. It would allow to isolate
priorities (high RT priority for in-robot com, low non-RT priority for
GUI) and completely isolate different domains in general.
On Tue, Sep 16, 2014 at 5:15 AM, Matthias Goldhoorn
<a class="moz-txt-link-rfc2396E" href="mailto:matthias.goldhoorn@dfki.de"><matthias.goldhoorn@dfki.de></a> wrote:
</pre>
<blockquote type="cite">
<pre wrap="">I thougt this was fixed by adding the :pull flag to the connection.
That the data are activly requested instead pushed from the system.
I know what you suggest solves, but if the network connection is
unstable or overloaded i got the same problems again...
;-(
Matthias
On 16.09.2014 09:39, Janosch Machowinski wrote:
</pre>
<blockquote type="cite">
<pre wrap="">Hey,
if I recall it correct, there is one receiver and one
sender thread per task, that pulls/pushes the data from/to
the connections. (I included orocos-dev to confirm this)
In your usecase the cable to the UAV is disconnected,
while the task-inspector is connected to the tasks on
your system.
This means, that all connections to the task-inspector
time out, making the sender thread block. Thus you also
get no data any more on the 'internal' connections.
For your case, it should help to disconnect all task
inspectors, before unplugging the Ethernet cable.
Greetings
Janosch
Am 14.09.2014 um 16:23 schrieb Matthias Goldhoorn:
</pre>
<blockquote type="cite">
<pre wrap="">Hi Dev's
It still seems that the Task Inspector influences the task execution.
I thoug this was fixed by the async api? (and pull?)
This is a critical bug for us currently...
Best,
Matthias
</pre>
</blockquote>
<pre wrap="">
</pre>
</blockquote>
<pre wrap="">
--
--
Matthias Goldhoorn
Unterwasserrobotik
Standort Bremen:
DFKI GmbH
Robotics Innovation Center
Robert-Hooke-Straße 5
28359 Bremen, Germany
Phone: +49 (0)421 218-64100
Fax: +49 (0)421 218-64150
E-Mail: <a class="moz-txt-link-abbreviated" href="mailto:robotik@dfki.de">robotik@dfki.de</a>
Weitere Informationen: <a class="moz-txt-link-freetext" href="http://www.dfki.de/robotik">http://www.dfki.de/robotik</a>
-----------------------------------------------------------------------
Deutsches Forschungszentrum fuer Kuenstliche Intelligenz GmbH
Firmensitz: Trippstadter Straße 122, D-67663 Kaiserslautern
Geschaeftsfuehrung: Prof. Dr. Dr. h.c. mult. Wolfgang Wahlster
(Vorsitzender) Dr. Walter Olthoff
Vorsitzender des Aufsichtsrats: Prof. Dr. h.c. Hans A. Aukes
Amtsgericht Kaiserslautern, HRB 2313
Sitz der Gesellschaft: Kaiserslautern (HRB 2313)
USt-Id.Nr.: DE 148646973
Steuernummer: 19/673/0060/3
-----------------------------------------------------------------------
_______________________________________________
Rock-dev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Rock-dev@dfki.de">Rock-dev@dfki.de</a>
<a class="moz-txt-link-freetext" href="http://www.dfki.de/mailman/cgi-bin/listinfo/rock-dev">http://www.dfki.de/mailman/cgi-bin/listinfo/rock-dev</a>
</pre>
</blockquote>
<pre wrap="">_______________________________________________
Rock-dev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Rock-dev@dfki.de">Rock-dev@dfki.de</a>
<a class="moz-txt-link-freetext" href="http://www.dfki.de/mailman/cgi-bin/listinfo/rock-dev">http://www.dfki.de/mailman/cgi-bin/listinfo/rock-dev</a>
</pre>
</blockquote>
<br>
<pre class="moz-signature" cols="72">--
Dipl.-Ing. Alexander Duda
Unterwasserrobotik
Robotics Innovation Center
Hauptgeschäftsstelle Standort Bremen:
DFKI GmbH
Robotics Innovation Center
Robert-Hooke-Straße 1
28359 Bremen, Germany
Tel.: +49 421 178 45-6620
Zentrale: +49 421 178 45-0
Fax: +49 421 178 45-4150 (Faxe bitte namentlich kennzeichnen)
E-Mail: <a class="moz-txt-link-abbreviated" href="mailto:Alexander.Duda@dfki.de">Alexander.Duda@dfki.de</a>
Weitere Informationen: <a class="moz-txt-link-freetext" href="http://www.dfki.de/robotik">http://www.dfki.de/robotik</a>
-----------------------------------------------------------------------
Deutsches Forschungszentrum fuer Kuenstliche Intelligenz GmbH
Firmensitz: Trippstadter Straße 122, D-67663 Kaiserslautern
Geschaeftsfuehrung: Prof. Dr. Dr. h.c. mult. Wolfgang Wahlster
(Vorsitzender) Dr. Walter Olthoff
Vorsitzender des Aufsichtsrats: Prof. Dr. h.c. Hans A. Aukes
Amtsgericht Kaiserslautern, HRB 2313
Sitz der Gesellschaft: Kaiserslautern (HRB 2313)
USt-Id.Nr.: DE 148646973
Steuernummer: 19/673/0060/3</pre>
</body>
</html>