cvsql 2 the revenge of the sql. the present read-only access to cvs repository logs language is a...

11
CVSQL 2 The Revenge of the SQL

Upload: lynn-johnston

Post on 16-Jan-2016

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 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

CVSQL 2

The Revenge of the SQL

Page 2: 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

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

Page 3: 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

The future

• Cleaner client-server design

• Improved SQL support

• Support for different log files

• Web service

• Improved JDBC driver

• Distributed Awareness

• Security

Page 4: 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

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?)

Page 5: 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

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?)

Page 6: 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

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?

Page 7: 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

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

Page 8: 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

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

Page 9: 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

The people

Name Responsibility

Senko Rašić configuration management, SQL parser, CVSQL server

Tomislav Capan XML, XML-RPC, CVSQL client, documentation

Matija Čižmek SQL engine, testing

Matija Slivonja CVS log parser, documentation

Ian Wharton JDBC driver, testing

David Zidar testing, JDBC driver

Abdul Ahad Khan JDBC driver, Palantir evaluation, documentation

Page 10: 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

The work

Page 11: 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

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