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
6fa845d7
Commit
6fa845d7
authored
Jun 25, 2004
by
igor@rurik.mysql.com
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
After merge fix
parent
64d46dfe
Changes
2
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
424 additions
and
164 deletions
+424
-164
sql/sql_base.cc
sql/sql_base.cc
+402
-159
sql/table.h
sql/table.h
+22
-5
No files found.
sql/sql_base.cc
View file @
6fa845d7
This diff is collapsed.
Click to expand it.
sql/table.h
View file @
6fa845d7
...
...
@@ -26,6 +26,7 @@ class st_select_lex_unit;
typedef
struct
st_order
{
struct
st_order
*
next
;
Item
**
item
;
/* Point at item in select fields */
Item
*
item_ptr
;
/* Storage for initial item */
Item
**
item_copy
;
/* For SPs; the original item ptr */
bool
asc
;
/* true if ascending */
bool
free_me
;
/* true if item isn't shared */
...
...
@@ -66,7 +67,8 @@ struct st_table {
handler
*
file
;
Field
**
field
;
/* Pointer to fields */
Field_blob
**
blob_field
;
/* Pointer to blob fields */
HASH
name_hash
;
/* hash of field names */
/* hash of field names (contains pointers to elements of field array) */
HASH
name_hash
;
byte
*
record
[
2
];
/* Pointer to records */
byte
*
default_values
;
/* Default values for INSERT */
byte
*
insert_values
;
/* used by INSERT ... UPDATE */
...
...
@@ -97,8 +99,20 @@ struct st_table {
uint
raid_type
,
raid_chunks
;
uint
status
;
/* Used by postfix.. */
uint
system
;
/* Set if system record */
ulong
time_stamp
;
/* Set to offset+1 of record */
/*
These two members hold offset in record + 1 for TIMESTAMP field
with NOW() as default value or/and with ON UPDATE NOW() option.
If 0 then such field is absent in this table or auto-set for default
or/and on update should be temporaly disabled for some reason.
These values is setup to offset value for each statement in open_table()
and turned off in statement processing code (see mysql_update as example).
*/
ulong
timestamp_default_now
;
ulong
timestamp_on_update_now
;
/* Index of auto-updated TIMESTAMP field in field array */
uint
timestamp_field_offset
;
uint
next_number_index
;
uint
blob_ptr_size
;
/* 4 or 8 */
uint
next_number_key_offset
;
...
...
@@ -109,7 +123,7 @@ struct st_table {
my_bool
maybe_null
,
outer_join
;
/* Used with OUTER JOIN */
my_bool
force_index
;
my_bool
distinct
,
const_table
,
no_rows
;
my_bool
key_read
,
bulk_insert
;
my_bool
key_read
;
my_bool
crypted
;
my_bool
db_low_byte_first
;
/* Portable row format */
my_bool
locked_by_flush
;
...
...
@@ -119,7 +133,7 @@ struct st_table {
my_bool
is_view
;
my_bool
no_keyread
,
no_cache
;
my_bool
clear_query_id
;
/* To reset query_id for tables and cols */
my_bool
auto_increment_field_not_null
;
my_bool
auto_increment_field_not_null
;
Field
*
next_number_field
,
/* Set if next_number is activated */
*
found_next_number_field
,
/* Set on open */
*
rowid_field
;
...
...
@@ -170,7 +184,7 @@ typedef struct st_table_list
GRANT_INFO
grant
;
thr_lock_type
lock_type
;
uint
outer_join
;
/* Which join type */
uint
shared
;
/* Used in
union or in
multi-upd */
uint
shared
;
/* Used in multi-upd */
uint32
db_length
,
real_name_length
;
bool
straight
;
/* optimize with prev table */
bool
updating
;
/* for replicate-do/ignore table */
...
...
@@ -181,6 +195,9 @@ typedef struct st_table_list
struct
st_nested_join
*
nested_join
;
/* if the element is a nested join */
st_table_list
*
embedding
;
/* nested join containing the table */
List
<
struct
st_table_list
>
*
join_list
;
/* join list the table belongs to */
bool
cacheable_table
;
/* stop PS caching */
/* used in multi-upd privelege check */
bool
table_in_update_from_clause
;
}
TABLE_LIST
;
typedef
struct
st_nested_join
...
...
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