db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mike Matrigali (JIRA)" <j...@apache.org>
Subject [jira] [Created] (DERBY-5799) add more info on when Derby chooses 32k page size for tables.
Date Tue, 05 Jun 2012 21:29:23 GMT
Mike Matrigali created DERBY-5799:
-------------------------------------

             Summary: add more info on when Derby chooses 32k page size for tables.
                 Key: DERBY-5799
                 URL: https://issues.apache.org/jira/browse/DERBY-5799
             Project: Derby
          Issue Type: Improvement
          Components: Documentation
    Affects Versions: 10.8.2.2
            Reporter: Mike Matrigali
            Priority: Minor


Enhance the following documentation to explain all cases when Derby will default a table to
32k.
current doc:
http://db.apache.org/derby/docs/10.8/ref/rrefproper40688.html

1) better describe what "long" means.  Originally this was clear as it meant just datatypes
with
the "long" qualifier.  Now it also includes Blob and Clob columns.   Not sure if we should
list
all the types, or just something like long, Blob and/or Clob.

2) Derby will also choose 32k if the approximate length of the columns declared at create
time is greater than 4k.  Approximate is used as each different datatype may or may not be
fixed length
when stored on the page.  Character data may take 1, 2, or 3 bytes per character, obviously

variable length data like varchar can't be known at create time, ...
I don't think we should try to document exact derby algorithm, rather doc that Derby will
default
to what it thinks should be the best size of either 4k or 32k unless user chooses to override.
 I
do think it is useful to doc that Derby will include both existence of long columns and the
estimate
length of the row.

Here some comments from Property.java that describes constants used, if these constants every
change then documentation would change also:
/**
     * The default page size to use for tables that contain a long column.
     **/
    public static final String PAGE_SIZE_DEFAULT_LONG = "32768";

    /**
     * The bump threshold for pages sizes for create tables
     * If the approximate column sizes of a table is greater than this
     * threshold, the page size for the tbl is bumped to PAGE_SIZE_DEFAULT_LONG
     * provided the page size is not already specified as a property
     **/
    public static final int TBL_PAGE_SIZE_BUMP_THRESHOLD = 4096;

    /**
     * The bump threshold for pages size for index.
     * If the approximate key columns of an index is greater than this
     * threshold, the page size for the index is bumped to PAGE_SIZE_DEFAULT_LON
G
     * provided the page size is not already specified as a property
     **/
    public static final int IDX_PAGE_SIZE_BUMP_THRESHOLD = 1024;




--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message