CloneSet398


Previous CloneSetNext CloneSetBack to Main Report
Clone
Mass
Clones in
CloneSet
Parameter
Count
Clone
Similarity
Syntax Category
[Sequence Length]
17240.981statement_list[10]
Clone AbstractionParameter Bindings
Clone Instance
(Click to see clone)
Line CountSource Line
Source File
11728
src/NHibernate/Hql/Ast/ANTLR/Exec/MultiTableDeleteExecutor.cs
21728
src/NHibernate/Hql/Ast/ANTLR/Exec/MultiTableUpdateExecutor.cs
Clone Instance
1
Line Count
17
Source Line
28
Source File
src/NHibernate/Hql/Ast/ANTLR/Exec/MultiTableDeleteExecutor.cs

                        if ( !Factory.Dialect.SupportsTemporaryTables)
                        {
                                throw new HibernateException("cannot perform multi-table deletes using dialect not supporting temp tables");
                        }

                        var deleteStatement = (DeleteStatement) statement;

                        FromElement fromElement = deleteStatement.FromClause.GetFromElement();
                        string bulkTargetAlias = fromElement.TableAlias;
                        persister = fromElement.Queryable;

                        idInsertSelect = GenerateIdInsertSelect(persister, bulkTargetAlias, deleteStatement.WhereClause);
                        log.Debug("Generated ID-INSERT-SELECT SQL (multi-table delete) : " + idInsertSelect);

                        string[] tableNames = persister.ConstraintOrderedTableNameClosure;
                        string[][] columnNames = persister.ContraintOrderedTableKeyColumnClosure;
                        string idSubselect = GenerateIdSubselect(persister);


Clone Instance
2
Line Count
17
Source Line
28
Source File
src/NHibernate/Hql/Ast/ANTLR/Exec/MultiTableUpdateExecutor.cs

                        if ( !Factory.Dialect.SupportsTemporaryTables)
                        {
                                throw new HibernateException("cannot perform multi-table updates using dialect not supporting temp tables");
                        }
                        var updateStatement = (UpdateStatement) statement;

                        FromElement fromElement = updateStatement.FromClause.GetFromElement();
                        string bulkTargetAlias = fromElement.TableAlias;
                        persister = fromElement.Queryable;

                        idInsertSelect = GenerateIdInsertSelect(persister, bulkTargetAlias, updateStatement.WhereClause);
                        log.Debug("Generated ID-INSERT-SELECT SQL (multi-table update) : " + idInsertSelect);

                        string[] tableNames = persister.ConstraintOrderedTableNameClosure;
                        string[][] columnNames = persister.ContraintOrderedTableKeyColumnClosure;

                        string idSubselect = GenerateIdSubselect(persister);


Clone AbstractionParameter Count: 4Parameter Bindings

if ( !Factory.Dialect.SupportsTemporaryTables)
{
   throw new HibernateException( [[#variable6c5375c0]]);
}
var [[#variable70e49ac0]]= ( [[#variable2d305b60]])statement;
FromElement fromElement = [[#variable70e49ac0]].FromClause.GetFromElement();
string bulkTargetAlias = fromElement.TableAlias;
persister = fromElement.Queryable;
idInsertSelect = GenerateIdInsertSelect(persister, bulkTargetAlias, [[#variable70e49ac0]].WhereClause);
log.Debug( [[#variable6c79c200]]+ idInsertSelect);
string[] tableNames = persister.ConstraintOrderedTableNameClosure;
string[][] columnNames = persister.ContraintOrderedTableKeyColumnClosure;
string idSubselect = GenerateIdSubselect(persister);
 

CloneAbstraction
Parameter Bindings
Parameter
Index
Clone
Instance
Parameter
Name
Value
11[[#6c5375c0]]
"cannot perform multi-table updates using dialect not supporting temp tables" 
12[[#6c5375c0]]
"cannot perform multi-table deletes using dialect not supporting temp tables" 
21[[#70e49ac0]]
updateStatement 
22[[#70e49ac0]]
deleteStatement 
31[[#2d305b60]]
UpdateStatement 
32[[#2d305b60]]
DeleteStatement 
41[[#6c79c200]]
"Generated ID-INSERT-SELECT SQL (multi-table update) : " 
42[[#6c79c200]]
"Generated ID-INSERT-SELECT SQL (multi-table delete) : "