Hi Mamta,
  As I said in one of earlier mails.
> I still feel the insatnceof checking is necessary because I want to get
>     the correlation name from the FromBaseTable node and not a
>     FromSubQuery
>     node.

I would not want to get/assign a correlation name where it would be meaningless.

~ Shreyas

Mamta Satoor wrote:

Hi Shreyas,
I definitely agree that just changing sqlgrammar.jj is not enough. There are indeed changes required in DeleteNode. I am just curious though if it will be sufficient to just have fbt.correlationName = targetTable.correlationName; in DeleteNode. You sure know this code more than me and chances are we need the if statements and I am trying to understand the rationale behind it. thanks for your patience,
Mamta

On 6/2/05, *Shreyas Kaushik* <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>> wrote:

    Hi Mamta,

       Couple of tests in refactions1.sql were failing. There is an
    earlier
    mail I sent out that had the failures when I just did the changes to
    sqlgrammar.jj.
    I will forward that mail to you.

    thanks
    Shreyas

    Mamta Satoor wrote:

    > Hi Shreyas,
    >
    > Can you please give an example delete sql where not having
    instanceof
    > check will cause a problem?
    >
    > thanks,
    > Mamta
    >
    >
    > On 6/2/05, *Shreyas Kaushik* <[EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>
    > <mailto: [EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>>> wrote:
    >
    >     Hi Mamta,
    >
    >     I still feel th insatnceof checking is necessary because I
    want to get
    >     the correlation name from the FroomBaseTable node and not a
    >     FromSubQuery
    >     node.
    >
    >     thanks
    >     Shreyas
    >
    >     Mamta Satoor wrote:
    >
    >     > Hi Shreyas,
    >     >
    >     > In order to avoid one assignment, the code is having to
    >     instantiate a
    >     > new object and do an if check on it and then do the
    assignment.
    >     I am
    >     > not sure if we should go through all this extra code when an
    >     > additional comment can describe what is the assignment for.
    >     >
    >     > Also, the code checks for FromVTI because it needs to do
    special
    >     > coding for FromVTI. But, to me, it looks like that is not the
    >     case for
    >     > the check that you have.
    >     >
    >     > Does anyone else on the list have comments on the 2 if
    statements in
    >     > DeleteNode?
    >     >
    >     > thanks,
    >     > Mamta
    >     > On 6/1/05, *Shreyas Kaushik* < [EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>
    >     <mailto:[EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>>
    >     > <mailto: [EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>
    >     <mailto:[EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>>>> wrote:
    >     >
    >     >     Hi Mamta,
    >     >
    >     >     Thanks for your comments. Please see inline.
    >     >
    >     >     ~Shreyas
    >     >
    >     >     Mamta Satoor wrote:
    >     >
    >     >     > Hi Shreyas,
    >     >     >
    >     >     > I reviewed your code briefly and it looks good. Couple
    >     comments
    >     >     >
    >     >     > 1)In DeleteNode.java, you check if correlationName
    is not null
    >     >     (copied
    >     >     > your code below for reference)
    >     >     >>+                        if(targetTable instanceof
    >     FromBaseTable) {
    >     >     >>+                            String correlationName;
    >     >     >>+                            correlationName =
    >     >     > ((FromBaseTable)targetTable).correlationName;
    >     >     >>+                            if(correlationName != null)
    >     >     >>+                                 fbt.correlationName =
    >     >     correlationName;
    >     >     >>+                        }
    >     >     >
    >     >     > Is that check necessary? Is it possible to replace
    the code
    >     >     above with
    >     >     > following?
    >     >     >>+                        if(targetTable instanceof
    >     FromBaseTable)
    >     >     >>+                             fbt.correlationName =
    >     >     > ((FromBaseTable)targetTable).correlationName ;
    >     >
    >     >     Yes the check is necessary, if a normal delete is called
    >     without the
    >     >     correlation name it will be null , in "fbt" also it
    will be
    >     null. By
    >     >     checking I am avoiding an assignment.
    >     >
    >     >     >
    >     >     > Taking one step further, is it possible to also skip the
    >     check for
    >     >     > instanceof FromBaseTable and just have following
    assignment?
    >     >     >>+                         fbt.correlationName =
    >     >     > targetTable.correlationName;
    >     >     > I have only briefly looked at the changes and it is
    possible
    >     >     that we do in
    >     >
    >     >     Yes this check is necessary as the FromTable node in
    the method
    >     >     deleteBody() in SQLParser.java is an instance of a
    >     FromBaseTable. The
    >     >     code already there checks whether targetTable
    >     >     is an instance of FromVTI maintaining consistency this
    >     should also
    >     >     check
    >     >     for the instance of FromBaseTable.
    >     >
    >     >     > deed need the checks you have but I thought I would
    check
    >     in any
    >     >     case.
    >     >     >
    >     >     > 2)Rather than a completely new sql test file, I
    think you
    >     could use
    >     >     > existing lang/derived.sql which tests correlation
    names as
    >     well.
    >     >
    >     >     Ok I can do this.
    >     >
    >     >     >
    >     >     > 3)You might need to generate a new patch(because it has
    >     been quite
    >     >     > sometime since you submitted the patch), rerun the tests
    >     and submit
    >     >     > the patch based on latest codeline.
    >     >
    >     >     Sure.
    >     >
    >     >     >
    >     >     > You sure are becoming correlation name expert :)
    >     >
    >     >     I am looking into Derby-84 as well ;-)
    >     >
    >     >     > Mamta
    >     >     >
    >     >     > On 6/1/05, *Shreyas Kaushik* <
    [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
    >     <mailto:[EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>>
    >     >     <mailto:[EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>
    >     <mailto:[EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>>>
    >     >     > <mailto: [EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>
    >     <mailto:[EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>>
    >     >     <mailto: [EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>
    >     <mailto:[EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>>>>> wrote:
    >     >     >
    >     >     >     Did anyone get a chance to review this?
    >     >     >
    >     >     >     thanks
    >     >     >     Shreyas
    >     >     >
    >     >     >     Shreyas Kaushik wrote:
    >     >     >
    >     >     >     > Attached is the latest patch. Ran derbylang suite
    >     successfully
    >     >     >     without
    >     >     >     > any failures.
    >     >     >     >
    >     >     >     > ~ Shreyas
    >     >     >     >
    >     >     >     > Satheesh Bandaram wrote:
    >     >     >     >
    >     >     >     >> Is this patch ready for review? Still any pending
    >     issues
    >     >     here?
    >     >     >     >>
    >     >     >     >> Satheesh
    >     >     >     >>
    >     >     >     >> Shreyas Kaushik wrote:
    >     >     >     >>
    >     >     >     >>
    >     >     >     >>
    >     >     >     >>> Hi Dan,
    >     >     >     >>>
    >     >     >     >>> If you are ok with this, I can add the
    comments to
    >     the
    >     >     patch
    >     >     >     and send
    >     >     >     >>> it out on the alias.
    >     >     >     >>>
    >     >     >     >>> thanks
    >     >     >     >>> Shreyas
    >     >     >     >>>
    >     >     >     >>> Shreyas Kaushik wrote:
    >     >     >     >>>
    >     >     >     >>>
    >     >     >     >>>
    >     >     >     >>>> Ok. Thanks for your suggestions I will do it.
    >     >     >     >>>>
    >     >     >     >>>> The idea behibd adding that peice of code is:
    >     >     >     >>>>
    >     >     >     >>>> The *delete from* did not have support for
    handling
    >     >     correlation
    >     >     >     >>>> names. So when we are creating a fresh
    >     ResultColumnList
    >     >     >     >>>> and the FromBaseTable we need to pass the
    correlation
    >     >     name to
    >     >     >     this
    >     >     >     >>>> newly created FromBaseTable object from the
    target
    >     >     table where it
    >     >     >     >>>> will stored.
    >     >     >     >>>>
    >     >     >     >>>> thanks
    >     >     >     >>>> Shreyas
    >     >     >     >>>>
    >     >     >     >>>> Daniel John Debrunner wrote:
    >     >     >     >>>>
    >     >     >     >>>>
    >     >     >     >>>>
    >     >     >     >>>>> Shreyas Kaushik wrote:
    >     >     >     >>>>>
    >     >     >     >>>>>
    >     >     >     >>>>>
    >     >     >     >>>>>
    >     >     >     >>>>>> Did anyone gfo through this?
    >     >     >     >>>>>>
    >     >     >     >>>>>>
    >     >     >     >>>>>
    >     >     >     >>>>>
    >     >     >     >>>>> I looked briefly. Do you have an
    explanation of your
    >     >     changes?
    >     >     >     >>>>> Adding comments to the code you added in
    >     DeleteNode,
    >     >     >     explaining what
    >     >     >     >>>>> exactly that new block is doing would be
    really
    >     useful.
    >     >     >     >>>>>
    >     >     >     >>>>> I would say the chance of a fix being
    committed
    >     quickly
    >     >     >     increases
    >     >     >     >>>>> significantly if it is well explained and well
    >     commented.
    >     >     >     The code
    >     >     >     >>>>> changes really need to stand alone, ie. be
    >     understandable
    >     >     >     through
    >     >     >     >>>>> comments, as anyone looking through the
    code in
    >     the future
    >     >     >     will not
    >     >     >     >>>>> have
    >     >     >     >>>>> a link to any e-mail discussion to help
    them along.
    >     >     Though a
    >     >     >     >>>>> summary of
    >     >     >     >>>>> the changes with the contribution can be
    useful.
    >     Such a
    >     >     >     summary is
    >     >     >     >>>>> also
    >     >     >     >>>>> a useful commit comment for the svn
    history of
    >     changes
    >     >     to the
    >     >     >     >>>>> codeline.
    >     >     >     >>>>>
    >     >     >     >>>>> Writing code comments is also very helpful
    to the
    >     >     writer of
    >     >     >     the code,
    >     >     >     >>>>> helps to cement the mental ideas into
    code. A good
    >     >     practise
    >     >     >     is to
    >     >     >     >>>>> write
    >     >     >     >>>>> the comments first and then the code.
    >     >     >     >>>>>
    >     >     >     >>>>> Dan.
    >     >     >     >>>>>
    >     >     >     >>>>>
    >     >     >     >>>>>
    >     >     >     >>>>>
    >     >     >     >>>>>
    >     >     >     >>>>>>>>> Index:
    >     >     >     >>>>>>>>>
    >     >     >
    >     java/engine/org/apache/derby/impl/sql/compile/DeleteNode.java
    >     >     >     >>>>>>>>>
    >     >     >
    >     >
> ===================================================================
    >     >     >     >>>>>>>>>
    >     >     >     >>>>>>>>> ---
    >     >     >     >>>>>>>>>
    >     >     >
    >     java/engine/org/apache/derby/impl/sql/compile/DeleteNode.java
    >     >     >     >>>>>>>>> (revision 161449)
    >     >     >     >>>>>>>>> +++
    >     >     >     >>>>>>>>>
    >     >     >
    >     java/engine/org/apache/derby/impl/sql/compile/DeleteNode.java
    >     >     >     >>>>>>>>> (working copy)
    >     >     >     >>>>>>>>> @@ -241,6 +241,13 @@
    >     >     >     >>>>>>>>>                     resultColumnList = new
    >     >     >     ResultColumnList();
    >     >     >     >>>>>>>>>
    >     >     >     >>>>>>>>>                     FromBaseTable fbt =
    >     >     >     >>>>>>>>> getResultColumnList(resultColumnList);
    >     >     >     >>>>>>>>> +
    >     >     >     >>>>>>>>> +                        if(targetTable
    >     instanceof
    >     >     >     >>>>>>>>> FromBaseTable) {
    >     >     >     >>>>>>>>> +                            String
    >     correlationName;
    >     >     >     >>>>>>>>>
    +                            correlationName =
    >     >     >     >>>>>>>>>
    ((FromBaseTable)targetTable).correlationName;
    >     >     >     >>>>>>>>>
    >     +                            if(correlationName !=
    >     >     null)
    >     >     >     >>>>>>>>>
    >     +                                fbt.correlationName =
    >     >     >     >>>>>>>>> correlationName;
    >     >     >     >>>>>>>>> +                        }
    >     >     >     >>>>>>>>>
    >     >     >     >>>>>>>>>                     readColsBitSet =
    >     >     >     getReadMap(dataDictionary,
    >     >     >     >>>>>>>>>
    >     >     >     >>>>>>>>> targetTableDescriptor);
    >     >     >     >>>>>>>>>
    >     >     >     >>>>>>>>
    >     >     >     >>>>>>>>
    >     >     >     >>>>>>>
    >     >     >     >>>>>
    >     >     >     >>>>>
    >     >     >     >>>>>
    >     >     >     >>>>>
    >     >     >     >>>>>
    >     >     >     >>>>>
    >     >     >     >>>>>
    >     >     >     >>>>
    >     >     >     >>>
    >     >     >     >>>
    >     >     >     >>
    >     >     >     >>
    >     >     >     >>
    >     >     >     >>
    >     >     >
    >     >
> >------------------------------------------------------------------------

    >     >
    >     >     >     >
    >     >     >     >Index:
> > java/engine/org/apache/derby/impl/sql/compile/DeleteNode.java
    >     >     >
    >     >
> >===================================================================
    >     >     >     >---
    >     >     >
    >     >
> java/engine/org/apache/derby/impl/sql/compile/DeleteNode.java (revision

    >
    >     >
    >     >     >     178358)
    >     >     >     >+++
    >     >     >
    >     >
> java/engine/org/apache/derby/impl/sql/compile/DeleteNode.java (working

    >     >     >     copy)
    >     >     >     >@@ -241,6 +241,18 @@
    >     >     >     >                       resultColumnList = new
    >     >     ResultColumnList();
    >     >     >     >
    >     >     >     >                       FromBaseTable fbt =
    >     >     >     getResultColumnList(resultColumnList);
    >     >     >     >+
    >     >     >     >+                        /* When we are
    creating a fresh
    >     >     >     ResultColumnList
    >     >     >     >+                         * and the
    FromBaseTable we
    >     need
    >     >     to pass
    >     >     >     the correlation name
    >     >     >     >+                         * to this newly created
    >     FromBaseTable
    >     >     >     object from the target table
    >     >     >     >+                         * where it will be
    stored.
    >     >     >     >+                         */
    >     >     >     >+                        if(targetTable instanceof
    >     >     FromBaseTable) {
    >     >     >     >+                            String
    correlationName;
    >     >     >     >+                            correlationName =
    >     >     >     ((FromBaseTable)targetTable).correlationName;
    >     >     >     >+                            if(correlationName
    != null)
> > > >+ fbt.correlationName =
    >     >     >     correlationName;
    >     >     >     >+                        }
    >     >     >     >
    >     >     >     >                       readColsBitSet =
    >     >     getReadMap(dataDictionary,
    >     >     >     >
    >     >     >     targetTableDescriptor);
    >     >     >     >Index:
> > java/engine/org/apache/derby/impl/sql/compile/sqlgrammar.jj
    >     >     >
    >     >
> >===================================================================
    >     >     >     >---
    >     >     >
    >     >
> java/engine/org/apache/derby/impl/sql/compile/sqlgrammar.jj (revision
    >     >     >     178358)
    >     >     >     >+++
    >     >     >
    >     >
> java/engine/org/apache/derby/impl/sql/compile/sqlgrammar.jj (working
    >     >
    >     >     >     copy)
    >     >     >     >@@ -2582,16 +2582,27 @@
    >     >     >     >       QueryTreeNode retval;
    >     >     >     >       Properties targetProperties = null;
    >     >     >     >       Token      whereToken = null;
    >     >     >     >+        String correlationName = null;
    >     >     >     >+        Object []objArr = null;
    >     >     >     > }
    >     >     >     > {
    >     >     >     >       LOOKAHEAD( { fromNewInvocationFollows() } )
    >     >     >     >       <FROM> javaToSQLNode = newInvocation()
    >     >     >     >+      /**
    >     >     >     >+        * Get the correlation name if there is any
    >     in the SQL
    >     >     >     statement
    >     >     >     >+        * Extract the correlation name and pass it
    >     on to the
    >     >     >     FromTable Node
    >     >     >     >+        * for binding
    >     >     >     >+        */
    >     >     >     >+        {
    >     >     >     >+           objArr = optionalTableClauses();
    >     >     >     >+           correlationName =
> > > (String)objArr[OPTIONAL_TABLE_CLAUSES_CORRELATION_NAME];
    >     >     >     >+        }
    >     >     >     >       [ whereToken = <WHERE> whereClause =
    >     >     whereClause(whereToken) ]
    >     >     >     >       {
    >     >     >     >               fromTable =  (FromTable)
    >     nodeFactory.getNode(
    >     >     >     >
    >     >     >     C_NodeTypes.FROM_VTI,
    >     >     >     >
    >     >     >     javaToSQLNode.getJavaValueNode(),
    >     >     >
    >     >
> >- (String)

    >     >     >     null,
    >     >     >
    >     >
> >+ correlationName,
    >     >     >
    >     >     >     >
    >     >     >     null,
    >     >     >     >
    >     >     >     (Properties) null,
    >     >     >     >
    >     >     >     getContextManager());
    >     >     >     >@@ -2600,6 +2611,15 @@
    >     >     >     >       }
    >     >     >     > |
    >     >     >     >       <FROM> tableName =
    >     >     qualifiedName(Limits.MAX_IDENTIFIER_LENGTH)
    >     >     >     >+      /**
    >     >     >     >+        * Get the correlation name if there is any
    >     in the SQL
    >     >     >     statement
    >     >     >     >+        * Extract the correlation name and
    pass it
    >     on to the
    >     >     >     FromTable Node
    >     >     >     >+        * for binding
    >     >     >     >+        */
    >     >     >     >+        {
    >     >     >     >+           objArr = optionalTableClauses();
    >     >     >     >+           correlationName =
> > > (String)objArr[OPTIONAL_TABLE_CLAUSES_CORRELATION_NAME];
    >     >     >     >+        }
    >     >     >     >           [targetProperties = propertyList() ]
    >     >     >     >               [
    >     >     >     >                       whereToken = <WHERE>
    >     >     >     >@@ -2631,7 +2651,7 @@
    >     >     >     >                       fromTable = (FromTable)
    >     >     nodeFactory.getNode(
    >     >     >     >
    >     >     >     C_NodeTypes.FROM_BASE_TABLE,
    >     >     >     >
    >     >     >     tableName,
    >     >     >
    >     >
> >- null,
    >
    >     >     >
    >     >
> >+ correlationName,

    >     >
    >     >     >     >
    >     >     >     ReuseFactory.getInteger(
    >     >     >     >
    >     >     >     FromBaseTable.DELETE),
    >     >     >     >
    >     >     >     null,
    >     >     >     >Index:
    >     >     >
    >     >
> java/testing/org/apache/derbyTesting/functionTests/tests/lang/corrDelete.sql
    >
    >     >
    >     >     >
    >     >
> >===================================================================
    >     >     >     >---
    >     >     >
    >     >
> java/testing/org/apache/derbyTesting/functionTests/tests/lang/corrDelete.sql
    >
    >     >     >     (revision 0)
    >     >     >     >+++
    >     >     >
    >     >
> java/testing/org/apache/derbyTesting/functionTests/tests/lang/corrDelete.sql
    >     >     >     (revision 0)
    >     >     >     >@@ -0,0 +1,24 @@
    >     >     >     >+-- This tests the delete functionality with
    >     correlation name
    >     >     >     >+
    >     >     >     >+create table corrDelete(ival int, cval
    varchar(10));
    >     >     >     >+insert into corrDelete values(1,'test1');
    >     >     >     >+insert into corrDelete values(2,'test2');
    >     >     >     >+insert into corrDelete values(3,'test3');
    >     >     >     >+insert into corrDelete values(4,'test4');
    >     >     >     >+insert into corrDelete values(5,'test5');
    >     >     >     >+insert into corrDelete values(6,'test6');
    >     >     >     >+
    >     >     >     >+select * from corrDelete;
    >     >     >     >+
    >     >     >     >+delete from corrDelete d where ival=3;
    >     >     >     >+
    >     >     >     >+select * from corrDelete;
    >     >     >     >+
    >     >     >     >+delete from corrDelete as d where d.ival=5;
    >     >     >     >+
    >     >     >     >+select * from corrDelete;
    >     >     >     >+
    >     >     >     >+delete from corrDelete d;
    >     >     >     >+
    >     >     >     >+select * from corrDelete;
    >     >     >     >+
    >     >     >     >Index:
    >     >     >
    >     >
> java/testing/org/apache/derbyTesting/functionTests/tests/lang/refActions1.sql
    >     >
    >     >     >
    >     >     >
    >     >
> >===================================================================
    >     >     >     >---
    >     >     >
    >     >
> java/testing/org/apache/derbyTesting/functionTests/tests/lang/refActions1.sql (revision
    >     >     >     178358)
    >     >     >     >+++
    >     >     >
    >     >
> java/testing/org/apache/derbyTesting/functionTests/tests/lang/refActions1.sql (working
    >     >     >     copy)
    >     >     >     >@@ -719,6 +719,14 @@
    >     >     >     > select * from db2test.emp13 order by dno,
    name, mgrname;
    >     >     >     > select * from db2test.emp14 order by dno,
    name, mgrname;
    >     >     >     > select * from db2test.emp15 order by dno,
    name, mgrname;
    >     >     >     >+delete from db2test.dept d where
    >     >     >     >+  dno in (select dno from db2test.emp e where
    >     >     >     >+ e.dno = d.dno and e.dno in (select dno from
    >     db2test.emp2
    >     >     e2 where
    >     >     >     >+ e2.dno = e.dno and e2.dno in (select dno from
    >     >     db2test.emp3 e3 where
    >     >     >     >+ e3.dno = e2.dno and e3.dno in (select dno from
    >     >     db2test.emp4 e4
    >     >     >     where
    >     >     >     >+ e4.dno = e3.dno and e4.dno in (select dno from
    >     >     db2test.emp5 e5
    >     >     >     where
    >     >     >     >+ e5.dno = e4.dno and e5.dno in (select dno from
    >     >     db2test.emp6 e6
    >     >     >     where
    >     >     >     >+ e6.dno = e5.dno and e6.dno in ('K55',
    'K52')))))));
    >     >     >     > -- "END OF TESTUNIT: 11";
    >     >     >     >
    >     >     >     >
    >     >     >     >@@ -2306,14 +2314,6 @@
    >     >     >     >  e5.dno = e4.dno and e5.dno in (select dno from
    >     >     db2test.emp6 e6
    >     >     >     where
    >     >     >     >  e6.dno = e5.dno and e6.dno in ('K55',
    'K52')))))))
    >     >     >     >  order by 2, 3;
    >     >     >     >-delete from db2test.dept d where
    >     >     >     >-  dno in (select dno from db2test.emp e where
    >     >     >     >- e.dno = d.dno and e.dno in (select dno from
    >     db2test.emp2
    >     >     e2 where
    >     >     >     >- e2.dno = e.dno and e2.dno in (select dno from
    >     >     db2test.emp3 e3 where
    >     >     >     >- e3.dno = e2.dno and e3.dno in (select dno from
    >     >     db2test.emp4 e4
    >     >     >     where
    >     >     >     >- e4.dno = e3.dno and e4.dno in (select dno from
    >     >     db2test.emp5 e5
    >     >     >     where
    >     >     >     >- e5.dno = e4.dno and e5.dno in (select dno from
    >     >     db2test.emp6 e6
    >     >     >     where
    >     >     >     >- e6.dno = e5.dno and e6.dno in ('K55',
    'K52')))))));
    >     >     >     > select * from db2test.dept order by dno, dname;
    >     >     >     > select * from db2test.emp order by dno, name,
    mgrname;
    >     >     >     > select * from db2test.secondemp order by dno,
    name,
    >     mgrname;
    >     >     >     >Index:
    >     >     >
    >     >
> java/testing/org/apache/derbyTesting/functionTests/tests/lang/copyfiles.ant
    >
    >     >     >
    >     >     >
    >     >
> >===================================================================
    >     >     >     >---
    >     >     >
    >     >
> java/testing/org/apache/derbyTesting/functionTests/tests/lang/copyfiles.ant (revision
    >
    >     >
    >     >     >     178358)
    >     >     >     >+++
    >     >     >
    >     >
> java/testing/org/apache/derbyTesting/functionTests/tests/lang/copyfiles.ant (working
    >     >     >     copy)
    >     >     >     >@@ -209,3 +209,4 @@
    >     >     >     > wisconsin_app.properties
    >     >     >     > wisconsin_derby.properties
    >     >     >     > wisconsin_sed.properties
    >     >     >     >+corrDelete.sql
    >     >     >     >Index:
    >     >     >
    >     >
> java/testing/org/apache/derbyTesting/functionTests/master/corrDelete.out
    >     >
    >     >     >
    >     >     >
    >     >
> >===================================================================
    >     >     >     >---
    >     >     >
    >     >
> java/testing/org/apache/derbyTesting/functionTests/master/corrDelete.out
    >     >     >     (revision 0)
    >     >     >     >+++
    >     >     >
    >     >
> java/testing/org/apache/derbyTesting/functionTests/master/corrDelete.out
    >
    >     >     >     (revision 0)
    >     >     >     >@@ -0,0 +1,49 @@
    >     >     >     >+ij> -- This tests the delete functionality with
    >     >     correlation name
    >     >     >     >+create table corrDelete(ival int, cval
    varchar(10));
    >     >     >     >+0 rows inserted/updated/deleted
    >     >     >     >+ij> insert into corrDelete values(1,'test1');
    >     >     >     >+1 row inserted/updated/deleted
    >     >     >     >+ij> insert into corrDelete values(2,'test2');
    >     >     >     >+1 row inserted/updated/deleted
    >     >     >     >+ij> insert into corrDelete values(3,'test3');
    >     >     >     >+1 row inserted/updated/deleted
    >     >     >     >+ij> insert into corrDelete values(4,'test4');
    >     >     >     >+1 row inserted/updated/deleted
    >     >     >     >+ij> insert into corrDelete values(5,'test5');
    >     >     >     >+1 row inserted/updated/deleted
    >     >     >     >+ij> insert into corrDelete values(6,'test6');
    >     >     >     >+1 row inserted/updated/deleted
    >     >     >     >+ij> select * from corrDelete;
    >     >     >     >+IVAL       |CVAL
    >     >     >     >+----------------------
    >     >     >     >+1          |test1
    >     >     >     >+2          |test2
    >     >     >     >+3          |test3
    >     >     >     >+4          |test4
    >     >     >     >+5          |test5
    >     >     >     >+6          |test6
    >     >     >     >+ij> delete from corrDelete d where ival=3;
    >     >     >     >+1 row inserted/updated/deleted
    >     >     >     >+ij> select * from corrDelete;
    >     >     >     >+IVAL       |CVAL
    >     >     >     >+----------------------
    >     >     >     >+1          |test1
    >     >     >     >+2          |test2
    >     >     >     >+4          |test4
    >     >     >     >+5          |test5
    >     >     >     >+6          |test6
    >     >     >     >+ij> delete from corrDelete as d where d.ival=5;
    >     >     >     >+1 row inserted/updated/deleted
    >     >     >     >+ij> select * from corrDelete;
    >     >     >     >+IVAL       |CVAL
    >     >     >     >+----------------------
    >     >     >     >+1          |test1
    >     >     >     >+2          |test2
    >     >     >     >+4          |test4
    >     >     >     >+6          |test6
    >     >     >     >+ij> delete from corrDelete d;
    >     >     >     >+4 rows inserted/updated/deleted
    >     >     >     >+ij> select * from corrDelete;
    >     >     >     >+IVAL       |CVAL
    >     >     >     >+----------------------
    >     >     >     >+ij>
    >     >     >     >Index:
    >     >     >
    >     >
> java/testing/org/apache/derbyTesting/functionTests/master/refActions1.out
    >
    >     >     >
    >     >     >
    >     >
> >===================================================================
    >     >     >     >---
    >     >     >
    >     >
> java/testing/org/apache/derbyTesting/functionTests/master/refActions1.out (revision
    >
    >     >     >     178358)
    >     >     >     >+++
    >     >     >
    >     >
> java/testing/org/apache/derbyTesting/functionTests/master/refActions1.out (working
    >     >
    >     >     >     copy)
    >     >     >     >@@ -1733,6 +1733,15 @@
    >     >     >     > 5          |JOE2      |ASHOK     |K51
    >     >     >     > 2          |JOHN      |ASHOK     |K51
    >     >     >     > 3          |ROBIN     |ASHOK     |K51
    >     >     >     >+ij> delete from db2test.dept d where
    >     >     >     >+  dno in (select dno from db2test.emp e where
    >     >     >     >+ e.dno = d.dno and e.dno in (select dno from
    >     db2test.emp2
    >     >     e2 where
    >     >     >     >+ e2.dno = e.dno and e2.dno in (select dno from
    >     >     db2test.emp3 e3 where
    >     >     >     >+ e3.dno = e2.dno and e3.dno in (select dno from
    >     >     db2test.emp4 e4
    >     >     >     where
    >     >     >     >+ e4.dno = e3.dno and e4.dno in (select dno from
    >     >     db2test.emp5 e5
    >     >     >     where
    >     >     >     >+ e5.dno = e4.dno and e5.dno in (select dno from
    >     >     db2test.emp6 e6
    >     >     >     where
    >     >     >     >+ e6.dno = e5.dno and e6.dno in ('K55',
    'K52')))))));
    >     >     >     >+0 rows inserted/updated/deleted
    >     >     >     > ij> -- "END OF TESTUNIT: 11";
    >     >     >     > --
    >     >     >
    >     >
> *************************************************************************
    >     >     >     > -- TESTUNIT         : 12
    >     >     >     >@@ -5998,15 +6007,6 @@
    >     >     >     > --------------------------
    >     >     >     > 2          |K52|OFC
    >     >     >     > 1          |K55|DB
    >     >     >     >-ij> delete from db2test.dept d where
    >     >     >     >-  dno in (select dno from db2test.emp e where
    >     >     >     >- e.dno = d.dno and e.dno in (select dno from
    >     db2test.emp2
    >     >     e2 where
    >     >     >     >- e2.dno = e.dno and e2.dno in (select dno from
    >     >     db2test.emp3 e3 where
    >     >     >     >- e3.dno = e2.dno and e3.dno in (select dno from
    >     >     db2test.emp4 e4
    >     >     >     where
    >     >     >     >- e4.dno = e3.dno and e4.dno in (select dno from
    >     >     db2test.emp5 e5
    >     >     >     where
    >     >     >     >- e5.dno = e4.dno and e5.dno in (select dno from
    >     >     db2test.emp6 e6
    >     >     >     where
    >     >     >     >- e6.dno = e5.dno and e6.dno in ('K55',
    'K52')))))));
    >     >     >     >-ERROR 42X01: Syntax error: Encountered "d" at
    line 1,
    >     >     column 26.
    >     >     >     > ij> select * from db2test.dept order by dno,
    dname;
    >     >     >     > C0         |DNO|DNAME
    >     >     >     > --------------------------
    >     >     >     >@@ -7585,7 +7585,7 @@
    >     >     >     >                   where e3.name
    <http://e3.name> <http://e3.name>
    >     < http://e3.name <http://e3.name>>
    >     >     <http://e3.name> = e2.mgrname
    >     >     >     group by dno having
    >     >     >     >                   e2.dno in (select dno from
    >     db2test.emp  e1
    >     >     >     >                   where e1.name
    <http://e1.name> < http://e1.name>
    >     <http://e1.name>
    >     >     <http://e1.name> = e.mgrname and
    >     >     >     e1.mgrname = 'JOHN')))));
    >     >     >     >-ERROR 42X01: Syntax error: Encountered "e" at
    line 1,
    >     >     column 25.
    >     >     >     >+ERROR 42X04: Column 'E5.NAME <http://E5.NAME>
    <http://E5.NAME>
    >     <http://E5.NAME>
    >     >     <http://E5.NAME>' is not in any
    >     >     >     table in the FROM list or it appears within a join
    >     specification
    >     >     >     and is outside the scope of the join
    specification or
    >     it appears
    >     >     >     in a HAVING clause and is not in the GROUP BY
    >     list.  If this
    >     >     is a
    >     >     >     CREATE or ALTER TABLE statement then ' E5.NAME
    <http://E5.NAME>
    >     <http://E5.NAME>
    >     >     < http://E5.NAME> <http://E5.NAME <http://E5.NAME>>'
    >     >     >     is not a column in the target table.
    >     >     >     > ij> select * from db2test.emp order by dno, name,
    >     mgrname;
    >     >     >     > C0         |NAME      |MGRNAME   |DNO
    >     >     >     > --------------------------------------
    >     >     >     >@@ -7753,7 +7753,7 @@
    >     >     >     >                   where e.name <http://e.name>
    <http://e.name> <
    >     http://e.name>
    >     >     <http://e.name> = e2.mgrname
    >     >     >     group by dno having
    >     >     >     >                   e2.dno in (select dno from
    >     db2test.emp  e1
    >     >     >     >                    where e.mgrname = 'JOHN')))));
    >     >     >     >-ERROR 42X01: Syntax error: Encountered "e" at
    line 1,
    >     >     column 25.
    >     >     >     >+ERROR 42X04: Column ' E.NAME <http://E.NAME>
    <http://E.NAME>
    >     <http://E.NAME>
    >     >     < http://E.NAME>' is not in any table
    >     >     >     in the FROM list or it appears within a join
    >     specification
    >     >     and is
    >     >     >     outside the scope of the join specification or it
    >     appears in a
    >     >     >     HAVING clause and is not in the GROUP BY list.  If
    >     this is a
    >     >     >     CREATE or ALTER TABLE statement then ' E.NAME
    <http://E.NAME>
    >     <http://E.NAME>
    >     >     <http://E.NAME> <http://E.NAME>' is
    >     >     >     not a column in the target table.
    >     >     >     > ij> select * from db2test.emp order by dno, name,
    >     mgrname;
    >     >     >     > C0         |NAME      |MGRNAME   |DNO
    >     >     >     > --------------------------------------
    >     >     >     >Index:
    >     >     >
    >     >
> java/testing/org/apache/derbyTesting/functionTests/suites/derbylang.runall
    >     >     >
    >     >
> >===================================================================
    >     >     >     >---
    >     >     >
    >     >
> java/testing/org/apache/derbyTesting/functionTests/suites/derbylang.runall
    >     >     >     (revision 178358)
    >     >     >     >+++
    >     >     >
    >     >
> java/testing/org/apache/derbyTesting/functionTests/suites/derbylang.runall
    >
    >     >
    >     >     >     (working copy)
    >     >     >     >@@ -31,6 +31,7 @@
    >     >     >     > lang/connect.sql
    >     >     >     > lang/consistencyChecker.sql
    >     >     >     > lang/constantExpression.sql
    >     >     >     >+lang/corrDelete.sql
    >     >     >     > lang/currentSchema.sql
    >     >     >     > lang/currentof.java
    >     >     >     > lang/cursor.java
    >     >     >     >
    >     >     >     >
    >     >     >
    >     >     >
    >     >
    >     >
    >
    >


Reply via email to