[hibernate-issues] [Hibernate-JIRA] Commented: (HSEARCH-605) @ContainedIn does not work on deletes.

Sanne Grinovero (JIRA) noreply at atlassian.com
Sun Oct 10 16:54:59 EDT 2010


    [ http://opensource.atlassian.com/projects/hibernate/browse/HSEARCH-605?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=38670#action_38670 ] 

Sanne Grinovero commented on HSEARCH-605:
-----------------------------------------

Kyrill, I've closed it as it's not a bug, as we agreed it wasn't meant to be used like this. Still I think you've highlighted an interesting concept and I'm wondering if we couldn't improve on this. If you want to create a unit test for this and attach it to a new issue of type "improvement", I'll be happy to think about it, but can't make promises as I'm not sure if it's technically doable, nor how complex it could be.

> @ContainedIn does not work on deletes.
> --------------------------------------
>
>                 Key: HSEARCH-605
>                 URL: http://opensource.atlassian.com/projects/hibernate/browse/HSEARCH-605
>             Project: Hibernate Search
>          Issue Type: Bug
>          Components: engine
>    Affects Versions: 3.2.1
>            Reporter: Kyrill Alyoshin
>
> So, let's say we have a @Indexed entity Vendor (the parent) that is in a bi-directional @OneToMany relationship with entity Address (the child). Vendor maps the collection of Address'es as @IndexedEmbedded. Address is NOT @Indexed but does map its parent vendor association as @ContainedIn. 
> Whenever Address entity is retrieved and session.delete'ed, the parent Vendor's index is NOT updated. Everything works fine with update operations. 
> This obviously happens because the collection of addresses in parent vendor still contains the deleted address. (If the deleted address is manually removed from collection, everything works fine). 
> Now... I realize that it is not in Hibernate style to automatically severe the association when a child entity is deleted. However, it seems that Hibernate Search should provide such functionality. This does lead to very subtle, hard to diagnose bugs. I assume when Vendor's collection is flushed it is fairly trivial to detect which addresses have been deleted and which not (inside the listener). 

-- 
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