Thread

  1. Disk block size issues.

    Darren King <darrenk@insightdist.com> — 1998-01-08T17:02:40Z

    A few things that I have noticed will be affected by allowing the
    disk block size to be other than 8k. (4k, 8k, 16k or 32k)
    
    1. Rules
    
    The rule system currently stores plans as tuples in pg_rewrite.
    Making the block size smaller will accordingly reduce the size of
    the rules you can create.
    
    But, the converse is also true...bigger blocks -> bigger rules.
    
    Are the rules ever going to become large objects?  Is this something
    to put on the TODO to investigate now that Peter has fixed them?
    
    
    2. Attribute limits
    
    Should the size limits of the varchar/char be driven by the chosen
    block size?
    
    Since the current max len is 4k, should I for now advise that the
    block size not be made smaller than the current 8k?  Or could the
    limit be dropped from 4096 to 4000 to allow 4k blocks?
    
    Oracle has a limit of 2000 on their varchar since they allow blocks
    of as little as 2k.
    
    Seems there would be an inconsistency in there with telling the user
    that the text/varchar/char limit is 4096 and then not letting them
    store a value of that size because of the tuple/block size limit.
    
    Perhaps mention this as a caveat also if using 4k blocks?  Are 4k
    block something that someone would be beneficial or only 16k/32k?
    
    On the flip-side of this, uping the max text size though will run
    into the 8k packet size.
    
    I've run thru the regression tests a few times with 4k blocks and
    they seem to pass with the same differences.  Today I will try with
    16k and 32k.  If those work, I'll submit the patch for perusal.
    
    Comments welcome...
    
    darrenk@insightdist.com