Update 3.1.2 for XTT
Update release 3.1.2 for XTT is now available and should be used by all current users of the XTT 3 branch.
It fixes an important issue when sequence numbers do not start from zero which may occur, e.g., when the server is restarted while the rest of the systems remains running (which has always been supported behavior, of course).
XTT 3.1 Released
A new release of XTT, version 3.1, is now available via Maven.
Update Update release 3.1.2 is now available and fixes an important issue when sequence numbers do not start from zero. Please use it instead.
Previously, when using the XCF transport and initiating tasks very rapidly, their execution could be out-of-order, because XCF does not guarantee ordered delivery of the invocation messages. XTT 3.1 now includes a feature to ensure in-order execution for tasks from the same client. This behavior is optional, but activated by default, because it is what most people would expect.
XTT 3.1.1 is still fully backwards compatible, but ordering will only work if both client and server use XTT 3.1 and up.
XTT 3 series started
In r2234, work on an integrated version of task trees has started. With these, a task can be composed of a sequence of sub-tasks. The definition of sub-task structure can be provided at deployment time, through a configuration file.
XTT 2.0.6 has been released last week and is now made available through Maven (see Using XTT for installation instructions). The only major functional difference in this version is that it uses RSB 0.6, instead of 0.5. As RSB 0.6 sports a number of improvements, and is mostly backwards compatible in the API, this update is recommended for RSB users.
XCF users might be interested in the Maven support, which now makes adding XTT to your project a breeze. Check out the using xtt through Maven section
After internal use for a while, XTT's 2.0 version is now marked as stable.
Apart from these, you need either xcf4j or rsb 0.5.
Compared to the previous beta, these are the important changes:
- Implemented XML support for RSB (previously, only specific types were possible)
- Removed the use of XOPData, to get rid of the XCF4J dependency
- Refactored the middleware abstraction layer to be independent of (but still contained in) XTT
- Add more support for updateable tasks
- Fix updateSpec for updateable tasks
- Fix origin setting in createDerived
- Fix xpath's in XCF server base classes to accept updates (regression)
- Handle edge cases when update is received before initiation (can happen due to message reordering in XCF)
Acknowledgements¶The 2.0 release includes work by
- Jan Moringen
- Maikel Linke
XTT 2.0 beta
This week, Jan Moringen and I worked together on a new XTT version, which now supports both the eXtensible Communication Framework (XCF), as well as the new Robotic Service Bus (RSB) framework, XCF's successor. While this new version did not undergo much testing so far, unit tests are running and the 2.0 beta can now be download in the Files section (or by clicking on the link).
The XCF version is backwards compatible on the network level, but there have been some slight API changes. Most importantly, instead of passing in an ActiveMemory, the service classes now expect
TaskClientBus implementations matching the middleware used. For the release version, we will add a Factory that can construct the appropriate version automatically.
When used with XCF, XTT requires XCF4J 1.3, Log4J, XOM, Jaxen, and our xmltools library. A bundle for these is available from the Files section. It also integrates with our FTS project, but this is not required.
When used with RSB, XTT requires rsb 0.4, rst, log4j, google protocol buffers, xom, and jaxen. All of these are also included in the dependency jar files in the Files section.
Also available in: Atom