Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
MariaDB
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
nexedi
MariaDB
Commits
122b597f
Commit
122b597f
authored
Nov 26, 2005
by
serg@serg.mylan
Browse files
Options
Browse Files
Download
Plain Diff
Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into serg.mylan:/usr/home/serg/Abk/mysql-5.0
parents
0745c8f2
10df921c
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
45 additions
and
10 deletions
+45
-10
include/my_base.h
include/my_base.h
+42
-9
sql/examples/ha_example.cc
sql/examples/ha_example.cc
+2
-0
sql/handler.h
sql/handler.h
+1
-1
No files found.
include/my_base.h
View file @
122b597f
...
@@ -260,15 +260,48 @@ enum ha_base_keytype {
...
@@ -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.
#define HA_STATUS_POS 1
/* Return position */
The method copies misc handler information out of the storage engine
#define HA_STATUS_NO_LOCK 2
/* Don't use external lock */
to data structures accessible from MySQL
#define HA_STATUS_TIME 4
/* Return update time */
#define HA_STATUS_CONST 8
/* Return constants values */
Same flags are also passed down to mi_status, myrg_status, etc.
#define HA_STATUS_VARIABLE 16
*/
#define HA_STATUS_ERRKEY 32
#define HA_STATUS_AUTO 64
/* this one is not used */
#define HA_STATUS_POS 1
/*
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 */
...
...
sql/examples/ha_example.cc
View file @
122b597f
...
@@ -480,6 +480,8 @@ int ha_example::rnd_pos(byte * buf, byte *pos)
...
@@ -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
...
...
sql/handler.h
View file @
122b597f
...
@@ -672,7 +672,7 @@ class handler :public Sql_alloc
...
@@ -672,7 +672,7 @@ class handler :public Sql_alloc
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
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment