[
http://opensource.atlassian.com/projects/hibernate/browse/HHH-3011?page=c...
]
MG commented on HHH-3011:
-------------------------
It needs to know whether object was saved or not before. So it is not equivalent.
I need to pass detached object (hibernate doesn't know anything about it), and do
insert or update without 2 trips to database (without extra select).
I do not believe it is possible in current hibernate implementation. However this is very
common ETL pattern.
merge() optimization for Oracle dialect
---------------------------------------
Key: HHH-3011
URL:
http://opensource.atlassian.com/projects/hibernate/browse/HHH-3011
Project: Hibernate3
Issue Type: Improvement
Components: core
Reporter: MG
Priority: Minor
merge() optimization for Oracle dialect.
Since 9i Oracle has a MERGE statement which is very useful to save round trips to
database in merge() call
which will make dramatic improvement for performance of loading large row sets.
MERGE command processes the conditional INSERT-or-UPDATE within a single statement.
So instead of doing 'select' first to detect whether entity is in database or not
(This is one round trip to DB)
and then issuing 'update' or 'insert' all of it could be done in one
statement with no extra round trips using oracle SQL MERGE statement.
http://www.oracle.com/technology/products/oracle9i/daily/Aug24.html
--
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....
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira