[lttng-dev] UST app and lttng-tools compatibility

Mathieu Desnoyers mathieu.desnoyers at efficios.com
Mon Oct 1 11:24:35 EDT 2012

* Mathieu Desnoyers (mathieu.desnoyers at efficios.com) wrote:
> * Francis Giraldeau (francis.giraldeau at gmail.com) wrote:
> > Could the registration process block until the sessiond returns some
> > status?
> The session is not "returning" anything to the application. The
> application is registering to the sessiond, and all the sessiond can do
> is to keep the socket alive or close it.
> Even if we added a "command" that the sessiond could use to tell the
> application it has a wrong version, that would not be 2.0 material, and
> the application wouldn't know about it. Moreover, given we have changed
> the communication protocol, not sure we would like to have this extra
> command as entirely fixed for now, as it would be part of the
> communication protocol (which is not the case for the initial app
> registration, with is part of a lower level protocol).
> > I understand that in commercial setup, the application should
> > not be prevented to start and run normally if tracing is not available
> > or misconfigured.
> By default, we only block the application for up to 3 seconds at
> registration. I think that if we start the application with
> LTTNG_UST_REGISTER_TIMEOUT=-1, the application will, in this case, block
> forever (see man lttng-ust).

Let me take this last part back. That was a pre-morning-coffee
statement. ;) The application will receive a "registration done" message
when the version is found to be incompatible. Therefore, it will never
wait for the incompatible sessiond.

One thing we could do to make transition smoother between future
versions would be to add a new command to let the sessiond send its own
version info to the application. In this command's handler, the
application could show a warning on stderr. This could not apply to 2.0,
but we could do it starting from 2.1.

Thoughts ?



Mathieu Desnoyers
Operating System Efficiency R&D Consultant
EfficiOS Inc.

More information about the lttng-dev mailing list