[hibernate-issues] [Hibernate-JIRA] Commented: (HHH-3011) merge() optimization for Oracle dialect

MG (JIRA) noreply at atlassian.com
Wed Dec 12 14:21:56 EST 2007


    [ http://opensource.atlassian.com/projects/hibernate/browse/HHH-3011?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_29148 ] 

MG commented on HHH-3011:
-------------------------

I feel a need for this type of functionality for performance reasons.
Can it be done on Hibernate StatelessSession?
I think on if we add merge() method on StatelessSession it can be done generic for other databases as well
using something like

begin
   update row
   if (rows_updated <= 0)
   then
      insert row
   endif
end

and for Oracle it could just do MERGE?

What do you think?




> 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.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the hibernate-issues mailing list