|
Size: 2618
Comment: Link to new page on package conventions
|
← Revision 8 as of 2009-09-20 22:11:25 ⇥
Size: 2643
Comment: converted to 1.6 markup
|
| Deletions are marked like this. | Additions are marked like this. |
| Line 2: | Line 2: |
| [[TableOfContents]] | <<TableOfContents>> |
| Line 5: | Line 5: |
| 1. The [http://db.apache.org/derby/derby_downloads.html#Derby+source+code code], describes exactly how it works. B) 1. Comments in the code, usually match the code, and hopefully will add value as to why the code is as it is, rather than just describing the code exactly. The complete [http://db.apache.org/derby/javadoc/engine/ javadoc of all the classes, methods & fields] is generated nightly. If more comments could be added then please submit a patch. 1. Discussions in the [http://mail-archives.eu.apache.org/mod_mbox/db-derby-dev mail list archives for derby-dev] at db.apache.org. The web-site has a [http://db.apache.org/derby/papers/derby_htw.html collection of useful links] to past discussions. 1. [http://db.apache.org/derby/papers/index.html Papers and presentations] on web site. |
1. The [[http://db.apache.org/derby/derby_downloads.html#Derby+source+code|code]], describes exactly how it works. B) 1. Comments in the code, usually match the code, and hopefully will add value as to why the code is as it is, rather than just describing the code exactly. The complete [[http://db.apache.org/derby/javadoc/engine/|javadoc of all the classes, methods & fields]] is generated nightly. If more comments could be added then please submit a patch. 1. Discussions in the [[http://mail-archives.eu.apache.org/mod_mbox/db-derby-dev|mail list archives for derby-dev]] at db.apache.org. The web-site has a [[http://db.apache.org/derby/papers/derby_htw.html|collection of useful links]] to past discussions. 1. [[http://db.apache.org/derby/papers/index.html|Papers and presentations]] on web site. |
| Line 15: | Line 15: |
| || [http://db.apache.org/derby/papers/derby_arch.html Architecture Overview] || [http://db.apache.org/derby/papers/versionupgrade.html Version Numbering Scheme] || [http://db.apache.org/derby/papers/MiscPresentations.html#Colorado+Software+Summit+2004 Internals of Derby] || JavaPackageConventions || | || [[http://db.apache.org/derby/papers/derby_arch.html|Architecture Overview]] || [[http://db.apache.org/derby/papers/versionupgrade.html|Version Numbering Scheme]] || [[http://db.apache.org/derby/papers/MiscPresentations.html#Colorado+Software+Summit+2004|Internals of Derby]] || JavaPackageConventions || |
| Line 17: | Line 17: |
| Also the presentations (click presentations in the left tab) on the web-site's [http://db.apache.org/derby/papers/index.html papers] page provide a useful overview. | Also the presentations (click presentations in the left tab) on the web-site's [[http://db.apache.org/derby/papers/index.html|papers]] page provide a useful overview. |
| Line 19: | Line 19: |
| Derby supports an [:JdbcDriverLinks:embedded type 4 JDBC driver and a client type 4 JDBC driver]. | Derby supports an [[JdbcDriverLinks|embedded type 4 JDBC driver and a client type 4 JDBC driver]]. |
| Line 21: | Line 21: |
| [http://issues.apache.org/jira/browse/DERBY-310 same level of api support and identical behaviour]. | [[http://issues.apache.org/jira/browse/DERBY-310|same level of api support and identical behaviour]]. |
| Line 23: | Line 23: |
| Derby's [:NetworkServer:network server] adds the traditional client/server mode to the emebedded database engine. | Derby's [[NetworkServer|network server]] adds the traditional client/server mode to the emebedded database engine. |
| Line 26: | Line 26: |
| Derby's [:SqlLayerLinks:SQL layer] sits below the embedded JDBC driver and above the store. It handles parsing, compilation and execution of SQL. | Derby's [[SqlLayerLinks|SQL layer]] sits below the embedded JDBC driver and above the store. It handles parsing, compilation and execution of SQL. |
| Line 28: | Line 28: |
| Derby's [:StoreLayerLinks:store layer] sits below the SQL layer and above the Java i/o filesystem, though the file system layer is abstracted allowing alternate storage such as Jar files. | Derby's [[StoreLayerLinks|store layer]] sits below the SQL layer and above the Java i/o filesystem, though the file system layer is abstracted allowing alternate storage such as Jar files. |
| Line 30: | Line 30: |
| Derby's [:ServicesLinks:services] are generic areas of code that are not specific to JDBC, SQL or the store layer. | Derby's [[ServicesLinks|services]] are generic areas of code that are not specific to JDBC, SQL or the store layer. |
How Derby Works
Where to Look
Information on Derby's internals is scattered over a number of locations:
The code, describes exactly how it works.
Comments in the code, usually match the code, and hopefully will add value as to why the code is as it is, rather than just describing the code exactly. The complete javadoc of all the classes, methods & fields is generated nightly. If more comments could be added then please submit a patch.
Discussions in the mail list archives for derby-dev at db.apache.org. The web-site has a collection of useful links to past discussions.
Papers and presentations on web site.
- Functional and design specs attached to Jira issues, encouraged when a feature is implemented.
- Wiki, please add as much information as you can.
The page attempts to provides links to all the information about how Derby works.
General
Also the presentations (click presentations in the left tab) on the web-site's papers page provide a useful overview.
JDBC
Derby supports an embedded type 4 JDBC driver and a client type 4 JDBC driver. The goal is for the two drivers to have the same level of api support and identical behaviour.
Network Server
Derby's network server adds the traditional client/server mode to the emebedded database engine. The supported protocol is DRDA over TCP/IP using Java sockets.
SQL
Derby's SQL layer sits below the embedded JDBC driver and above the store. It handles parsing, compilation and execution of SQL.
Store
Derby's store layer sits below the SQL layer and above the Java i/o filesystem, though the file system layer is abstracted allowing alternate storage such as Jar files.
Services
Derby's services are generic areas of code that are not specific to JDBC, SQL or the store layer.