DIRACGrid/DIRAC — pull request #1111 by ubeda (2012-12-12 08:57:21+00:00)
Title: New RSS ( conflicts solved )

( I copied over the comments from the previous PR )

This is the working prototype for the new RSS following the RFC5, bugs / flaws to be discovered with real load.

In general, much less code and cleaner.

* New DB schema using python definition of tables, having three big blocks: Site, Resource and Node.
* MySQLMonkey functionality almost fully covered by DB module, eventually will disappear.
* Services updated to use new database.
* Clients updated to use new database.
* Synchronizer updated to fill the new database. When helpers will be ready, it will need an update.
* One ElementInspectorAgent, configurable now is hardcoded.
* New Generic StateMachine using OOP.
* Commands and Policies simplified.
* ResourceStatus using internal cache, needs to be tested with real load.

===

Database schema has changed for obvious reasons ( namely, rfc5 ), and clients were updated accordingly. It totally put upside down RSS the reordering of the CS.

Then, there are three parts:
a) ResourceStatus module to either call CS / RSS
b) Monitoring side
c) Other modules using RSS.Utilities

The first point, no big changes, just updated to use the new method on the rss client.
The second point, everything has been updated. I'd say 80% of the changes are here. Still needs to be polish, but in general terms works fine. In any case, nobody is using this part of the code AKAIK.
Third point, I have to check carefully because RSS.Utilities is completely new. As I understand the RSS.Utilities module, it should not be accessed from outside RSS, I'll double check just in case.

In summary, this RSS version will replace completely older versions of RSS. The only piece of code which is "officially" used by other modules is ResourceStatus, which remains as it was ( with the obvious update ). So, no conflicts are expected.