Commit 4d76d2c4 authored by Rich Prohaska's avatar Rich Prohaska

add cursor->c_count. addresses #258

git-svn-id: file:///svn/tokudb@1586 c7de825b-a66e-492c-adef-691d508d4ae1
parent d95d9be0
......@@ -27,6 +27,7 @@ typedef struct __toku_db_txn_active DB_TXN_ACTIVE;
typedef struct __toku_db_txn_stat DB_TXN_STAT;
typedef struct __toku_dbc DBC;
typedef struct __toku_dbt DBT;
typedef u_int32_t db_recno_t;
typedef enum {
DB_BTREE=1,
DB_UNKNOWN=5
......@@ -227,13 +228,13 @@ struct __toku_dbc {
void* __toku_dummy0[19];
char __toku_dummy1[104];
int (*c_close) (DBC *); /* 32-bit offset=188 size=4, 64=bit offset=272 size=8 */
void* __toku_dummy2[1];
int (*c_count) (DBC *, db_recno_t *, u_int32_t); /* 32-bit offset=192 size=4, 64=bit offset=280 size=8 */
int (*c_del) (DBC *, u_int32_t); /* 32-bit offset=196 size=4, 64=bit offset=288 size=8 */
void* __toku_dummy3[1];
void* __toku_dummy2[1];
int (*c_get) (DBC *, DBT *, DBT *, u_int32_t); /* 32-bit offset=204 size=4, 64=bit offset=304 size=8 */
int (*c_pget) (DBC *, DBT *, DBT *, DBT *, u_int32_t); /* 32-bit offset=208 size=4, 64=bit offset=312 size=8 */
int (*c_put) (DBC *, DBT *, DBT *, u_int32_t); /* 32-bit offset=212 size=4, 64=bit offset=320 size=8 */
void* __toku_dummy4[9]; /* Padding at the end */
void* __toku_dummy3[9]; /* Padding at the end */
};
struct __toku_dbt {
void*data; /* 32-bit offset=0 size=4, 64=bit offset=0 size=8 */
......
......@@ -27,6 +27,7 @@ typedef struct __toku_db_txn_active DB_TXN_ACTIVE;
typedef struct __toku_db_txn_stat DB_TXN_STAT;
typedef struct __toku_dbc DBC;
typedef struct __toku_dbt DBT;
typedef u_int32_t db_recno_t;
typedef enum {
DB_BTREE=1,
DB_UNKNOWN=5
......@@ -242,13 +243,13 @@ struct __toku_dbc {
void* __toku_dummy0[17];
char __toku_dummy1[112];
int (*c_close) (DBC *); /* 32-bit offset=188 size=4, 64=bit offset=264 size=8 */
void* __toku_dummy2[1];
int (*c_count) (DBC *, db_recno_t *, u_int32_t); /* 32-bit offset=192 size=4, 64=bit offset=272 size=8 */
int (*c_del) (DBC *, u_int32_t); /* 32-bit offset=196 size=4, 64=bit offset=280 size=8 */
void* __toku_dummy3[1];
void* __toku_dummy2[1];
int (*c_get) (DBC *, DBT *, DBT *, u_int32_t); /* 32-bit offset=204 size=4, 64=bit offset=296 size=8 */
int (*c_pget) (DBC *, DBT *, DBT *, DBT *, u_int32_t); /* 32-bit offset=208 size=4, 64=bit offset=304 size=8 */
int (*c_put) (DBC *, DBT *, DBT *, u_int32_t); /* 32-bit offset=212 size=4, 64=bit offset=312 size=8 */
void* __toku_dummy4[8]; /* Padding at the end */
void* __toku_dummy3[8]; /* Padding at the end */
};
struct __toku_dbt {
void*data; /* 32-bit offset=0 size=4, 64=bit offset=0 size=8 */
......
......@@ -27,6 +27,7 @@ typedef struct __toku_db_txn_active DB_TXN_ACTIVE;
typedef struct __toku_db_txn_stat DB_TXN_STAT;
typedef struct __toku_dbc DBC;
typedef struct __toku_dbt DBT;
typedef u_int32_t db_recno_t;
typedef enum {
DB_BTREE=1,
DB_UNKNOWN=5
......@@ -242,13 +243,13 @@ struct __toku_dbc {
void* __toku_dummy0[19];
char __toku_dummy1[104];
int (*c_close) (DBC *); /* 32-bit offset=188 size=4, 64=bit offset=272 size=8 */
void* __toku_dummy2[1];
int (*c_count) (DBC *, db_recno_t *, u_int32_t); /* 32-bit offset=192 size=4, 64=bit offset=280 size=8 */
int (*c_del) (DBC *, u_int32_t); /* 32-bit offset=196 size=4, 64=bit offset=288 size=8 */
void* __toku_dummy3[1];
void* __toku_dummy2[1];
int (*c_get) (DBC *, DBT *, DBT *, u_int32_t); /* 32-bit offset=204 size=4, 64=bit offset=304 size=8 */
int (*c_pget) (DBC *, DBT *, DBT *, DBT *, u_int32_t); /* 32-bit offset=208 size=4, 64=bit offset=312 size=8 */
int (*c_put) (DBC *, DBT *, DBT *, u_int32_t); /* 32-bit offset=212 size=4, 64=bit offset=320 size=8 */
void* __toku_dummy4[8]; /* Padding at the end */
void* __toku_dummy3[8]; /* Padding at the end */
};
struct __toku_dbt {
void*data; /* 32-bit offset=0 size=4, 64=bit offset=0 size=8 */
......
......@@ -27,6 +27,7 @@ typedef struct __toku_db_txn_active DB_TXN_ACTIVE;
typedef struct __toku_db_txn_stat DB_TXN_STAT;
typedef struct __toku_dbc DBC;
typedef struct __toku_dbt DBT;
typedef u_int32_t db_recno_t;
typedef enum {
DB_BTREE=1,
DB_UNKNOWN=5
......@@ -241,13 +242,13 @@ struct __toku_dbc {
void* __toku_dummy0[23];
char __toku_dummy1[104];
int (*c_close) (DBC *); /* 32-bit offset=204 size=4, 64=bit offset=304 size=8 */
void* __toku_dummy2[1];
int (*c_count) (DBC *, db_recno_t *, u_int32_t); /* 32-bit offset=208 size=4, 64=bit offset=312 size=8 */
int (*c_del) (DBC *, u_int32_t); /* 32-bit offset=212 size=4, 64=bit offset=320 size=8 */
void* __toku_dummy3[1];
void* __toku_dummy2[1];
int (*c_get) (DBC *, DBT *, DBT *, u_int32_t); /* 32-bit offset=220 size=4, 64=bit offset=336 size=8 */
int (*c_pget) (DBC *, DBT *, DBT *, DBT *, u_int32_t); /* 32-bit offset=224 size=4, 64=bit offset=344 size=8 */
int (*c_put) (DBC *, DBT *, DBT *, u_int32_t); /* 32-bit offset=228 size=4, 64=bit offset=352 size=8 */
void* __toku_dummy4[8]; /* Padding at the end */
void* __toku_dummy3[8]; /* Padding at the end */
};
struct __toku_dbt {
void*data; /* 32-bit offset=0 size=4, 64=bit offset=0 size=8 */
......
......@@ -27,6 +27,7 @@ typedef struct __toku_db_txn_active DB_TXN_ACTIVE;
typedef struct __toku_db_txn_stat DB_TXN_STAT;
typedef struct __toku_dbc DBC;
typedef struct __toku_dbt DBT;
typedef u_int32_t db_recno_t;
typedef enum {
DB_BTREE=1,
DB_UNKNOWN=5
......@@ -246,13 +247,13 @@ struct __toku_dbc {
void* __toku_dummy0[33];
char __toku_dummy1[104];
int (*c_close) (DBC *); /* 32-bit offset=244 size=4, 64=bit offset=384 size=8 */
void* __toku_dummy2[1];
int (*c_count) (DBC *, db_recno_t *, u_int32_t); /* 32-bit offset=248 size=4, 64=bit offset=392 size=8 */
int (*c_del) (DBC *, u_int32_t); /* 32-bit offset=252 size=4, 64=bit offset=400 size=8 */
void* __toku_dummy3[1];
void* __toku_dummy2[1];
int (*c_get) (DBC *, DBT *, DBT *, u_int32_t); /* 32-bit offset=260 size=4, 64=bit offset=416 size=8 */
int (*c_pget) (DBC *, DBT *, DBT *, DBT *, u_int32_t); /* 32-bit offset=264 size=4, 64=bit offset=424 size=8 */
int (*c_put) (DBC *, DBT *, DBT *, u_int32_t); /* 32-bit offset=268 size=4, 64=bit offset=432 size=8 */
void* __toku_dummy4[8]; /* Padding at the end */
void* __toku_dummy3[8]; /* Padding at the end */
};
struct __toku_dbt {
void*data; /* 32-bit offset=0 size=4, 64=bit offset=0 size=8 */
......
......@@ -255,6 +255,7 @@ int main (int argc __attribute__((__unused__)), char *argv[] __attribute__((__un
printf("typedef struct __toku_db_txn_stat DB_TXN_STAT;\n");
printf("typedef struct __toku_dbc DBC;\n");
printf("typedef struct __toku_dbt DBT;\n");
printf("typedef u_int32_t db_recno_t;\n");
print_dbtype();
// print_db_notices();
print_defines();
......
......@@ -176,6 +176,7 @@ void sample_db_txn_stat_offsets (void) {
void sample_dbc_offsets (void) {
field_counter=0;
STRUCT_SETUP(DBC, c_close, "int (*%s) (DBC *)");
STRUCT_SETUP(DBC, c_count, "int (*%s) (DBC *, db_recno_t *, u_int32_t)");
STRUCT_SETUP(DBC, c_del, "int (*%s) (DBC *, u_int32_t)");
STRUCT_SETUP(DBC, c_get, "int (*%s) (DBC *, DBT *, DBT *, u_int32_t)");
STRUCT_SETUP(DBC, c_pget, "int (*%s) (DBC *, DBT *, DBT *, DBT *, u_int32_t)");
......
......@@ -87,6 +87,7 @@ struct fieldinfo db_txn_stat_fields32[] = {
struct fieldinfo dbc_fields32[] = {
{"DB *dbp", 0, 4},
{"int (*c_close) (DBC *)", 188, 4},
{"int (*c_count) (DBC *, db_recno_t *, u_int32_t)", 192, 4},
{"int (*c_del) (DBC *, u_int32_t)", 196, 4},
{"int (*c_get) (DBC *, DBT *, DBT *, u_int32_t)", 204, 4},
{"int (*c_pget) (DBC *, DBT *, DBT *, DBT *, u_int32_t)", 208, 4},
......
......@@ -91,6 +91,7 @@ struct fieldinfo db_txn_stat_fields32[] = {
struct fieldinfo dbc_fields32[] = {
{"DB *dbp", 0, 4},
{"int (*c_close) (DBC *)", 188, 4},
{"int (*c_count) (DBC *, db_recno_t *, u_int32_t)", 192, 4},
{"int (*c_del) (DBC *, u_int32_t)", 196, 4},
{"int (*c_get) (DBC *, DBT *, DBT *, u_int32_t)", 204, 4},
{"int (*c_pget) (DBC *, DBT *, DBT *, DBT *, u_int32_t)", 208, 4},
......
......@@ -91,6 +91,7 @@ struct fieldinfo db_txn_stat_fields32[] = {
struct fieldinfo dbc_fields32[] = {
{"DB *dbp", 0, 4},
{"int (*c_close) (DBC *)", 188, 4},
{"int (*c_count) (DBC *, db_recno_t *, u_int32_t)", 192, 4},
{"int (*c_del) (DBC *, u_int32_t)", 196, 4},
{"int (*c_get) (DBC *, DBT *, DBT *, u_int32_t)", 204, 4},
{"int (*c_pget) (DBC *, DBT *, DBT *, DBT *, u_int32_t)", 208, 4},
......
......@@ -90,6 +90,7 @@ struct fieldinfo db_txn_stat_fields32[] = {
struct fieldinfo dbc_fields32[] = {
{"DB *dbp", 0, 4},
{"int (*c_close) (DBC *)", 204, 4},
{"int (*c_count) (DBC *, db_recno_t *, u_int32_t)", 208, 4},
{"int (*c_del) (DBC *, u_int32_t)", 212, 4},
{"int (*c_get) (DBC *, DBT *, DBT *, u_int32_t)", 220, 4},
{"int (*c_pget) (DBC *, DBT *, DBT *, DBT *, u_int32_t)", 224, 4},
......
......@@ -90,6 +90,7 @@ struct fieldinfo db_txn_stat_fields32[] = {
struct fieldinfo dbc_fields32[] = {
{"DB *dbp", 0, 4},
{"int (*c_close) (DBC *)", 244, 4},
{"int (*c_count) (DBC *, db_recno_t *, u_int32_t)", 248, 4},
{"int (*c_del) (DBC *, u_int32_t)", 252, 4},
{"int (*c_get) (DBC *, DBT *, DBT *, u_int32_t)", 260, 4},
{"int (*c_pget) (DBC *, DBT *, DBT *, DBT *, u_int32_t)", 264, 4},
......
......@@ -87,6 +87,7 @@ struct fieldinfo db_txn_stat_fields64[] = {
struct fieldinfo dbc_fields64[] = {
{"DB *dbp", 0, 8},
{"int (*c_close) (DBC *)", 272, 8},
{"int (*c_count) (DBC *, db_recno_t *, u_int32_t)", 280, 8},
{"int (*c_del) (DBC *, u_int32_t)", 288, 8},
{"int (*c_get) (DBC *, DBT *, DBT *, u_int32_t)", 304, 8},
{"int (*c_pget) (DBC *, DBT *, DBT *, DBT *, u_int32_t)", 312, 8},
......
......@@ -91,6 +91,7 @@ struct fieldinfo db_txn_stat_fields64[] = {
struct fieldinfo dbc_fields64[] = {
{"DB *dbp", 0, 8},
{"int (*c_close) (DBC *)", 264, 8},
{"int (*c_count) (DBC *, db_recno_t *, u_int32_t)", 272, 8},
{"int (*c_del) (DBC *, u_int32_t)", 280, 8},
{"int (*c_get) (DBC *, DBT *, DBT *, u_int32_t)", 296, 8},
{"int (*c_pget) (DBC *, DBT *, DBT *, DBT *, u_int32_t)", 304, 8},
......
......@@ -91,6 +91,7 @@ struct fieldinfo db_txn_stat_fields64[] = {
struct fieldinfo dbc_fields64[] = {
{"DB *dbp", 0, 8},
{"int (*c_close) (DBC *)", 272, 8},
{"int (*c_count) (DBC *, db_recno_t *, u_int32_t)", 280, 8},
{"int (*c_del) (DBC *, u_int32_t)", 288, 8},
{"int (*c_get) (DBC *, DBT *, DBT *, u_int32_t)", 304, 8},
{"int (*c_pget) (DBC *, DBT *, DBT *, DBT *, u_int32_t)", 312, 8},
......
......@@ -90,6 +90,7 @@ struct fieldinfo db_txn_stat_fields64[] = {
struct fieldinfo dbc_fields64[] = {
{"DB *dbp", 0, 8},
{"int (*c_close) (DBC *)", 304, 8},
{"int (*c_count) (DBC *, db_recno_t *, u_int32_t)", 312, 8},
{"int (*c_del) (DBC *, u_int32_t)", 320, 8},
{"int (*c_get) (DBC *, DBT *, DBT *, u_int32_t)", 336, 8},
{"int (*c_pget) (DBC *, DBT *, DBT *, DBT *, u_int32_t)", 344, 8},
......
......@@ -90,6 +90,7 @@ struct fieldinfo db_txn_stat_fields64[] = {
struct fieldinfo dbc_fields64[] = {
{"DB *dbp", 0, 8},
{"int (*c_close) (DBC *)", 384, 8},
{"int (*c_count) (DBC *, db_recno_t *, u_int32_t)", 392, 8},
{"int (*c_del) (DBC *, u_int32_t)", 400, 8},
{"int (*c_get) (DBC *, DBT *, DBT *, u_int32_t)", 416, 8},
{"int (*c_pget) (DBC *, DBT *, DBT *, DBT *, u_int32_t)", 424, 8},
......
......@@ -27,6 +27,7 @@ typedef struct __toku_db_txn_active DB_TXN_ACTIVE;
typedef struct __toku_db_txn_stat DB_TXN_STAT;
typedef struct __toku_dbc DBC;
typedef struct __toku_dbt DBT;
typedef u_int32_t db_recno_t;
typedef enum {
DB_BTREE=1,
DB_UNKNOWN=5
......@@ -242,13 +243,13 @@ struct __toku_dbc {
void* __toku_dummy0[19];
char __toku_dummy1[104];
int (*c_close) (DBC *); /* 32-bit offset=188 size=4, 64=bit offset=272 size=8 */
void* __toku_dummy2[1];
int (*c_count) (DBC *, db_recno_t *, u_int32_t); /* 32-bit offset=192 size=4, 64=bit offset=280 size=8 */
int (*c_del) (DBC *, u_int32_t); /* 32-bit offset=196 size=4, 64=bit offset=288 size=8 */
void* __toku_dummy3[1];
void* __toku_dummy2[1];
int (*c_get) (DBC *, DBT *, DBT *, u_int32_t); /* 32-bit offset=204 size=4, 64=bit offset=304 size=8 */
int (*c_pget) (DBC *, DBT *, DBT *, DBT *, u_int32_t); /* 32-bit offset=208 size=4, 64=bit offset=312 size=8 */
int (*c_put) (DBC *, DBT *, DBT *, u_int32_t); /* 32-bit offset=212 size=4, 64=bit offset=320 size=8 */
void* __toku_dummy4[8]; /* Padding at the end */
void* __toku_dummy3[8]; /* Padding at the end */
};
struct __toku_dbt {
void*data; /* 32-bit offset=0 size=4, 64=bit offset=0 size=8 */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment