Probablemente la tabla se crea con el motor de almacenamiento MyISAM por defecto. El motor de almacenamiento MyISAM no admite transacciones.
Crear tabla
CREATE TABLE a ( id SERIAL PRIMARY KEY) ENGINE = MYISAM;
Consulta
DELETE FROM a;
SET autocommit = 0;
START TRANSACTION;
INSERT INTO a(id) VALUES(1);
ROLLBACK WORK;
SELECT COUNT(*) FROM a;
Resultado
cuenta(*)
1
Haciendo la tabla InnoDB
Consulta
ALTER TABLE a ENGINE=INNODB;
Consulta
DELETE FROM a;
SET autocommit = 0;
START TRANSACTION;
INSERT INTO a(id) VALUES(1);
ROLLBACK WORK;
SELECT COUNT(*) FROM a;
Resultado
count(*)
----------
0