Tried to reproduce, but got expected results on:

$ uname -a
Linux quad 2.6.28-13-generic #45-Ubuntu SMP Tue Jun 30 19:49:51 UTC 2009
i686 GNU/Linux

on trunk, revno: 1097

Hope this helps......Robert.


On Fri, 17 Jul 2009 12:44 -0400, "Jay Pipes" <[email protected]> wrote:
> Following up on this...I can't reproduce this bug on 64-bit Linux, so 
> I'm tempted to say it may be a 32-bit issue, but I'd like to see if 
> someone else who has a 32-bit system could try to reproduce it, please?
> 
> Here is the (expected and correct) results from my 64-bit Linux box:
> 
> drizzle> use test
> Database changed
> drizzle> create TEMPORARY table t1(id int primary key auto_increment) 
> engine=memory;
> Query OK, 0 rows affected (0 sec)
> 
> drizzle> insert into t1 values (null);
> Query OK, 1 row affected (0 sec)
> 
> drizzle> insert into t1 values (null);
> Query OK, 1 row affected (0 sec)
> 
> drizzle> select * from t1;
> +----+
> | id |
> +----+
> |  1 |
> |  2 |
> +----+
> 2 rows in set (0 sec)
> 
> drizzle> alter table t1 auto_increment = 50;
> Query OK, 2 rows affected (0 sec)
> Records: 2  Duplicates: 0  Warnings: 0
> 
> drizzle> show create table t1;
> +-------+--------------------------------------------------------------------------------------------------------------------------+
> | Table | Create Table 
>                                                             |
> +-------+--------------------------------------------------------------------------------------------------------------------------+
> | t1    | CREATE TEMPORARY TABLE `t1` (
>    `id` int NOT NULL AUTO_INCREMENT,
>    PRIMARY KEY (`id`)
> ) ENGINE=MEMORY AUTO_INCREMENT=50 |
> +-------+--------------------------------------------------------------------------------------------------------------------------+
> 1 row in set (0 sec)
> 
> drizzle> insert into t1 values (null);
> Query OK, 1 row affected (0 sec)
> 
> drizzle> select * from t1;
> +----+
> | id |
> +----+
> |  1 |
> |  2 |
> | 50 |
> +----+
> 3 rows in set (0 sec)
> 
> 
> Biping MENG wrote:
> > Hi, Drizzlers
> > 
> > Here I'm suffering from a bug about auto_increment:
> > 
> > "alter table auto_increment" command does not work when using heap
> > engine (not confirmed with other engines yet)
> > 
> > platform:
> > ubuntu 9.04 desktop 32bits
> > trunck:
> > revision 1095
> > 
> > 
> > A session exposing the bug:
> > 
> > drizzle>  create TEMPORARY table t1(id int primary key auto_increment)
> > engine=heap;
> > Query OK, 0 rows affected (0.03 sec)
> > 
> > drizzle> insert into t1 values (null);
> > Query OK, 1 row affected (0 sec)
> > 
> > drizzle> insert into t1 values (null);
> > Query OK, 1 row affected (0 sec)
> > 
> > drizzle> select * from t1;
> > +----+
> > | id |
> > +----+
> > |  1 |
> > |  2 |
> > +----+
> > 2 rows in set (0 sec)
> > 
> > drizzle> alter table t1 auto_increment = 50;
> > Query OK, 2 rows affected (0 sec)
> > Records: 2  Duplicates: 0  Warnings: 0
> > 
> > drizzle> show create table t1;
> > +-------+-------------------------------------------------------------------------------------------------------------------------+
> > | Table | Create Table
> >                                                            |
> > +-------+-------------------------------------------------------------------------------------------------------------------------+
> > | t1    | CREATE TEMPORARY TABLE `t1` (
> >   `id` int NOT NULL AUTO_INCREMENT,
> >   PRIMARY KEY (`id`)
> > ) ENGINE=MEMORY AUTO_INCREMENT=3 |
> > +-------+-------------------------------------------------------------------------------------------------------------------------+
> > 1 row in set (0 sec)
> > 
> > drizzle> insert into t1 values (null);
> > Query OK, 1 row affected (0 sec)
> > 
> > drizzle> select * from t1;
> > +----+
> > | id |
> > +----+
> > |  1 |
> > |  2 |
> > |  3 |
> > +----+
> > 3 rows in set (0 sec)
> > 
> > 
> > 
> > What I know by now:
> > 
> > 1. When I run ./dtr, the alter_table test fails due to this bug.
> > 
> > 2. As is suggested by Stewart, I added a SHOW CREATE TABLE command
> > right after the "ALTER TABLE t1 auto_increment=50" command (also shown
> > in the above session), and found that the auto_increment value is not
> > changed by the alter command at all.
> > 
> > 3. I gdbed into the code with ./dtr --gdb, and found that when
> > executing the alter command, a new table is created and the parameter
> > HP_CREATE_INFO *create_info passed to the function call
> > HeapEngine::heap_create_table is correct, that is:
> > create_info->auto_increment_value == 50 && (create_info->used_fields &
> > HA_CREATE_USED_AUTO)
> > 
> > 4. When I start drizzled with simplified parameters, that is
> > ./drizzled --port=xxxx, the alter command just works fine. Then I
> > tried the parameters given by ./dtr, the bug recurs. It's weird. After
> > several tries on the parameters I found that if and only if --tmpdir
> > is specified, the bug recurs; otherwise not.
> > 
> > Not sure if there's something to do with this known bug:
> > https://bugs.launchpad.net/drizzle/+bug/314570
> > 
> > Any ideas?
> > 
> 
> 
> _______________________________________________
> Mailing list: https://launchpad.net/~drizzle-discuss
> Post to     : [email protected]
> Unsubscribe : https://launchpad.net/~drizzle-discuss
> More help   : https://help.launchpad.net/ListHelp
-----------------------------------------------------------
Robert A. Klahn         [email protected]         AIM: rklahn

"Hope has two beautiful daughters: Anger and Courage. Anger
 at the way things are, and Courage to struggle to create 
 things as they should be." -- St. Augustine


_______________________________________________
Mailing list: https://launchpad.net/~drizzle-discuss
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~drizzle-discuss
More help   : https://help.launchpad.net/ListHelp

Reply via email to