openjpa-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Abe White (JIRA)" <j...@apache.org>
Subject [jira] Commented: (OPENJPA-175) Eager selects by PagingResultObjectProvider may not use the FetchBatchSize
Date Wed, 21 Mar 2007 22:07:32 GMT

    [ https://issues.apache.org/jira/browse/OPENJPA-175?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12482931
] 

Abe White commented on OPENJPA-175:
-----------------------------------

1. Are you also going to fix InExpression to honor the DBDictionary's new in clause limit?
2. After reviewing the patch some more, I propose the following simplified version:

        // try to find a good page size.  if the known size < batch size, use
        // it.  if the batch size is set, then use that; if it's sorta close
        // to the size, then use the size / 2 to get two full pages rather
        // than a possible big one and small one
        int batch = getFetchConfiguration().getFetchBatchSize();
        int pageSize;
        if (batch < 0)
            pageSize = (int) size;
        else {
            if (batch == 0)
                batch = 50; // reasonable default
            if (size <= batch)
                pageSize = (int) size;
            else if (size <= batch * 2) {
                if (size % 2 == 0)
                    pageSize = (int) (size / 2);
                else
                    pageSize = (int) (size / 2 + 1);
            } else
                pageSize = batch;
        } 

> Eager selects by PagingResultObjectProvider may not use the FetchBatchSize
> --------------------------------------------------------------------------
>
>                 Key: OPENJPA-175
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-175
>             Project: OpenJPA
>          Issue Type: Bug
>    Affects Versions: 0.9.0, 0.9.6
>            Reporter: Srinivasa
>         Attachments: OPENJPA-175-patch.txt, OPENJPA-175-patch.txt
>
>
> The PagingResultObjectProvider during initialization does checks to determine the appropriate
pageSize. While this logic caps the size to 50 and addresses determining an appropriate page
size, it doesn't always conform to the set batch size. For example with the size being 1000
and FetchBatchSize set to say 500, the page size is determined to be 50 resulting in eager
selects happening in batches of 50 when the user expects it to be in batches of 500. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message