List:Internals« Previous MessageNext Message »
From:Marko Mäkelä Date:June 13 2007 11:05am
Subject:CREATE INDEX is not committed?
View as plain text  
I wonder if the following is correct behavior.  This is from
innodb.test:

create table t1 (i int, j int ) ENGINE=innodb;
insert into t1 values (1,2);
select * from t1 where i=1 and j=2;
create index ax1 on t1 (i,j);
select * from t1 where i=1 and j=2;

If I set a breakpoint on innobase_commit, it gets invoked for the
INSERT, but not for the CREATE TABLE or CREATE INDEX statements.

I have the impression that this behavior has been changed in the past
few weeks.

The documentation of CREATE INDEX doesn't mention transactions.  I
suppose that InnoDB is not the only transactional engine where data
dictionary operations are not truly transactional.  Is it OK for the
engine to commit the transaction when it feels like that, or should
MySQL instead invoke commit?

	Marko
Thread
CREATE INDEX is not committed?Marko Mäkelä13 Jun
  • Re: CREATE INDEX is not committed?Guilhem Bichot13 Jun
    • Re: CREATE INDEX is not committed?Marko Mäkelä13 Jun
      • Re: CREATE INDEX is not committed?Guilhem Bichot13 Jun
        • Re: CREATE INDEX is not committed?Marko Mäkelä18 Jun
          • Re: CREATE INDEX is not committed?Marko Mäkelä18 Jun
            • Re: CREATE INDEX is not committed?Guilhem Bichot18 Jun
              • Re: CREATE INDEX is not committed?Marko Mäkelä20 Jun
                • Re: CREATE INDEX is not committed?Ramil Kalimullin20 Jun
                  • Re: CREATE INDEX is not committed?Marko Mäkelä20 Jun
          • Re: CREATE INDEX is not committed?Guilhem Bichot18 Jun
Re: CREATE INDEX is not committed?Marko Mäkelä21 Jun
  • Smart ALTER TABLE dropping non-existing tmp table (Re: CREATEINDEX is not committed?)Marko Mäkelä13 Aug