./mtr --parallel=auto innodb.instant_alter innodb.instant_alter_null innodb.innodb-alter-nullable main.ctype_utf8mb4_innodb main.selectivity_innodb
diff --git a/mysql-test/suite/innodb/r/instant_alter_null.result b/mysql-test/suite/innodb/r/instant_alter_null.result
index f49d60fc301..6417c9e71b1 100644
--- a/mysql-test/suite/innodb/r/instant_alter_null.result
+++ b/mysql-test/suite/innodb/r/instant_alter_null.result
@@ -2,21 +2,12 @@ create table t (a int NOT NULL) engine=innodb row_format=   compressed;
 alter table t modify a int NULL, algorithm=instant;
 ERROR 0A000: ALGORITHM=INSTANT is not supported for this operation. Try ALGORITHM=INPLACE
 drop table t;
-create table t (a int NOT NULL) engine=innodb row_format=   dynamic;
-alter table t modify a int NULL, algorithm=instant;
-ERROR 0A000: ALGORITHM=INSTANT is not supported for this operation. Try ALGORITHM=INPLACE
-drop table t;
-create table t (a int NOT NULL) engine=innodb row_format=   compact;
-alter table t modify a int NULL, algorithm=instant;
-ERROR 0A000: ALGORITHM=INSTANT is not supported for this operation. Try ALGORITHM=INPLACE
-drop table t;
 create table t (
 id int primary key,
 a int NOT NULL default 0,
 b int NOT NULL default 0,
-c int NOT NULL default 0,
-index idx (a,b,c)
-) engine=innodb row_format=redundant;
+c int NOT NULL default 0
+) engine=innodb;
 insert into t (id, a) values (0, NULL);
 ERROR 23000: Column 'a' cannot be null
 insert into t (id, b) values (0, NULL);
diff --git a/mysql-test/suite/innodb/t/instant_alter.test b/mysql-test/suite/innodb/t/instant_alter.test
index 38f6bf7a046..70030cd43ac 100644
--- a/mysql-test/suite/innodb/t/instant_alter.test
+++ b/mysql-test/suite/innodb/t/instant_alter.test
@@ -437,6 +437,13 @@ ALTER TABLE t1 DROP f4;
 ALTER TABLE t1 DROP f1;
 DROP TABLE t1;
 
+eval CREATE TABLE t1 (a VARCHAR(10) NOT NULL) $engine;
+INSERT INTO t1 VALUES ('1'),('22'),('333');
+ALTER TABLE t1 MODIFY a VARCHAR(10) NULL;
+ALTER TABLE t1 MODIFY a VARCHAR(10) NOT NULL;
+SELECT * FROM t1;
+DROP TABLE t1;
+
 dec $format;
 }
 disconnect analyze;
diff --git a/mysql-test/suite/innodb/t/instant_alter_null.test b/mysql-test/suite/innodb/t/instant_alter_null.test
index 69fb1ae4495..d46d0733541 100644
--- a/mysql-test/suite/innodb/t/instant_alter_null.test
+++ b/mysql-test/suite/innodb/t/instant_alter_null.test
@@ -1,27 +1,16 @@
---source include/have_innodb.inc
+--source include/innodb_row_format.inc
 
 create table t (a int NOT NULL) engine=innodb row_format=   compressed;
 --error ER_ALTER_OPERATION_NOT_SUPPORTED
 alter table t modify a int NULL, algorithm=instant;
 drop table t;
 
-create table t (a int NOT NULL) engine=innodb row_format=   dynamic;
---error ER_ALTER_OPERATION_NOT_SUPPORTED
-alter table t modify a int NULL, algorithm=instant;
-drop table t;
-
-create table t (a int NOT NULL) engine=innodb row_format=   compact;
---error ER_ALTER_OPERATION_NOT_SUPPORTED
-alter table t modify a int NULL, algorithm=instant;
-drop table t;
-
 create table t (
   id int primary key,
   a int NOT NULL default 0,
   b int NOT NULL default 0,
-  c int NOT NULL default 0,
-  index idx (a,b,c)
-) engine=innodb row_format=redundant;
+  c int NOT NULL default 0
+) engine=innodb;
 
 --error ER_BAD_NULL_ERROR
 insert into t (id, a) values (0, NULL);
@@ -50,6 +39,7 @@ insert into t values (4, NULL, NULL, NULL);
 --replace_column 1 TABLE_ID
 select * from information_schema.innodb_sys_columns where table_id=@id;
 
+--sorted_result
 select * from t;
 
 check table t;
diff --git a/storage/innobase/handler/handler0alter.cc b/storage/innobase/handler/handler0alter.cc
index 231117ac3d0..109406dba99 100644
--- a/storage/innobase/handler/handler0alter.cc
+++ b/storage/innobase/handler/handler0alter.cc
@@ -1435,7 +1435,7 @@ instant_alter_column_possible(
 	if ((ha_alter_info->handler_flags
 	     & ALTER_COLUMN_NULLABLE)
 	    && ib_table.not_redundant()) {
-#if 1 // FIXME: remove this
+#if 0 // FIXME: remove this
 		return false;
 #else // FIXME: Rebuild the affected indexes, not the whole table!
 		return ib_table.indexes.count == 1;
