Trigger function broken in 10.4.1.3?

View: New views
5 Messages — Rating Filter:   Alert me  

Trigger function broken in 10.4.1.3?

by Thiyagu P :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi,

Getting null pointer exception when a trigger gets invoked.
 
Steps to recreate :
1. Created new db and execute the following stmts
2. CREATE TABLE TRADE(
      ID INT PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY (START WITH 1000),
      BUYID INT NOT NULL,
      QTY FLOAT(2) NOT NULL
   );
  
   CREATE TABLE TOTAL(BUYID INT NOT NULL, TOTALQTY FLOAT(2) NOT NULL);

   CREATE TRIGGER TRADE_INSERT
     AFTER INSERT ON TRADE
     REFERENCING NEW AS NEWROW
     FOR EACH ROW MODE DB2SQL
     UPDATE TOTAL SET TOTALQTY = NEWROW.QTY WHERE BUYID = NEWROW.BUYID;

   INSERT INTO TOTAL VALUES (1, 0);

   INSERT INTO TRADE VALUES(1, 1, 1, 10);

Same thing work fine in 10.3.3.0.


Thanks,
Thiyagu




Re: Trigger function broken in 10.4.1.3?

by Rick Hillegas-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi Thiyagu,

Thanks for finding this and supplying a reproducible test case. I have
created DERBY-3718 to track this regression.

Regards,
-Rick

Thiyagu P wrote:

> Hi,
>
> Getting null pointer exception when a trigger gets invoked.
>  
> Steps to recreate :
> 1. Created new db and execute the following stmts
> 2. CREATE TABLE TRADE(
>       ID INT PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY (START WITH
> 1000),
>       BUYID INT NOT NULL,
>       QTY FLOAT(2) NOT NULL
>    );
>  
>    CREATE TABLE TOTAL(BUYID INT NOT NULL, TOTALQTY FLOAT(2) NOT NULL);
>
>    CREATE TRIGGER TRADE_INSERT
>      AFTER INSERT ON TRADE
>      REFERENCING NEW AS NEWROW
>      FOR EACH ROW MODE DB2SQL
>      UPDATE TOTAL SET TOTALQTY = NEWROW.QTY WHERE BUYID = NEWROW.BUYID;
>
>    INSERT INTO TOTAL VALUES (1, 0);
>
>    INSERT INTO TRADE VALUES(1, 1, 1, 10);
>
> Same thing work fine in 10.3.3.0 <http://10.3.3.0>.
>
>
> Thanks,
> Thiyagu
>
>
>


Re: Trigger function broken in 10.4.1.3?

by Mamta Satoor :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Thiyagu, can you post the null pointer exception trace that you get?

Mamta

On 6/10/08, Thiyagu P <thiyagu@...> wrote:

> Hi,
>
> Getting null pointer exception when a trigger gets invoked.
>
> Steps to recreate :
> 1. Created new db and execute the following stmts
> 2. CREATE TABLE TRADE(
>       ID INT PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY (START WITH 1000),
>       BUYID INT NOT NULL,
>       QTY FLOAT(2) NOT NULL
>    );
>
>    CREATE TABLE TOTAL(BUYID INT NOT NULL, TOTALQTY FLOAT(2) NOT NULL);
>
>    CREATE TRIGGER TRADE_INSERT
>      AFTER INSERT ON TRADE
>      REFERENCING NEW AS NEWROW
>      FOR EACH ROW MODE DB2SQL
>      UPDATE TOTAL SET TOTALQTY = NEWROW.QTY WHERE BUYID = NEWROW.BUYID;
>
>    INSERT INTO TOTAL VALUES (1, 0);
>
>    INSERT INTO TRADE VALUES(1, 1, 1, 10);
>
> Same thing work fine in 10.3.3.0.
>
>
> Thanks,
> Thiyagu
>
>
>
>

Re: Trigger function broken in 10.4.1.3?

by Rick Hillegas-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi Mamta,

I have reproduced the stack trace and attached it to DERBY-3718. This is
the stack trace I get on the trunk.

Regards,
-Rick

Mamta Satoor wrote:

> Thiyagu, can you post the null pointer exception trace that you get?
>
> Mamta
>
> On 6/10/08, Thiyagu P <thiyagu@...> wrote:
>  
>> Hi,
>>
>> Getting null pointer exception when a trigger gets invoked.
>>
>> Steps to recreate :
>> 1. Created new db and execute the following stmts
>> 2. CREATE TABLE TRADE(
>>       ID INT PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY (START WITH 1000),
>>       BUYID INT NOT NULL,
>>       QTY FLOAT(2) NOT NULL
>>    );
>>
>>    CREATE TABLE TOTAL(BUYID INT NOT NULL, TOTALQTY FLOAT(2) NOT NULL);
>>
>>    CREATE TRIGGER TRADE_INSERT
>>      AFTER INSERT ON TRADE
>>      REFERENCING NEW AS NEWROW
>>      FOR EACH ROW MODE DB2SQL
>>      UPDATE TOTAL SET TOTALQTY = NEWROW.QTY WHERE BUYID = NEWROW.BUYID;
>>
>>    INSERT INTO TOTAL VALUES (1, 0);
>>
>>    INSERT INTO TRADE VALUES(1, 1, 1, 10);
>>
>> Same thing work fine in 10.3.3.0.
>>
>>
>> Thanks,
>> Thiyagu
>>
>>
>>
>>
>>    


Re: Trigger function broken in 10.4.1.3?

by Mamta Satoor :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Thanks, Rick.

Mamta

On 6/10/08, Rick Hillegas <Richard.Hillegas@...> wrote:

> Hi Mamta,
>
> I have reproduced the stack trace and attached it to DERBY-3718. This is the
> stack trace I get on the trunk.
>
> Regards,
> -Rick
>
>
> Mamta Satoor wrote:
> > Thiyagu, can you post the null pointer exception trace that you get?
> >
> > Mamta
> >
> > On 6/10/08, Thiyagu P <thiyagu@...> wrote:
> >
> >
> > > Hi,
> > >
> > > Getting null pointer exception when a trigger gets invoked.
> > >
> > > Steps to recreate :
> > > 1. Created new db and execute the following stmts
> > > 2. CREATE TABLE TRADE(
> > >      ID INT PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY (START WITH
> 1000),
> > >      BUYID INT NOT NULL,
> > >      QTY FLOAT(2) NOT NULL
> > >   );
> > >
> > >   CREATE TABLE TOTAL(BUYID INT NOT NULL, TOTALQTY FLOAT(2) NOT NULL);
> > >
> > >   CREATE TRIGGER TRADE_INSERT
> > >     AFTER INSERT ON TRADE
> > >     REFERENCING NEW AS NEWROW
> > >     FOR EACH ROW MODE DB2SQL
> > >     UPDATE TOTAL SET TOTALQTY = NEWROW.QTY WHERE BUYID = NEWROW.BUYID;
> > >
> > >   INSERT INTO TOTAL VALUES (1, 0);
> > >
> > >   INSERT INTO TRADE VALUES(1, 1, 1, 10);
> > >
> > > Same thing work fine in 10.3.3.0.
> > >
> > >
> > > Thanks,
> > > Thiyagu
> > >
> > >
> > >
> > >
> > >
> > >
> >
>
>