Uploaded image for project: 'JBoss Enterprise Application Platform'
  1. JBoss Enterprise Application Platform
  2. JBEAP-12756

HHH-10617 HHH-10984 Multi-loaded entity bugfixes

    XMLWordPrintable

Description

    Hibernate ORM 5.1 introduced a new feature to enable multi-loading entities, HHH-7572. [1]

    This feature has some bugs that are fixed upstream in 5.2.2 that have not been backported to 5.1:

    • HHH-10617 : Returns results in the same order as specified IDs [2]
    • HHH-10984 : Have multiLoad not return (unflushed) DELETED entities [3]

    Without these bugfixes, results that are returned are surprising for the following reasons:

    1. the returned list of results does not correspond to the list of specified IDs;
    2. the resulting list can have a different length from the list of specified IDs;
    3. the resulting list excludes results for entities that don't exist (instead of a null value that corresponds to the specified ID);
    4. the resulting list can contain duplicated entities that are not due to duplicated IDs being specified; instead, duplicates are due to left outer joins;
    5. the resulting list can contain (non-flushed) deleted entities.

    The main reason I think this could be a blocker is that returning a deleted entity could corrupt data, depending on what the application ultimately does with the deleted entity.

    The fix for HHH-10617/HHH-10984 changes the default by making the resulting List as expected: the i-th entity returned corresponds with the i-th specified ID, or null when that entity does not exist or has been deleted (regardless of whether this operation was flushed).

    [1] https://hibernate.atlassian.net/browse/HHH-7572
    [2] https://hibernate.atlassian.net/browse/HHH-10617
    [3] https://hibernate.atlassian.net/browse/HHH-10984

    Attachments

      Issue Links

        Activity

          People

            gbadner@redhat.com Gail Badner (Inactive)
            gbadner@redhat.com Gail Badner (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: