Changeset: c7b97bee8c2a for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=c7b97bee8c2a
Modified Files:
sql/include/sql_catalog.h
sql/storage/objectset.c
Branch: nospare
Log Message:
Rename some struct fields.
diffs (truncated from 711 to 300 lines):
diff --git a/sql/include/sql_catalog.h b/sql/include/sql_catalog.h
--- a/sql/include/sql_catalog.h
+++ b/sql/include/sql_catalog.h
@@ -223,11 +223,11 @@ typedef void *sql_store;
struct sql_trans;
struct sql_change;
struct objectset;
-struct object_node;
+struct versionhead;
struct os_iter {
struct objectset *os;
struct sql_trans *tr;
- struct object_node *n;
+ struct versionhead *n;
struct sql_hash_e *e;
const char *name;
};
diff --git a/sql/storage/objectset.c b/sql/storage/objectset.c
--- a/sql/storage/objectset.c
+++ b/sql/storage/objectset.c
@@ -18,7 +18,7 @@
* keep hash/map of names -> objectversion
*/
-struct object_node;// TODO: rename to object_version_chain
+struct versionhead ;// TODO: rename to object_version_chain
#define id_based_rollbacked (1)
#define name_based_rollbacked (1<<1)
@@ -30,32 +30,32 @@ typedef struct objectversion {
ulng ts;
bte rollbacked;
bte life_cycle;
- sql_base *obj;
+ sql_base *b; // base of underlying sql object
struct objectset* os;
struct objectversion *name_based_older;
struct objectversion *name_based_newer; // TODO: must become atomic
pointer
- struct object_node *name_based_chain;
+ struct versionhead *name_based_head;
struct objectversion *id_based_older;
struct objectversion *id_based_newer;
- struct object_node *id_based_chain;
+ struct versionhead *id_based_head;
} objectversion;
-typedef struct object_node {
- struct object_node* prev;
- struct object_node* next;
- objectversion* data;
-} object_node;
+typedef struct versionhead {
+ struct versionhead * prev;
+ struct versionhead * next;
+ objectversion* ov;
+} versionhead ;
typedef struct objectset {
int refcnt;
sql_allocator *sa;
destroy_fptr destroy;
MT_Lock ht_lock; /* latch protecting ht */
- object_node *name_based_h;
- object_node *name_based_t;
- object_node *id_based_h;
- object_node *id_based_t;
+ versionhead *name_based_h;
+ versionhead *name_based_t;
+ versionhead *id_based_h;
+ versionhead *id_based_t;
int name_based_cnt;
int id_based_cnt;
struct sql_hash *name_map;
@@ -65,12 +65,12 @@ typedef struct objectset {
} objectset;
static int
-os_id_key(object_node *n)
+os_id_key(versionhead *n)
{
- return BATatoms[TYPE_int].atomHash(&n->data->obj->id);
+ return BATatoms[TYPE_int].atomHash(&n->ov->b->id);
}
-static object_node *
+static versionhead *
find_id(objectset *os, sqlid id)
{
if (os) {
@@ -83,7 +83,7 @@ find_id(objectset *os, sqlid id)
return NULL;
}
- for (object_node *n = os->id_based_h; n; n = n->next ) {
+ for (versionhead *n = os->id_based_h; n; n = n->next )
{
int key = os_id_key(n);
if (hash_add(os->id_map, key, n) == NULL) {
@@ -97,9 +97,9 @@ find_id(objectset *os, sqlid id)
sql_hash_e *he =
os->id_map->buckets[key&(os->id_map->size-1)];
for (; he; he = he->chain) {
- object_node *n = he->value;
+ versionhead *n = he->value;
- if (n && n->data->obj->id == id) {
+ if (n && n->ov->b->id == id) {
MT_lock_unset(&os->ht_lock);
return n;
}
@@ -109,11 +109,11 @@ find_id(objectset *os, sqlid id)
}
MT_lock_unset(&os->ht_lock);
// TODO: can we actually reach this point?
- for (object_node *n = os->id_based_h; n; n = n->next) {
- objectversion *ov = n->data;
+ for (versionhead *n = os->id_based_h; n; n = n->next) {
+ objectversion *ov = n->ov;
/* check if ids match */
- if (id == ov->obj->id) {
+ if (id == ov->b->id) {
return n;
}
}
@@ -140,18 +140,18 @@ hash_delete(sql_hash *h, void *data)
}
static void
-node_destroy(objectset *os, sqlstore *store, object_node *n)
+node_destroy(objectset *os, sqlstore *store, versionhead *n)
{
if (!os->sa)
_DELETE(n);
- (void)store; /* todo destroy obj */
+ (void)store; /* todo destroy b */
}
-static object_node *
-os_remove_name_based_chain(objectset *os, sqlstore *store, object_node *n)
+static versionhead *
+os_remove_name_based_chain(objectset *os, sqlstore *store, versionhead *n)
{
assert(n);
- object_node *p = os->name_based_h;
+ versionhead *p = os->name_based_h;
if (p != n)
while (p && p->next != n)
@@ -179,11 +179,11 @@ os_remove_name_based_chain(objectset *os
return p;
}
-static object_node *
-os_remove_id_based_chain(objectset *os, sqlstore *store, object_node *n)
+static versionhead *
+os_remove_id_based_chain(objectset *os, sqlstore *store, versionhead *n)
{
assert(n);
- object_node *p = os->id_based_h;
+ versionhead *p = os->id_based_h;
if (p != n)
while (p && p->next != n)
@@ -211,21 +211,21 @@ os_remove_id_based_chain(objectset *os,
return p;
}
-static object_node *
+static versionhead *
node_create(sql_allocator *sa, objectversion *ov)
{
- object_node *n = (sa)?SA_NEW(sa, object_node):MNEW(object_node);
+ versionhead *n = (sa)?SA_NEW(sa, versionhead ):MNEW(versionhead );
if (n == NULL)
return NULL;
- *n = (object_node) {
- .data = ov,
+ *n = (versionhead ) {
+ .ov = ov,
};
return n;
}
static objectset *
-os_append_node_name(objectset *os, object_node *n)
+os_append_node_name(objectset *os, versionhead *n)
{
if (os->name_based_t) {
os->name_based_t->next = n;
@@ -234,7 +234,7 @@ os_append_node_name(objectset *os, objec
}
n->prev = os->name_based_t; // aka the double linked list.
os->name_based_t = n;
- if (n->data) {
+ if (n->ov) {
MT_lock_set(&os->ht_lock);
if (os->name_map) {
int key = os->name_map->key(n);
@@ -253,17 +253,17 @@ os_append_node_name(objectset *os, objec
static objectset *
os_append_name(objectset *os, objectversion *ov)
{
- object_node *n = node_create(os->sa, ov);
+ versionhead *n = node_create(os->sa, ov);
if (n == NULL)
return NULL;
- ov->name_based_chain = n;
+ ov->name_based_head = n;
return os_append_node_name(os, n);
}
static objectset *
-os_append_node_id(objectset *os, object_node *n)
+os_append_node_id(objectset *os, versionhead *n)
{
if (os->id_based_t) {
os->id_based_t->next = n;
@@ -272,7 +272,7 @@ os_append_node_id(objectset *os, object_
}
n->prev = os->id_based_t; // aka the double linked list.
os->id_based_t = n;
- if (n->data) {
+ if (n->ov) {
MT_lock_set(&os->ht_lock);
if (os->id_map) {
int key = os->id_map->key(n);
@@ -291,21 +291,21 @@ os_append_node_id(objectset *os, object_
static objectset *
os_append_id(objectset *os, objectversion *ov)
{
- object_node *n = node_create(os->sa, ov);
+ versionhead *n = node_create(os->sa, ov);
if (n == NULL)
return NULL;
- ov->id_based_chain = n;
+ ov->id_based_head = n;
return os_append_node_id(os, n);
}
-static object_node* find_name(objectset *os, const char *name);
+static versionhead * find_name(objectset *os, const char *name);
static void
objectversion_destroy(sqlstore *store, objectset* os, objectversion *ov)
{
if (os->destroy)
- os->destroy(store, ov->obj);
+ os->destroy(store, ov->b);
_DELETE(ov);
}
@@ -319,13 +319,13 @@ os_rollback_os_id_based_cascading(object
if (ov->id_based_older) {
if (ov->id_based_older->ts < TRANSACTION_ID_BASE) {
- // older is last committed state. Restore object_node
pointer to that.
+ // older is last committed state. Restore versionhead
pointer to that.
// TODO START ATOMIC()
- ov->id_based_chain->data = ov->id_based_older;
+ ov->id_based_head->ov = ov->id_based_older;
// END ATOMIC()
}
else {
-
os_rollback_name_based_terminal_decendant(ov->name_based_chain->data, store);
+
os_rollback_name_based_terminal_decendant(ov->name_based_head->ov, store);
// id based cascaded rollback along the parents
ov->id_based_older->rollbacked |= id_based_rollbacked;
@@ -334,7 +334,7 @@ os_rollback_os_id_based_cascading(object
}
else {
// this is a terminal node. i.e. this objectversion does not
have id based committed history
- os_remove_id_based_chain(ov->os, store, ov->id_based_chain);
+ os_remove_id_based_chain(ov->os, store, ov->id_based_head);
}
}
@@ -344,13 +344,13 @@ os_rollback_os_name_based_cascading(obje
if (ov->name_based_older) {
if (ov->name_based_older->ts < TRANSACTION_ID_BASE) {
- // older is last committed state. Restore object_node
pointer to that.
+ // older is last committed state. Restore versionhead
pointer to that.
// TODO START ATOMIC()
- ov->name_based_chain->data = ov->name_based_older;
+ ov->name_based_head->ov = ov->name_based_older;
// END ATOMIC()
}
else {
-
os_rollback_id_based_terminal_decendant(ov->id_based_chain->data, store);
+
os_rollback_id_based_terminal_decendant(ov->id_based_head->ov, store);
// name based cascaded rollback along the parents
ov->name_based_older->rollbacked |=
name_based_rollbacked;
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list