← Back to team overview

maria-developers team mailing list archive

Re: Patch for MDEV-12874 - UPDATE statements with the same source and target

 



On 08/01/2017 09:29 AM, Alexander Barkov wrote:
Hello Jerome,


On 07/31/2017 04:28 PM, jerome brauge wrote:
Hello Alexander,
As I thought, there is the same issue with select.
The following procedure produce a different result between Mariadb and
Oracle.

Thanks for reporting this. I filed a new issue for this:


https://jira.mariadb.org/browse/MDEV-13418


Made a few updates in MDEV-13418 after reading the SQL standard.
Please have a look.




set sql_mode=oracle;
use test;
DELIMITER $$
CREATE or replace procedure psselerr_field(res OUT VARCHAR)
AS
   b1 INT;
BEGIN
   b1:=10;
   select 1,cast(b1 as varchar(10)) into b1, res from dual;
   return ;
END;
$$
DELIMITER ;
call psselerr_field (@res);
select @res;

Mariadb : res = 1
Oracle: res = 10

Best regards,
Jérôme.


-----Message d'origine-----
De : jerome brauge
Envoyé : vendredi 21 juillet 2017 17:04
À : maria-developers@xxxxxxxxxxxxxxxxxxx
Cc : Alexander Barkov; 'Sergei Golubchik'
Objet : Patch for MDEV-12874 - UPDATE statements with the same source
and target

Hello,

Here is a patch for MDEV-12874 (on branch 10.2-ext).
Can anyone review it ?

Alexander, during my work on this MDEV, I've found a new issue with
update
statement and Oracle compatibility.

create table t1 (c1 integer, c2 integer, c3 integer); insert into
t1(c1,c2,c3)
values (1,1,1); update t1
    set c1 = c1+1,
        c2 = c1+1,
        c3 = c2+1;
select * from t1;

Mariadb :
+------+------+------+
| c1   | c2   | c3   |
+------+------+------+
|    2 |    3 |    4 |
+------+------+------+
1 row in set (0.00 sec)

Oracle :
DVTORA>
         C1         C2         C3
---------- ---------- ----------
          2          2          2

Can you open a new MDEV for this ?

Best regards,
Jérôme.


References