[ 
https://issues.apache.org/jira/browse/TAP5-1971?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jochen Kemnade closed TAP5-1971.
--------------------------------
    Resolution: Incomplete

We assume this is no longer relevant and therefore close it.
If you still have this issue in a recent Tapestry version (such as 5.4.1 or 
newer), feel free to provide the necessary information and reopen.

> HibernateGridDataSource should include some workaround or protection agains 
> wrong Projections.rowCount() result
> ---------------------------------------------------------------------------------------------------------------
>
>                 Key: TAP5-1971
>                 URL: https://issues.apache.org/jira/browse/TAP5-1971
>             Project: Tapestry 5
>          Issue Type: Improvement
>          Components: tapestry-hibernate
>    Affects Versions: 5.3.3
>            Reporter: Andrei Arapov
>            Priority: Minor
>              Labels: bulk-close-candidate
>
> In some cases Hibernate's criteria construction like 
> "criteria.setProjection(Projections.rowCount())" returns wrong number of 
> rows. More specifically, for example, if you have some JPA restrictions in 
> you entity annotations (e.g. 
> "   @ManyToOne
>     @JoinColumn(name = "USER_ID", nullable = false)  <---- this one!
>     @NonVisual
>     public UserImpl user; ")
> then such restrictions (for USER_ID is not null) will not be taken in account 
> while building "row-count" query.
> Vice-versa hibernate will use such restrictions in query for getting LIST of 
> entities.
> This behaivour fails, when in entity table appear (e.g. some old) rows with 
> NULL in "USER_ID" (e.g.) columns.
> This is known, but not solved problem for Hibernate, see:
> https://hibernate.onjira.com/browse/HHH-3238
> https://hibernate.onjira.com/browse/HHH-2787
> https://hibernate.onjira.com/browse/HHH-3206
> https://hibernate.onjira.com/browse/HHH-5719
> https://hibernate.onjira.com/browse/HHH-4829
> https://hibernate.onjira.com/browse/HHH-7438
> There by we go into error in HibernateGridDataSource.getRowValue(int index) 
> method: it throws IndexOutOfBoundsException due to row count number is bigger 
> than actual number of selected rows.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to