Details
-
Improvement
-
Status: Closed
-
Major
-
Resolution: Fixed
-
10.9.1.0
-
None
-
None
-
Newcomer, Patch Available
Description
I have found some discrepancies between Derby code and the description of the stored page format found on our web site (http://db.apache.org/derby/papers/pageformats.html):
1) The website correctly says that the page header is 56 bytes long. However, you get 58 bytes if you add up the values in the left column of http://db.apache.org/derby/papers/pageformats.html#storedpage. The extra 2 bytes come from the inclusion of an unsigned short representing "% of the page to keep free for updates". That field does not appear in StoredPage.readPageHeader(). The field should be removed from the web site page.
2) That table has an additional problem: the "spare for future use (encryption uses to write random bytes here)" field is correctly listed as being 4 bytes long (in the left column) but the middle column says that it is a long. That middle column should say that the value is an integer.
3) Although the first 4 bytes of the AllocPage header are devoted to a Formatable ID, the actual Formatable ID only occupies the leading 2 bytes of the page. The next 2 bytes are unused. The first line of the "Format of Alloc Page" table should note this fact.
4) There is no RECORD_INITIAL bit in the record header status field.
Attachments
Attachments
Issue Links
- relates to
-
DERBY-5201 Create tools for reading the contents of the seg0 directory
- Open