Release notes | ![]() print-friendly |
- Release 1.0.5 - 09/25/2003
- Release 1.0.4 - 09/22/2003
- Release 1.0.3 - 09/08/2003
- Release 1.0.2 - 08/28/2003
- Release 1.0.1 - 08/01/2003
- Release 1.0.0 - 07/17/2003
- Notice
- Release 0.2.4 - 03/10/2003
- Release 0.2.3 - 02/04/2003
- Release 0.2.2 - 01/20/2003
- Release 0.2.1 - 01/14/2003
- Release 0.1.1 - 01/16/2002
- Release 0.1.0 - 01/11/2002
Release 1.0.5 - 09/25/2003
A maintenance release, mostly refactoring of the code structure:
- Created solar.api.Id/Guid classes and applied where appropriate in whole package.
- Added comm subpackages to most services, putting service-specific events and requests.
- Made solar.api.Request the base class of all typed requests.
- Disabled routing service, relies on Pastry instead.
- Rewrote solar.service.dispatch as a transport management service.
- Removed the inbound queue out of transport service, used notification interface instead.
- Improved solar.service.transport package to allow direct sending of serialized objects and support of headers.
- Added solar.service.rmtobj package that can be used to track remote objects.
- Removed solar.service.timer package and replaced with Java timer utility.
Release 1.0.4 - 09/22/2003
This is a maintenance release:
- Fixed Planet to let command line options overwrite those in config file.
- Added a new Pastry socket protocol to replace the wire protocol.
- Added a patch to Pastry wire protocol, to separate TCP/UDP and expose the outbound queue.
- Changed package name solar.service.dag to solar.service.dan to be consitent with other documents.
- Added a Java Syslog parser, useful to deal with live data stream to prevent block buffering of pipes.
- Fixed "localhost" infinite loop bug.
- Improved Compass application, added google tab and integrated with Syslog-SNMP IP locator.
Release 1.0.3 - 09/08/2003
Some new features and bug fixes:
- Added first-cut compass application framework under campus package.
- Rewrote the SyslogSource to use standard tags.
- Reorganized constants, exceptions, and some debug output.
- Fixed circular method invoking of RPC service.
- First-cut implementation of distributed directory service.
- Assigned serialization version ID to all serializable classes.
- Added a DHT method (getAddressByKey) to transport service.
- Changed directory lookup interface, returns a list of Advertisements instead of a table of Name and NameRecord.
Release 1.0.2 - 08/28/2003
This is a maintenance release:
- Added Yurong's Syslog source and operator package.
- Used a workaround to get local (face) IP address, but requires connected socket to an external server. Previous InetAddress.getLocalHost() does not work well.
- Added PACK service allowing customized flow-control policies. It is not integrated with the rest of Solar yet.
- Modified composition language so a pipe can be given a type, either "push", "pull", or "mixed". The default pipe type is "push". Attribute "class" of filter is changed to "classname". The "name" attribute for pipe is no longer enforced. See an example in the user manual.
- Added support to mutliple Planets, namely, the sources/sensors and sinks/applications do not have to connect to the same Planet.
- Refactored DagService package with GraphManager, NodeManager, and PipeConnector classes.
- Integrated Scribe to be the multicast substrate.
- Changed the PastryTransportService to use new Pastry 1.3.
Release 1.0.1 - 08/01/2003
This is a maintenance release:
- Changed the syntax of the XML composition language.
- Added the support for input/output named ports of FAP model.
- Added support for context-sensitive naming.
- Added Versus source and operators package and meeting detection app.
- The files of Solar website is put into repository under web/
Release 1.0.0 - 07/17/2003
In this release, Solar has been significantly re-designed and re-built. It features a distributed Filter-and-Pipe (FAP) model across an overlay network. Each overlay node, Planet, employs a service-oriented construction model resulting in a flexible implementation (so far ;-). This release makes available only most basic functions to get you started:
- You can write a source and advertise a name for it into Solar.
- You can make name lookup to find sources.
- You can write an application to subscribe to existing sources to receive events.
- Context-sensitive naming is not available yet.
- It currently runs as one-node system, Planet overlay is coming soon.
Notice
Release 0.2.4 - 03/10/2003
This is a maintenance release.
- Modified Versus source so it now works reliably on both Windows and new Linux boxes.
- Restructured versus and some other packages. Please check the javadoc, you may need to update "import" section of your source code.
- Added some statistic analysis tools.
- Added comment tokens into subscription language, i.e., "/* comment */".
- Added DmlEvent, which allows hierarchical attributes and multiple attributes can have the same tag.
- Added jitter networking package.
- Added grill distributed testing package (not fully working yet).
- If an operator's event handler throws an exception, it will be immediately terminated.
Release 0.2.3 - 02/04/2003
This release serves as a stamp before some major updates I planned for Solar. It includes following updates:
- Cleaned synchronization code for operator loading on Planet.
- Added -dsr option to Planet command line so it can connects to any INS DSR, default DSR to use is on the localhost with the Planet.
- Added -inr and -inrport (optional) to Planet command line so it can connects to any INS Resolver.
- Removed some internal attributes from events before hand them to applications and operators.
- Added a simple meeting detector for room 116.
Release 0.2.2 - 01/20/2003
This release includes following updates:
- Removed redundant operator loading.
- Added helper methods in AppStub to read graph spec from file.
- Implemented un-subscribe and un-advertise event handler.
- Made AppStub's request methods as blocking calls, and will throw the exceptions caused at the Planet side by the request.
- Implemented SerializedEvent, which can carry arbitrary objects.
- Added launch() method to AppStub and its handler to Planet.
- Added query() method to AppStub and its handler to Planet.
- Added solar.util.Client as an interactive tool to interface with Solar.
- Fixed a bug (Event.makeCopy()) for publishing to multiple subscribers.
Release 0.2.1 - 01/14/2003
This release is a major update from previous 0.1.x versions. While the philosophy of Solar stays more-or-less unchanged, many aspects of the design space and implementations have changed as the system evolves and as we gain more experiences from class and by building applications.
- Events are represented as a set of attributes (tag-value pairs) instead of arbitrary Java objects.
- Context-sensitive naming space has been implemented, and we use a more flexible and expressive attribute-based naming scheme than a tree structured naming mechanism.
- We developed our own subscription language in favor of previous XML-based language for its simplicity and flexibility.
- We used UDP for event transmission for better flow control (in development) than TCP.
- The role of Star has been reduced to minimum to prevent a central failure point. Instead, the operator deployment is taken care of by the servicing Planet to which the application connects to.
Release 0.1.1 - 01/16/2002
This release fixed the bugs and improved as follows:
- Two planets have one bi-directional connection now, instead of two one-way connections in previous release.
- Local events are directly dispatched without going through network interface.
- Improved telnet support on the Planet and Star.
- Fixed the bug that you have to specify a parameter for every operator in the subscription request.
- Integrated the Versus source developed by Kazuhiro Minami.
- Implemented state push.
Release 0.1.0 - 01/11/2002
This is the first release of Solar system. This release is a quick prototype and implemented most basic features of Solar system. It represents the event as Java objects and passes them using Java serialization directly from publishers to subscribers. Instead of the context-sensitive names, it implements a flat name space as a start. The subscription language used to construct an event-flow tree is based on XML.