[Vortex] vortex alive protocol

Francis Brosnan Blazquez francis at aspl.es
Fri Oct 8 11:58:29 CEST 2010


Hi Dexter,

> Ok. After some hours of investigation here's what I found:
> 
> When I started to use the alive feature, it went to an infinite loop
> on this line: vortex_channel.c:8455
> This happened because the incoming_msg list length was always growing
> so it never reached the end.
> And I think this growing happened because in vortex_alive.c there was
> no vortex_channel_send_rpy, only
> vortex_channel_send_msgs.
> 
> After I modified vortex_alive.c with the attached patch, it seems that
> it is working as it should. Though I'm not
> really aware of the concept, but I hope this will help you sort things out.

Certainly! Thanks for the patch it really helped. It fixed various
issues at the alive implementation. 

However, after applying it I found that test cases where still failing
sometimes. After giving a try to the problem I found that it was
required to separate channel alive creation from the check itself due to
the possibility that the alive check monopolize the thread planner,
causing the channel creation itself to not advance.

Checkout latest vortex version from svn [1] to see if it still fixes the
issue. Keep in mind that [1] also includes modifications in other files
than vortex_alive.c which are required to improve stability.

> Pls. let me know if the concept was different from what I've modified,
> and/or if you've managed to fix this.

Yes you were on the right direction. I don't know how alive
implementation was not causing more problems :-? (was clearly broken).

Thanks for reporting and the patch Dexter!

[1] https://dolphin.aspl.es/svn/publico/af-arch/trunk/libvortex-1.1/

> thx.
> 
> On Tue, Oct 5, 2010 at 2:06 PM, DEXTER <mydexterid at gmail.com> wrote:
> > Ohh.. a piece of information:
> > the next 6 runs of this test passed ok, the 7th failed again. So this
> > could be a race condition somewhere...
> >
> > On Tue, Oct 5, 2010 at 2:00 PM, DEXTER <mydexterid at gmail.com> wrote:
> >> Hi Francis,
> >>
> >> I'm trying to put the alive protocol in practice, and have some
> >> problems with it, though it could be on our side.
> >> So just to be sure I ran the test_16 regression test, and i get this:
> >>
> >> INFO: running test=test_16
> >> INFO: running test against localhost, with BEEP TUNNEL proxy located
> >> at: localhost..
> >> INFO: HTTP proxy located at: localhost:3128..
> >> INFO: Checking to run test: test_16..
> >> Test 16: checking alive with check-perid=20000, and unreply count=0
> >> Test 16: waiting connection to be detected to be closed..
> >> Test 16: Connection closed conn id=1..
> >> Test 16: ok, connection close detected..
> >> Test 16: checking alive with check-perid=10000, and unreply count=4
> >> Test 16: expected proper channel creation while checking alive profile..
> >> Test 16: Check ALIVE profile [ FAILED ]
> >>
> >> is this intended? :)
> >>
> >
> _______________________________________________
> Vortex mailing list
> Vortex at lists.aspl.es
> http://lists.aspl.es/cgi-bin/mailman/listinfo/vortex
-- 
Francis Brosnan Blázquez <francis.brosnan at aspl.es>
ASPL
91 134 14 22 - 91 134 14 45 - 91 116 07 57

AVISO LEGAL
 
En virtud de lo dispuesto en la Ley Orgánica 15/1999, de 13 de
diciembre, de Protección de Datos de Carácter Personal, le informamos de
que sus datos de carácter personal, recogidos de fuentes accesibles al
público o datos que usted nos ha facilitado previamente, proceden de
bases de datos propiedad de Advanced Software Production Line, S.L.
(ASPL).
 
ASPL garantiza que los datos serán tratados con la finalidad de mantener
las oportunas relaciones comerciales o promocionales con usted o la
entidad que usted representa. No obstante, usted puede ejercitar sus
derechos de acceso, rectificación, cancelación y oposición dispuestos en
la mencionada Ley Orgánica, notificándolo por escrito a ASPL -
Protección Datos, C/Antonio Suárez 10 A-102, 28802, Alcalá de Henares
(Madrid).



More information about the Vortex mailing list