summaryrefslogtreecommitdiff
path: root/sql/ha_archive.h
diff options
context:
space:
mode:
authorunknown <brian@zim.(none)>2005-12-22 19:50:10 -0800
committerunknown <brian@zim.(none)>2005-12-22 19:50:10 -0800
commit93b3d4efc6c172b1cbc5cca35fa9b10a1aa12fb5 (patch)
tree21a09fbc80ce6a37eb6fa0c732c34a8de3b2ed28 /sql/ha_archive.h
parent3cb80d328ddf0e82cd7aebc29624f243e4d9be37 (diff)
downloadmariadb-git-93b3d4efc6c172b1cbc5cca35fa9b10a1aa12fb5.tar.gz
Update to add in support for AZIO.
AZIO differs in that it uses mysys methods and removes all of the malloc calls. configure.in: Update for new archive directory libmysqld/Makefile.am: Adding archive storage directory. sql/Makefile.am: Adding archive library. sql/ha_archive.cc: Update for ha_archive to use azio. sql/ha_archive.h: Updates to support azio. storage/Makefile.am: Added archive directory. storage/archive/Makefile.am: New BitKeeper file ``storage/archive/Makefile.am'' storage/archive/archive_test.c: New BitKeeper file ``storage/archive/archive_test.c'' storage/archive/azio.c: New BitKeeper file ``storage/archive/azio.c'' storage/archive/azlib.h: New BitKeeper file ``storage/archive/azlib.h''
Diffstat (limited to 'sql/ha_archive.h')
-rw-r--r--sql/ha_archive.h13
1 files changed, 7 insertions, 6 deletions
diff --git a/sql/ha_archive.h b/sql/ha_archive.h
index ccfe1a85728..2df23eec6c3 100644
--- a/sql/ha_archive.h
+++ b/sql/ha_archive.h
@@ -19,6 +19,7 @@
#endif
#include <zlib.h>
+#include "../storage/archive/azlib.h"
/*
Please read ha_archive.cc first. If you are looking for more general
@@ -33,7 +34,7 @@ typedef struct st_archive_share {
pthread_mutex_t mutex;
THR_LOCK lock;
File meta_file; /* Meta file we use */
- gzFile archive_write; /* Archive file we are working with */
+ azio_stream archive_write; /* Archive file we are working with */
bool dirty; /* Flag for if a flush should occur */
bool crashed; /* Meta file is crashed */
ha_rows rows_recorded; /* Number of rows in tables */
@@ -49,7 +50,7 @@ class ha_archive: public handler
{
THR_LOCK_DATA lock; /* MySQL lock */
ARCHIVE_SHARE *share; /* Shared lock info */
- gzFile archive; /* Archive file we are working with */
+ azio_stream archive; /* Archive file we are working with */
z_off_t current_position; /* The position of the row we just read */
byte byte_buffer[IO_SIZE]; /* Initial buffer for our string */
String buffer; /* Buffer used for blob storage */
@@ -77,19 +78,19 @@ public:
int open(const char *name, int mode, uint test_if_locked);
int close(void);
int write_row(byte * buf);
- int real_write_row(byte *buf, gzFile writer);
+ int real_write_row(byte *buf, azio_stream *writer);
int delete_all_rows();
int rnd_init(bool scan=1);
int rnd_next(byte *buf);
int rnd_pos(byte * buf, byte *pos);
- int get_row(gzFile file_to_read, byte *buf);
+ int get_row(azio_stream *file_to_read, byte *buf);
int read_meta_file(File meta_file, ha_rows *rows);
int write_meta_file(File meta_file, ha_rows rows, bool dirty);
ARCHIVE_SHARE *get_share(const char *table_name, TABLE *table);
int free_share(ARCHIVE_SHARE *share);
bool auto_repair() const { return 1; } // For the moment we just do this
- int read_data_header(gzFile file_to_read);
- int write_data_header(gzFile file_to_write);
+ int read_data_header(azio_stream *file_to_read);
+ int write_data_header(azio_stream *file_to_write);
void position(const byte *record);
void info(uint);
int create(const char *name, TABLE *form, HA_CREATE_INFO *create_info);