summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorVasil Dimov <vasil.dimov@oracle.com>2010-06-22 18:58:28 +0300
committerVasil Dimov <vasil.dimov@oracle.com>2010-06-22 18:58:28 +0300
commit149d305484b1aaa5334b37554f24abd37adcd16b (patch)
tree52d5ef078e4c39b78a42b7e8bf5cae18b8bc2432 /include
parentbc401730d655ec434406f56bda65d2678a4ca7c3 (diff)
parent13495faeb7bbe96c27174f466e1c290d68174352 (diff)
downloadmariadb-git-149d305484b1aaa5334b37554f24abd37adcd16b.tar.gz
Merge mysql-trunk -> mysql-trunk-merge
Diffstat (limited to 'include')
-rw-r--r--include/CMakeLists.txt4
-rw-r--r--include/heap.h17
-rw-r--r--include/thr_lock.h6
3 files changed, 16 insertions, 11 deletions
diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt
index e2ef01b3b4c..c3922231047 100644
--- a/include/CMakeLists.txt
+++ b/include/CMakeLists.txt
@@ -57,7 +57,7 @@ SET(HEADERS
${HEADERS_GEN_CONFIGURE}
)
-INSTALL(FILES ${HEADERS} DESTINATION ${INSTALL_INCLUDEDIR})
-INSTALL(DIRECTORY mysql/ DESTINATION ${INSTALL_INCLUDEDIR} FILES_MATCHING PATTERN "*.h")
+INSTALL(FILES ${HEADERS} DESTINATION ${INSTALL_INCLUDEDIR} COMPONENT Development)
+INSTALL(DIRECTORY mysql/ DESTINATION ${INSTALL_INCLUDEDIR} COMPONENT Development FILES_MATCHING PATTERN "*.h" )
diff --git a/include/heap.h b/include/heap.h
index 27aefb5beda..a585371e18f 100644
--- a/include/heap.h
+++ b/include/heap.h
@@ -184,12 +184,22 @@ typedef struct st_heap_info
typedef struct st_heap_create_info
{
+ HP_KEYDEF *keydef;
+ ulong max_records;
+ ulong min_records;
uint auto_key; /* keynr [1 - maxkey] for auto key */
uint auto_key_type;
+ uint keys;
+ uint reclength;
ulonglong max_table_size;
ulonglong auto_increment;
my_bool with_auto_increment;
my_bool internal_table;
+ /*
+ TRUE if heap_create should 'pin' the created share by setting
+ open_count to 1. Is only looked at if not internal_table.
+ */
+ my_bool pin_share;
} HP_CREATE_INFO;
/* Prototypes for heap-functions */
@@ -197,6 +207,7 @@ typedef struct st_heap_create_info
extern HP_INFO *heap_open(const char *name, int mode);
extern HP_INFO *heap_open_from_share(HP_SHARE *share, int mode);
extern HP_INFO *heap_open_from_share_and_register(HP_SHARE *share, int mode);
+extern void heap_release_share(HP_SHARE *share, my_bool internal_table);
extern int heap_close(HP_INFO *info);
extern int heap_write(HP_INFO *info,const uchar *buff);
extern int heap_update(HP_INFO *info,const uchar *old,const uchar *newdata);
@@ -205,9 +216,9 @@ extern int heap_scan_init(HP_INFO *info);
extern int heap_scan(register HP_INFO *info, uchar *record);
extern int heap_delete(HP_INFO *info,const uchar *buff);
extern int heap_info(HP_INFO *info,HEAPINFO *x,int flag);
-extern int heap_create(const char *name, uint keys, HP_KEYDEF *keydef,
- uint reclength, ulong max_records, ulong min_records,
- HP_CREATE_INFO *create_info, HP_SHARE **share);
+extern int heap_create(const char *name,
+ HP_CREATE_INFO *create_info, HP_SHARE **share,
+ my_bool *created_new_share);
extern int heap_delete_table(const char *name);
extern void heap_drop_table(HP_INFO *info);
extern int heap_extra(HP_INFO *info,enum ha_extra_function function);
diff --git a/include/thr_lock.h b/include/thr_lock.h
index 1f4072ca0c5..37dc37f8017 100644
--- a/include/thr_lock.h
+++ b/include/thr_lock.h
@@ -54,12 +54,6 @@ enum thr_lock_type { TL_IGNORE=-1,
*/
TL_WRITE_ALLOW_WRITE,
/*
- Write lock, but allow other threads to read.
- Used by ALTER TABLE in MySQL to allow readers
- to use the table until ALTER TABLE is finished.
- */
- TL_WRITE_ALLOW_READ,
- /*
WRITE lock used by concurrent insert. Will allow
READ, if one could use concurrent insert on table.
*/