db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mike Matrigali <mikem_...@sbcglobal.net>
Subject Re: Derby architecture/design documents
Date Tue, 01 Feb 2005 21:58:46 GMT
I think some sort of pointers would be nice, and updating the source
files with better comments even nicer.  I can definitely help with
either writing and/or committing better comments in the store code.

Do note that this bigger than a page size stuff is only for people
interested in the internal details of store.  No code above store knows
anything about these page size boundaries, or whether the row/collumn
is long or not.  The store interface hides the implementation from
the clients of store.

There are not limits on row or column size, other than rows have to
fit in a single container and we 64 bit I/O to write those containers so
I guess the limit is something like 2**64 (there are overheads so this
is not exact - it is big enough that I consider it unlimited).  More
real are JVM/OS/hard limits on how big a single file can be, and that
all rows in a single table have to share the space allowed in a single

"Can't fit" does take into account the % reserved for updates and of
course the overhead in the page.  So a table with bigger reserved space
may have different size "long" rows than another table.  This all
happens in StoredPage.java at a very low level where we try to write
the row on the page, and then if it does not fit we "back up" and turn
it into a long row/column.  You won't see any code like if (row size >
constant), because store never knows at insert time how long the row
coming in is because it calls out through interfaces to each of the
collumn datatypes to write themselves out.

RPost wrote:

>>"Dibyendu Majumdar" wrote:
>>I think any questions are fine ... it will only help.
> Would it be useful to put refs to the source file that the comments were
> extracted from? For example, the page header comments are extracted from
> StoredPage.java. A reference to the source file would make it easier for
> users to find the original comments in their original context.
> The section about long rows says 'A row is long if all of it's columns can't
> fit on a single page'.
> 1. Is a row allowed to be larger than the page size?
> 2. Does 'can't fit on a single page take into account the '% of the page to
> keep free for updates'?
> By the way, are you the Dibyendu Majumdar at
> http://www.mazumdar.demon.co.uk/projects.html that is authoring the DM1
> database hosted at SourceForge?

View raw message