← Back to team overview

maria-developers team mailing list archive

Rev 2750: A change of direction for fix 10 csets ago: in file:///home/psergey/bzr-new/mysql-5.1-maria-contd4/

 

At file:///home/psergey/bzr-new/mysql-5.1-maria-contd4/

------------------------------------------------------------
revno: 2750
revision-id: psergey@xxxxxxxxxxxx-20090918010443-56tli4pjvy9gb4cs
parent: psergey@xxxxxxxxxxxx-20090918005527-k589m56f8q89zwol
committer: Sergey Petrunya <psergey@xxxxxxxxxxxx>
branch nick: mysql-5.1-maria-contd4
timestamp: Fri 2009-09-18 05:04:43 +0400
message:
  A change of direction for fix 10 csets ago: 
  - When the table is created with an attribute that is not supported by
    the storage engine, the attribute ought to be still kept.
=== modified file 'mysql-test/r/myisam.result'
--- a/mysql-test/r/myisam.result	2009-09-07 20:50:10 +0000
+++ b/mysql-test/r/myisam.result	2009-09-18 01:04:43 +0000
@@ -2234,7 +2234,7 @@
 t1	CREATE TABLE `t1` (
   `n` int(11) NOT NULL,
   `c` char(1) DEFAULT NULL
-) ENGINE=MyISAM DEFAULT CHARSET=latin1
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 TRANSACTIONAL=1
 drop table t1;
 CREATE TABLE t1 (line LINESTRING NOT NULL) engine=myisam;
 INSERT INTO t1 VALUES (GeomFromText("POINT(0 0)"));

=== modified file 'mysql-test/suite/maria/r/maria3.result'
--- a/mysql-test/suite/maria/r/maria3.result	2009-09-16 18:25:18 +0000
+++ b/mysql-test/suite/maria/r/maria3.result	2009-09-18 01:04:43 +0000
@@ -518,7 +518,7 @@
 t1	CREATE TABLE `t1` (
   `n` int(11) NOT NULL,
   `c` char(1) DEFAULT NULL
-) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
+) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1
 drop table t1;
 create table t1 (n int not null, c char(1)) engine=myisam transactional=1;
 Warnings:
@@ -529,7 +529,7 @@
 t1	CREATE TABLE `t1` (
   `n` int(11) NOT NULL,
   `c` char(1) DEFAULT NULL
-) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1
+) ENGINE=MARIA DEFAULT CHARSET=latin1 PAGE_CHECKSUM=1 TRANSACTIONAL=1
 drop table t1;
 create table t1 (a int, key(a)) transactional=0;
 insert into t1 values (0),(1),(2),(3),(4);

=== modified file 'mysql-test/t/myisam.test'
--- a/mysql-test/t/myisam.test	2009-09-07 20:50:10 +0000
+++ b/mysql-test/t/myisam.test	2009-09-18 01:04:43 +0000
@@ -1478,7 +1478,10 @@
 --exec $MYISAMCHK -d $MYSQLD_DATADIR/test/t1
 DROP TABLE t1;
 
+#
 # Test warnings with transactional=1 with MyISAM
+# MariaDB: Note that the table will still have 'TRANSACTIONAL=1' attribute.
+# That's the intended behavior atm.
 #
 create table t1 (n int not null, c char(1)) transactional=1;
 show create table t1;

=== modified file 'sql/sql_table.cc'
--- a/sql/sql_table.cc	2009-09-16 11:31:20 +0000
+++ b/sql/sql_table.cc	2009-09-18 01:04:43 +0000
@@ -3747,19 +3747,11 @@
 
   /* Give warnings for not supported table options */
   if (create_info->transactional && !file->ht->commit)
-  {
     push_warning_printf(thd, MYSQL_ERROR::WARN_LEVEL_ERROR,
                         ER_ILLEGAL_HA_CREATE_OPTION,
                         ER(ER_ILLEGAL_HA_CREATE_OPTION),
                         file->engine_name()->str,
                         "TRANSACTIONAL=1");
-    /* 
-      MariaDB: need to do the same for row_format and page_checksum
-      options. See  MBUG#425916
-    */
-    create_info->transactional= HA_CHOICE_UNDEF;
-    create_info->used_fields &= ~HA_CREATE_USED_TRANSACTIONAL;
-  }
 
   VOID(pthread_mutex_lock(&LOCK_open));
   if (!internal_tmp_table && !(create_info->options & HA_LEX_CREATE_TMP_TABLE))