private void setUpPrettyFullBuffers(final int type, final int valueLength, boolean discontinuous)
            throws PersistitException {
        b1.init(type);
        b2.init(type);
        final boolean isData = type == Buffer.PAGE_TYPE_DATA;

        int a, b;

        // load page A with keys of increasing length
        for (a = 10;; a++) {
            setUpDeepKey(ex, 'a', a, isData ? 0 : a + 1000000);
            setUpValue(isData, valueLength);
            if (b1.putValue(ex.getKey(), vw) == -1) {
                a -= 1;
                break;
            }
        }

        // set up the right edge key in page A
        setUpDeepKey(ex, 'a', a, isData ? 0 : -1);
        ex.getValue().clear();
        b1.putValue(ex.getKey(), vw);

        // set up the left edge key in page B
        setUpDeepKey(ex, 'a', a, isData ? 0 : a + 1000000);
        setUpValue(isData, valueLength);
        b2.putValue(ex.getKey(), vw);

        // load additional keys into page B
        for (b = a;; b++) {
            setUpDeepKey(ex, discontinuous && b > a ? 'b' : 'a', b, b + 1000000);
            setUpValue(isData, valueLength);
            if (b2.putValue(ex.getKey(), vw) == -1) {
                break;
            }
        }
        assertTrue("Verify failed", b1.verify(null, null) == null);
        assertTrue("Verify failed", b2.verify(null, null) == null);
    }