Skip to content

Conversation

@ockernutser
Copy link

Merging of large entity graphs was slowed down by a copy to entity map which was created on the fly for every merged entity.
This created quadratic rising execution time vs nr of entities.
It is resolved by keeping a map copy to entity directly in sync with the existing entity to copy map in the EventCache code.

Merging of large entity graphs was slowed down by a copy to entity map which was created on the fly for every merged entity.
This created quadratic rising execution time vs nr of entities.
It is resolved a keeping a map copy to entity map directly in sync with the existing entity to copy map in the EventCache code.
@stliu
Copy link
Member

stliu commented Nov 25, 2011

would you please open a (improvement) jira for this pull request? thanks

https://hibernate.onjira.com

@ockernutser
Copy link
Author

Created jira: https://hibernate.onjira.com/browse/HHH-6848

-----Original Message-----
From: Strong Liu [mailto:[email protected]]
Sent: vrijdag 25 november 2011 7:30
To: Wim Ockerman (ockermw)
Subject: Re: [hibernate-core] Performance Optimization of in memory merge algorithm. (#208)

would you please open a (improvement) jira for this pull request? thanks

https://hibernate.onjira.com


Reply to this email directly or view it on GitHub:
https://github.com/hibernate/hibernate-core/pull/208#issuecomment-2871686

@gbadner
Copy link
Contributor

gbadner commented Apr 9, 2012

Thanks for the pull request! I believe that this has also come up as a performance issue with Hibernate Search, so it will be great to get this fixed.

I am going to make some changes and create a new pull request.

In particular, I'll add some code to provide safe-guards that ensure that there is a one-to-one correspondence between:

  • the keys in entityToCopyMap and the values in copyToEntityMap
  • the values in entityToCopyMap and the keys in copyToEntityMap

I'll also remove documentation from EventCache that describes the change from old code to new, including the CHANGE and END CHANGE comments. A concise comment for EventCache.copyToEntityMap() is sufficient. The rest is well-documented in HHH-6848 and git will provide the diffs.

I'll create the new pull request shortly.

Gail

@ockernutser
Copy link
Author

Hi Gail,

The superfluous change comments are purely because of company rules when changing open source software and using in a product. You can take from it whatever you want, or rewrite...that's the freedom the open source license model gives you.

Good luck,

Regards,

Wim.

-----Original Message-----
From: gbadner [mailto:[email protected]]
Sent: maandag 9 april 2012 22:44
To: Wim Ockerman (ockermw)
Subject: Re: [hibernate-orm] Performance Optimization of in memory merge algorithm. (#208)

Thanks for the pull request! I believe that this has also come up as a performance issue with Hibernate Search, so it will be great to get this fixed.

I am going to make some changes and create a new pull request.

In particular, I'll add some code to provide safe-guards that ensure that there is a one-to-one correspondence between:

  • the keys in entityToCopyMap and the values in copyToEntityMap
  • the values in entityToCopyMap and the keys in copyToEntityMap

I'll also remove documentation from EventCache that describes the change from old code to new, including the CHANGE and END CHANGE comments. A concise comment for EventCache.copyToEntityMap() is sufficient. The rest is well-documented in HHH-6848 and git will provide the diffs.

I'll create the new pull request shortly.

Gail


Reply to this email directly or view it on GitHub:
#208 (comment)

@sebersole
Copy link
Member

@gbadner Is this pull request out of date?

@stliu
Copy link
Member

stliu commented Sep 5, 2012

@gbadner ? are you still on this pull request?

@brmeyer
Copy link
Member

brmeyer commented Mar 6, 2013

Closing. HHH-6848 was released in 4.1.3.

@brmeyer brmeyer closed this Mar 6, 2013
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants