[hibernate-issues] [Hibernate-JIRA] Created: (HSEARCH-782) Unnecessary loading of @ContainedIn entities causes big performance hit

Adam Harris (JIRA) noreply at atlassian.com
Thu Jun 23 16:36:53 EDT 2011


Unnecessary loading of @ContainedIn entities causes big performance hit
-----------------------------------------------------------------------

                 Key: HSEARCH-782
                 URL: http://opensource.atlassian.com/projects/hibernate/browse/HSEARCH-782
             Project: Hibernate Search
          Issue Type: Bug
          Components: engine
    Affects Versions: 3.4.0.Final
         Environment: Hibernate 3.6.3
MS SQL Server 2005
            Reporter: Adam Harris
         Attachments: log4j.properties, optimizations.zip, org.hibernate.search.test.engine.optimizations.CollectionUpdateEventTest2-output.txt

This bug is somewhat related to HSEARCH-679 where I have added some comments.  

Here is a simplified model:

{code:title=A.java|borderStyle=solid}
public class A {
    @Field
    private String name;

    @ContainedIn
    private Collection<B> b;
}
{code}


{code:title=B.java|borderStyle=solid}
@Indexed
public class B {
    @Field 
    private String name;

    @IndexEmbedded
    private A a;
}
{code}


The basic problem is that every time a new instance of B is created and added to A's collection, all of the B instances in that collection have their index recreated.  The reason this is a problem is that nothing in A has changed (e.g. the "name" field).  There is no new information to add to all of the B indexes.  As the number of objects in the collection grows, this becomes are real performance hit.

It seemed like HSEARCH-679 was trying to address this problem, but this may be a little different scenario.

I'm attaching some sample code and my log file that demonstrates the extra index events.  Please see line 519 of the surefire log file.



-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the hibernate-issues mailing list