Commit 3091eb3f authored by brian@zim.(none)'s avatar brian@zim.(none)

Merge baker@bk-internal.mysql.com:/home/bk/mysql-5.0

into  zim.(none):/home/brian/mysql/mysql-5.0
parents f29bebe2 333a5662
This source diff could not be displayed because it is too large. You can view the blob instead.
...@@ -1332,6 +1332,19 @@ INSERT DELAYED INTO t2 VALUES (4,011403,37,'intercepted','audiology','tinily','' ...@@ -1332,6 +1332,19 @@ INSERT DELAYED INTO t2 VALUES (4,011403,37,'intercepted','audiology','tinily',''
# #
# Cleanup, test is over # Cleanup, test is over
# #
drop table t1, t2, t4;
# End of 4.1 tests # End of 4.1 tests
#
# For bug #12836
# Delete was allowing all rows to be removed
DELETE FROM t2;
SELECT * FROM t2;
INSERT INTO t2 VALUES (2,011401,37,'breaking','dreaded','Steinberg','W');
INSERT INTO t2 VALUES (3,011402,37,'Romans','scholastics','jarring','');
INSERT INTO t2 VALUES (4,011403,37,'intercepted','audiology','tinily','');
SELECT * FROM t2;
TRUNCATE TABLE t2;
SELECT * FROM t2;
drop table t1, t2, t4;
...@@ -1028,4 +1028,15 @@ int ha_archive::end_bulk_insert() ...@@ -1028,4 +1028,15 @@ int ha_archive::end_bulk_insert()
share->dirty= TRUE; share->dirty= TRUE;
DBUG_RETURN(0); DBUG_RETURN(0);
} }
/*
We cancel a truncate command. The only way to delete an archive table is to drop it.
This is done for security reasons. In a later version we will enable this by
allowing the user to select a different row format.
*/
int ha_archive::delete_all_rows()
{
DBUG_ENTER("ha_archive::delete_all_rows");
DBUG_RETURN(0);
}
#endif /* HAVE_ARCHIVE_DB */ #endif /* HAVE_ARCHIVE_DB */
...@@ -78,6 +78,7 @@ class ha_archive: public handler ...@@ -78,6 +78,7 @@ class ha_archive: public handler
int close(void); int close(void);
int write_row(byte * buf); int write_row(byte * buf);
int real_write_row(byte *buf, gzFile writer); int real_write_row(byte *buf, gzFile writer);
int delete_row(const byte * buf);
int rnd_init(bool scan=1); int rnd_init(bool scan=1);
int rnd_next(byte *buf); int rnd_next(byte *buf);
int rnd_pos(byte * buf, byte *pos); int rnd_pos(byte * buf, byte *pos);
......
...@@ -834,6 +834,8 @@ extern ulong total_ha, total_ha_2pc; ...@@ -834,6 +834,8 @@ extern ulong total_ha, total_ha_2pc;
#define ha_supports_generate(T) (T != DB_TYPE_INNODB && \ #define ha_supports_generate(T) (T != DB_TYPE_INNODB && \
T != DB_TYPE_BERKELEY_DB && \ T != DB_TYPE_BERKELEY_DB && \
T != DB_TYPE_ARCHIVE_DB && \
T != DB_TYPE_FEDERATED_DB && \
T != DB_TYPE_NDBCLUSTER) T != DB_TYPE_NDBCLUSTER)
/* lookups */ /* lookups */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment