Apache Derby Coding Projects
This page contains a table of useful and hopefully interesting projects that newcomers, Google Summer of Coders, interns, or whoever else is interested can sink their teeth into over a three month period (e.g. a Summer of Coding).
Each project must have at least one mentor and an estimate of the number of people required to complete this over a three month period. It is OK if a project doesn't take a full three months, but we should try to think in terms of three-month increments.
If you are inspired to mentor one of these projects, please add it to
http://wiki.apache.org/general/SummerOfCode2006. Students start proposing projects on May 1, 2006, and proposals are accepted for two weeks, so you should get your proposal up there soon.
For a complete description of the terms of service for the Google Summer of Code, see
http://code.google.com/soc/tos.html
|
Project Name |
Mentor(s) |
Short Description |
Link to Project Page |
Team Size |
|
Documentation backend work |
Jeff Levitt (I would nominate Andrew or Scott Hutinger to replace me though, I think they might be a better fit, if they so desired |
There exists a need for improvement to the PDF generation and the overall presentation of our documentation in general. |
1 |
|
|
SQL PSM Support |
Dan Debrunner |
Proposal to support functions and procedures written in SQL by compiling them to server-side JDBC Java byte code and then executing them using the existing Java routine support. Functionality could then be extended to SQL/PSM with control statements |
|
|
|
Lucene Integration |
Rick Hillegas ? |
Integrate Lucene text search engine into Derby |
?? |
|
|
Improve Derby XML Support |
?? |
Currently Derby XML support is fairly limited. This project would be to move Derby towards full XML support |
?? |
|
|
Add support for shared code |
David Van Couvering |
Currently it is not possible to safely share code between Derby jar files. This proposal would be to identify and implement a mechanism for sharing code that does not cause issues with compatibility in a mixed version environment |
An initial attempt to define the ground rules for this can be found at SharedComponentVersioningGuidelines |
1-2 |
|
Migration tool from MySQL to Derby |
|
|
||
|
Server management tools. |
|
Tools to manage checkpoints/backups, data and log placement, lock monitoring, performance monitoring, etc. Each one of these is its own separate project |
|
|
|
Add incremental support for JMX |
David Van Couvering |
Start with something simple like "is the server up or down" and grow from there. |
|
|
|
Automatic copying of log from the log directory to an archive |
|
|
|
|
|
Implement an LRU-based cache manager to replace the current clock algorithm |
Øystein Grøvlen? |
Derby currently uses a clock algorithm to determine which pages to replace in its page cache. We have indications that this algorithm is far from optimal for some type of loads. Many other database systems use variants of an LRU-based algorithm, i.e. the pages that are least recently used will be candidates for replacement. |
||
|
Network client Quality Improvements |
Kathey Marsden |
Derby introduced the network client JDBC driver with its 10.1.1.0 release. There is still important quality work pending to match the robustness of our embedded Driver. This is a great opportunity to learn about JDBC, XA, and DRDA protocol and become active in the Apache Derby development community. |
?? |