sql/examples/ha_archive.cc:
Cleanup from Bar's and Antony's code review. Meta file should not be system independent (so you can copy around the files as you like).
sql/examples/ha_archive.h:
No longer bother with storing the working version of the data files. Its unimportant while there is only one format.
OPTIMIZE TABLE <archive table>
This recompresses the table, thus removing any additional gzip headers caused by opening/closing or flushing the table.
mysql-test/r/archive.result:
Added optimize test case for archive engine.
mysql-test/t/archive.test:
Added test case for OPTIMIZE table <archive table>
sql/examples/ha_archive.cc:
The big change was the addition of optimize() call to allow tables to be recompressed (so if you have been reading/writing/reading/writing and ending up with larger files then you should, this will solve it). Though adding this feature is going to make it a real headache to add row level locking.
Also fixed bug reported by JD where storage engine code was not functioning (this of course was because I didn't check for the propper return value for hash_init). Removed BROKEN_GZIP ifdef since there was no way to enable it.
sql/examples/ha_archive.h:
Added optimize() method.
Added key part to optimize_range() to fix problems when using fields in key parts.
sql/examples/ha_archive.h:
New handler::index_flags() definition
sql/examples/ha_example.h:
New handler::index_flags() definition
sql/field.cc:
New optimize_range() definition
sql/field.h:
New optimize_range() definition
sql/ha_berkeley.cc:
New handler::index_flags() definition
sql/ha_berkeley.h:
New handler::index_flags() definition
sql/ha_heap.h:
New handler::index_flags() definition
sql/ha_innodb.h:
New handler::index_flags() definition
sql/ha_isam.h:
New handler::index_flags() definition
sql/ha_isammrg.h:
New handler::index_flags() definition
sql/ha_myisam.h:
New handler::index_flags() definition
sql/ha_myisammrg.h:
New handler::index_flags() definition
sql/ha_ndbcluster.cc:
New handler::index_flags() definition
sql/ha_ndbcluster.h:
New handler::index_flags() definition
sql/handler.h:
New handler::index_flags() definition
sql/log.cc:
Fixed compiler warnings
sql/log_event.cc:
Fixed compiler warnings (and renamed short variable name)
sql/opt_range.cc:
New handler::index_flags() definition
sql/opt_sum.cc:
New handler::index_flags() definition
sql/set_var.cc:
Removed compiler warnings
sql/sql_db.cc:
Removed compiler warnings
sql/sql_select.cc:
New handler::index_flags() definition
sql/sql_show.cc:
Removed compiler warnings
sql/sql_update.cc:
Removed compiler warnings
sql/table.cc:
New handler::index_flags() definition
A couple of small changes to ha_example (mainly comments).
sql/examples/ha_archive.cc:
Changes from Serg.
A few styles changes, fix for potential hash insert gone wrong, removed bad tables if create fails, gzflush used for flushing by default (had problems with OSX 10.2), and some spelling corrections.
sql/examples/ha_archive.h:
Removed fast_key_read() and changed the name of a conflicting variable.
sql/examples/ha_example.cc:
Added a few new comments.
sql/examples/ha_example.h:
Added pragma interface. Removed fast_key_read() and Serg's request
acconfig.h:
Adding undef piece for HAVE_ARCHIVE_DB
acinclude.m4:
Code needed for --with-archive-storage-engine flag for compile.
configure.in:
Adding tag for Archive
sql/Makefile.am:
Source updates to compile ha_archive
sql/examples/ha_archive.cc:
Class file for archive storage engine. First version.
sql/handler.cc:
Updates needed for adding archive storage engine.
sql/handler.h:
ENUM for archive storage engine.
sql/mysql_priv.h:
Archive show options
sql/mysqld.cc:
Ifdef foor HAVE_ARCHIVE_DB
sql/examples/ha_archive.h:
Include file for archive storage engine addition.
BitKeeper/etc/logging_ok:
Logging to logging@openlogging.org accepted