mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
documenting HA_STATUS_xxx flags
This commit is contained in:
@ -260,15 +260,48 @@ enum ha_base_keytype {
|
|||||||
#define HA_CREATE_CHECKSUM 8
|
#define HA_CREATE_CHECKSUM 8
|
||||||
#define HA_CREATE_DELAY_KEY_WRITE 64
|
#define HA_CREATE_DELAY_KEY_WRITE 64
|
||||||
|
|
||||||
/* Bits in flag to _status */
|
/*
|
||||||
|
The following flags (OR-ed) are passed to handler::info() method.
|
||||||
|
The method copies misc handler information out of the storage engine
|
||||||
|
to data structures accessible from MySQL
|
||||||
|
|
||||||
#define HA_STATUS_POS 1 /* Return position */
|
Same flags are also passed down to mi_status, myrg_status, etc.
|
||||||
#define HA_STATUS_NO_LOCK 2 /* Don't use external lock */
|
*/
|
||||||
#define HA_STATUS_TIME 4 /* Return update time */
|
|
||||||
#define HA_STATUS_CONST 8 /* Return constants values */
|
/* this one is not used */
|
||||||
#define HA_STATUS_VARIABLE 16
|
#define HA_STATUS_POS 1
|
||||||
#define HA_STATUS_ERRKEY 32
|
/*
|
||||||
#define HA_STATUS_AUTO 64
|
assuming the table keeps shared actual copy of the 'info' and
|
||||||
|
local, possibly outdated copy, the following flag means that
|
||||||
|
it should not try to get the actual data (locking the shared structure)
|
||||||
|
slightly outdated version will suffice
|
||||||
|
*/
|
||||||
|
#define HA_STATUS_NO_LOCK 2
|
||||||
|
/* update the time of the last modification (in handler::update_time) */
|
||||||
|
#define HA_STATUS_TIME 4
|
||||||
|
/*
|
||||||
|
update the 'constant' part of the info:
|
||||||
|
handler::max_data_file_length, max_index_file_length, create_time
|
||||||
|
sortkey, ref_length, block_size, data_file_name, index_file_name.
|
||||||
|
handler::table->s->keys_in_use, keys_for_keyread, rec_per_key
|
||||||
|
*/
|
||||||
|
#define HA_STATUS_CONST 8
|
||||||
|
/*
|
||||||
|
update the 'variable' part of the info:
|
||||||
|
handler::records, deleted, data_file_length, index_file_length,
|
||||||
|
delete_length, check_time, mean_rec_length
|
||||||
|
*/
|
||||||
|
#define HA_STATUS_VARIABLE 16
|
||||||
|
/*
|
||||||
|
get the information about the key that caused last duplicate value error
|
||||||
|
update handler::errkey and handler::dupp_ref
|
||||||
|
see handler::get_dup_key()
|
||||||
|
*/
|
||||||
|
#define HA_STATUS_ERRKEY 32
|
||||||
|
/*
|
||||||
|
update handler::auto_increment_value
|
||||||
|
*/
|
||||||
|
#define HA_STATUS_AUTO 64
|
||||||
|
|
||||||
/* Errorcodes given by functions */
|
/* Errorcodes given by functions */
|
||||||
|
|
||||||
|
@ -480,6 +480,8 @@ int ha_example::rnd_pos(byte * buf, byte *pos)
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
::info() is used to return information to the optimizer.
|
::info() is used to return information to the optimizer.
|
||||||
|
see my_base.h for the complete description
|
||||||
|
|
||||||
Currently this table handler doesn't implement most of the fields
|
Currently this table handler doesn't implement most of the fields
|
||||||
really needed. SHOW also makes use of this data
|
really needed. SHOW also makes use of this data
|
||||||
Another note, you will probably want to have the following in your
|
Another note, you will probably want to have the following in your
|
||||||
|
@ -672,7 +672,7 @@ public:
|
|||||||
key_range *max_key)
|
key_range *max_key)
|
||||||
{ return (ha_rows) 10; }
|
{ return (ha_rows) 10; }
|
||||||
virtual void position(const byte *record)=0;
|
virtual void position(const byte *record)=0;
|
||||||
virtual void info(uint)=0;
|
virtual void info(uint)=0; // see my_base.h for full description
|
||||||
virtual int extra(enum ha_extra_function operation)
|
virtual int extra(enum ha_extra_function operation)
|
||||||
{ return 0; }
|
{ return 0; }
|
||||||
virtual int extra_opt(enum ha_extra_function operation, ulong cache_size)
|
virtual int extra_opt(enum ha_extra_function operation, ulong cache_size)
|
||||||
|
Reference in New Issue
Block a user