110 likes | 128 Views
CVSQL 2. The Revenge of the SQL. The present. Read-only access to CVS repository logs Language is a subset of SQL XML interface for returning results Built-in network server JDBC driver. The future. Cleaner client-server design Improved SQL support Support for different log files
E N D
CVSQL 2 The Revenge of the SQL
The present • Read-only access to CVS repository logs • Language is a subset of SQL • XML interface for returning results • Built-in network server • JDBC driver
The future • Cleaner client-server design • Improved SQL support • Support for different log files • Web service • Improved JDBC driver • Distributed Awareness • Security
JDBC Driver • Improve Existing Code • Eliminating hardcoded values • ”1.0” in DatabaseMetaData, “<resp>” in CVSQLAPI, etc • Create more useful errors and exceptions(CVSQLAPI, DatabaseMetaData, etc) • Some messages do not reflect an incorrect method • Some messages are not useful • Improve socket connection handling in CVLSQLAPI • Support for transparent socket reconnection • Better state reporting (socket is really connected?)
JDBC Driver (cont'd) • Improve Existing Code (cont'd) • Improve robustness in CVSQL Server <-> JDBC Connection protocol parsing • Fail gracefully with corrupt or incorrect data • Reduce memory consumption • Add Metadata Support • List database tables and column types • Retrieve ResultSet table information (?) • Rework logging and debugging • Configurable log files (simple), Log4J (flexible),Elimination from Driver (proper?)
Distributed Awarness • Palantir http://www.ics.uci.edu/~asarma/Palantir/ • Non-intrusively break the workspace isolation • Provide real-time awarness to configuration management systems • Possible integration with CVSQL?
CVSQL Core • Backend modularity • Each module provides support for one log file format • Reworked CVS log files support • Client-server design • Proper separation of client and server • Client is “dummy” and only knows how to send the query to the server and how to get the results back • Security • Better handling of users and passwords
CVSQL Core (cont’d) • Improved SQL support • select from multiple tables (JOIN) • new aggregate operators • SQL engine rework • decoupling of parsing from execution • removing hardcoded values • Web Services • Client-server communication using standard XML-RPC protocol
Questions? • Will my vacuum cleaner continue to work with the new CVSQL? • Yes ;-) Although we will make many changes to the system, we will ensure that it stays backwards compatible wherever possible (e.g. existing cvs table columns) • Any more questions? Thank you CVSQL 2 Team