Alan Hay created Bug HHH-7878
Issue Type: Bug Bug
Affects Versions: 4.1.9, 3.6.9
Assignee: Unassigned
Components: annotations
Created: 19/Dec/12 2:25 AM
Description:

If the target property of a @MapKey annotation is mapped to a SecondaryTable, the SQL select fails as it attempts to query for the map key against the Primary table.

This, if we have a mapping such as the following:

@ManyToMany(fetch = FetchType.EAGER)
@JoinTable(name = "stores_products", joinColumns = @JoinColumn(name = "store_id"), inverseJoinColumns = @JoinColumn(name = "product_id"))
@MapKey(name = "category")
private Map<String, Product> products;

When the 'category' field of entity Product (table = "products") is mapped to a secondary table, the SQL select is issued against "products" rather than this secondary table.

A simple standalone test case is available at the below. Simply run the test case and the issue can be seen from the generated SQL.

https://github.com/alanhay/hibernate-bug-1

Environment: Tested on HSQLDB, MySQL, SQLServer 2008.
Project: Hibernate ORM
Labels: hibernate jpa2 secondarytable
Priority: Major Major
Reporter: Alan Hay
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira