Separate the btree maximum key/value sizes from the underlying page size

Separate the btree maximum key/value sizes from the underlying page size, reference #1282.

> It's pretty insane to "put" a 2MB object on a 4KB page -- we could remove
the 'max', but it makes me nervous.

Why? How is that going to be worse than putting it into an overflow item?

On Wed, Dec 10, 2014 at 12:06 PM, Keith Bostic <notifications@github.com>
wrote:

> In dist/api_data.py
> <https://github.com/wiredtiger/wiredtiger/pull/1454#discussion-diff-21577563>
> :
>
> > @@ -226,13 +234,16 @@ def __cmp__(self, other):
> >          data, that is, the limit is applied before any block compression
> >          is done''',
> >          min='512B', max='512MB'),
> > +    Config('leaf_value_max', '0', r'''
> > +        the largest value stored in a leaf node, in bytes.  If set, values
> > +        larger than the specified size are stored as overflow items (which
> > +        may require additional I/O to access). If the size is larger than
> > +        the maximum leaf page size, the page size is temporarily ignored
> > +        when large values are written. The default is one-half the size of
> > +        a newly split leaf page''',
> > +        min='40B',max='100KB'),
>
> It's pretty insane to "put" a 2MB object on a 4KB page -- we could remove
> the 'max', but it makes me nervous.
>
> —
> Reply to this email directly or view it on GitHub
> <https://github.com/wiredtiger/wiredtiger/pull/1454/files#r21577563>.
>