Update of /cvsroot/monetdb/sql/src/storage
In directory 23jxhf1.ch3.sourceforge.com:/tmp/cvs-serv22856/src/storage

Modified Files:
      Tag: Aug2009
        sql_storage.h store.mx store_connections.mx 
        store_dependency.mx 
Log Message:

In an attampt to ensure portability to, and hence correctness on,
64-bit big-endian machines with 32-bit OIDs,
we make the SQL storage interface implementation a bit "less generic",
but a bit "more MonetDB-specific",
by using type oid instead of type ssize_t
for row indices / row ids ("rid")
that are stored as type oid in BATs.

(For convenience, these changes are wrapped in CVS tags
 "rid-ssize_t" & "rid-oid".)


U store.mx
Index: store.mx
===================================================================
RCS file: /cvsroot/monetdb/sql/src/storage/store.mx,v
retrieving revision 1.33.2.2
retrieving revision 1.33.2.3
diff -u -d -r1.33.2.2 -r1.33.2.3
--- store.mx    7 Aug 2009 14:26:18 -0000       1.33.2.2
+++ store.mx    12 Aug 2009 11:25:36 -0000      1.33.2.3
@@ -243,7 +243,7 @@
 }
 
 static void
-load_keycolumn(sql_trans *tr, sql_key *k, ssize_t rid)
+load_keycolumn(sql_trans *tr, sql_key *k, oid rid)
 {
        void *v;
        sql_kc *kc = ZNEW(sql_kc);
@@ -259,7 +259,7 @@
 }
 
 static sql_key *
-load_key(sql_trans *tr, sql_table *t, ssize_t rid)
+load_key(sql_trans *tr, sql_table *t, oid rid)
 {
        void *v;
        sql_key *nk;
@@ -271,7 +271,7 @@
        node *n;
        rids *rs;
        sqlid kid;
-       ssize_t r = -1;
+       oid r = oid_nil;
 
        v = table_funcs.column_find_value(tr, find_sql_column(keys, "type"), 
rid);
        ktype = (key_type) *(int *)v;           _DELETE(v);
@@ -306,7 +306,7 @@
        kc_nr = find_sql_column(keycolumns, "nr");
        rs = table_funcs.rids_select(tr, kc_id, &nk->base.id, &nk->base.id, 
NULL);
        rs = table_funcs.rids_orderby(tr, rs, kc_nr); 
-       for(r = table_funcs.rids_next(rs); r>=0; r = table_funcs.rids_next(rs)) 
+       for(r = table_funcs.rids_next(rs); r != oid_nil; r = 
table_funcs.rids_next(rs)) 
                load_keycolumn(tr, nk, r);
        table_funcs.rids_destroy(rs);
 
@@ -337,7 +337,7 @@
 
                rs = table_funcs.rids_select(tr, key_rkey, &nk->base.id, 
&nk->base.id, NULL);
 
-               for(rid = table_funcs.rids_next(rs); rid>=0; rid = 
table_funcs.rids_next(rs)) {
+               for(rid = table_funcs.rids_next(rs); rid != oid_nil; rid = 
table_funcs.rids_next(rs)) {
                        sqlid fkey;
 
                        v = table_funcs.column_find_value(tr, 
find_sql_column(keys, "id"), rid);
@@ -358,7 +358,7 @@
 }
 
 static void
-load_idxcolumn(sql_trans *tr, sql_idx * i, ssize_t rid)
+load_idxcolumn(sql_trans *tr, sql_idx * i, oid rid)
 {
        void *v;
        sql_kc *kc = ZNEW(sql_kc);
@@ -376,7 +376,7 @@
 }
 
 static sql_idx *
-load_idx(sql_trans *tr, sql_table *t, ssize_t rid)
+load_idx(sql_trans *tr, sql_table *t, oid rid)
 {
        void *v;
        sql_idx *ni = ZNEW(sql_idx);
@@ -409,14 +409,14 @@
        kc_nr = find_sql_column(keycolumns, "nr");
        rs = table_funcs.rids_select(tr, kc_id, &ni->base.id, &ni->base.id, 
NULL);
        rs = table_funcs.rids_orderby(tr, rs, kc_nr); 
-       for(rid = table_funcs.rids_next(rs); rid>=0; rid = 
table_funcs.rids_next(rs)) 
+       for(rid = table_funcs.rids_next(rs); rid != oid_nil; rid = 
table_funcs.rids_next(rs)) 
                load_idxcolumn(tr, ni, rid);
        table_funcs.rids_destroy(rs);
        return ni;
 }
 
 static void
-load_triggercolumn(sql_trans *tr, sql_trigger * i, ssize_t rid)
+load_triggercolumn(sql_trans *tr, sql_trigger * i, oid rid)
 {
        void *v;
        sql_kc *kc = ZNEW(sql_kc);
@@ -432,7 +432,7 @@
 }
 
 static sql_trigger *
-load_trigger(sql_trans *tr, sql_table *t, ssize_t rid)
+load_trigger(sql_trans *tr, sql_table *t, oid rid)
 {
        void *v;
        sql_trigger *nt = ZNEW(sql_trigger);
@@ -479,14 +479,14 @@
        kc_nr = find_sql_column(keycolumns, "nr");
        rs = table_funcs.rids_select(tr, kc_id, &nt->base.id, &nt->base.id, 
NULL);
        rs = table_funcs.rids_orderby(tr, rs, kc_nr); 
-       for(rid = table_funcs.rids_next(rs); rid>=0; rid = 
table_funcs.rids_next(rs)) 
+       for(rid = table_funcs.rids_next(rs); rid != oid_nil; rid = 
table_funcs.rids_next(rs)) 
                load_triggercolumn(tr, nt, rid);
        table_funcs.rids_destroy(rs);
        return nt;
 }
 
 static sql_column *
-load_column(sql_trans *tr, sql_table *t, ssize_t rid)
+load_column(sql_trans *tr, sql_table *t, oid rid)
 {
        void *v;
        char *def, *tpe;
@@ -529,7 +529,7 @@
 }
 
 static sql_table *
-load_table(sql_trans *tr, sql_schema *s, ssize_t rid)
+load_table(sql_trans *tr, sql_schema *s, oid rid)
 {
        void *v;
        sql_table *t = ZNEW(sql_table);
@@ -588,7 +588,7 @@
        rs = table_funcs.rids_select(tr, column_table_id, &t->base.id, 
&t->base.id, NULL);
        rs = table_funcs.rids_orderby(tr, rs, column_number); 
        
-       for(rid = table_funcs.rids_next(rs); rid>=0; rid = 
table_funcs.rids_next(rs)) 
+       for(rid = table_funcs.rids_next(rs); rid != oid_nil; rid = 
table_funcs.rids_next(rs)) 
                cs_add(&t->columns, load_column(tr, t, rid), TR_OLD);
        table_funcs.rids_destroy(rs);
 
@@ -598,7 +598,7 @@
        /* load idx's first as the may be needed by the keys */
        idx_table_id = find_sql_column(idxs, "table_id");
        rs = table_funcs.rids_select(tr, idx_table_id, &t->base.id, 
&t->base.id, NULL);
-       for(rid = table_funcs.rids_next(rs); rid>=0; rid = 
table_funcs.rids_next(rs)) {
+       for(rid = table_funcs.rids_next(rs); rid != oid_nil; rid = 
table_funcs.rids_next(rs)) {
                sql_idx *i = load_idx(tr, t, rid);
 
                cs_add(&t->idxs, i, TR_OLD);
@@ -608,7 +608,7 @@
 
        key_table_id = find_sql_column(keys, "table_id");
        rs = table_funcs.rids_select(tr, key_table_id, &t->base.id, 
&t->base.id, NULL);
-       for(rid = table_funcs.rids_next(rs); rid>=0; rid = 
table_funcs.rids_next(rs)) {
+       for(rid = table_funcs.rids_next(rs); rid != oid_nil; rid = 
table_funcs.rids_next(rs)) {
                sql_key *k = load_key(tr, t, rid);
 
                cs_add(&t->keys, k, TR_OLD);
@@ -618,7 +618,7 @@
 
        trigger_table_id = find_sql_column(triggers, "table_id");
        rs = table_funcs.rids_select(tr, trigger_table_id, &t->base.id, 
&t->base.id,NULL);
-       for(rid = table_funcs.rids_next(rs); rid>=0; rid = 
table_funcs.rids_next(rs)) {
+       for(rid = table_funcs.rids_next(rs); rid != oid_nil; rid = 
table_funcs.rids_next(rs)) {
                sql_trigger *k = load_trigger(tr, t, rid);
 
                cs_add(&t->triggers, k, TR_OLD);
@@ -629,7 +629,7 @@
 }
 
 static sql_type *
-load_type(sql_trans *tr, sql_schema *s, ssize_t rid)
+load_type(sql_trans *tr, sql_schema *s, oid rid)
 {
        void *v;
        sql_type *t = ZNEW(sql_type);
@@ -672,7 +672,7 @@
 }
 
 static sql_arg *
-load_arg(sql_trans *tr, sql_func * f, ssize_t rid)
+load_arg(sql_trans *tr, sql_func * f, oid rid)
 {
        void *v;
        sql_arg *a = ZNEW(sql_arg);
@@ -699,7 +699,7 @@
 }
 
 static sql_func *
-load_func(sql_trans *tr, sql_schema *s, ssize_t rid)
+load_func(sql_trans *tr, sql_schema *s, oid rid)
 {
        void *v;
        sql_func *t = ZNEW(sql_func);
@@ -737,7 +737,7 @@
                fprintf(stderr, "\tload func %s\n", t->base.name);
 
        t->ops = list_create((fdestroy)&arg_destroy);
-       for(rid = table_funcs.rids_next(rs); rid>=0; rid = 
table_funcs.rids_next(rs)) {
+       for(rid = table_funcs.rids_next(rs); rid != oid_nil; rid = 
table_funcs.rids_next(rs)) {
                sql_arg *a = load_arg(tr, t, rid);
                if (first) {
                        first = 0;
@@ -774,7 +774,7 @@
 }
 
 static sql_sequence *
-load_seq(sql_trans *tr, sql_schema * s, ssize_t rid)
+load_seq(sql_trans *tr, sql_schema * s, oid rid)
 {
        void *v;
        sql_sequence *seq = ZNEW(sql_sequence);
@@ -803,7 +803,7 @@
 }
 
 static sql_schema *
-load_schema(sql_trans *tr, sqlid id, ssize_t rid)
+load_schema(sql_trans *tr, sqlid id, oid rid)
 {
        void *v;
        sql_schema *s = NULL, *syss = find_sql_schema(tr, "sys");
@@ -850,7 +850,7 @@
        type_schema = find_sql_column(types, "schema_id");
        type_id = find_sql_column(types, "id");
        rs = table_funcs.rids_select(tr, type_schema, &s->base.id, &s->base.id, 
type_id, &id, NULL, NULL);
-       for(rid = table_funcs.rids_next(rs); rid>=0; rid = 
table_funcs.rids_next(rs)) 
+       for(rid = table_funcs.rids_next(rs); rid != oid_nil; rid = 
table_funcs.rids_next(rs)) 
                cs_add(&s->types, load_type(tr, s, rid), TR_OLD);
        table_funcs.rids_destroy(rs);
 
@@ -858,7 +858,7 @@
        table_schema = find_sql_column(tables, "schema_id");
        table_id = find_sql_column(tables, "id");
        rs = table_funcs.rids_select(tr, table_schema, &s->base.id, 
&s->base.id, table_id, &id, NULL, NULL);
-       for(rid = table_funcs.rids_next(rs); rid>=0; rid = 
table_funcs.rids_next(rs)) 
+       for(rid = table_funcs.rids_next(rs); rid != oid_nil; rid = 
table_funcs.rids_next(rs)) 
                cs_add(&s->tables, load_table(tr, s, rid), TR_OLD);
        table_funcs.rids_destroy(rs);
 
@@ -866,7 +866,7 @@
        func_schema = find_sql_column(funcs, "schema_id");
        func_id = find_sql_column(funcs, "id");
        rs = table_funcs.rids_select(tr, func_schema, &s->base.id, &s->base.id, 
func_id, &id, NULL, NULL);
-       for(rid = table_funcs.rids_next(rs); rid>=0; rid = 
table_funcs.rids_next(rs)) 
+       for(rid = table_funcs.rids_next(rs); rid != oid_nil; rid = 
table_funcs.rids_next(rs)) 
                cs_add(&s->funcs, load_func(tr, s, rid), TR_OLD);
        table_funcs.rids_destroy(rs);
 
@@ -874,7 +874,7 @@
        seq_schema = find_sql_column(seqs, "schema_id");
        seq_id = find_sql_column(seqs, "id");
        rs = table_funcs.rids_select(tr, seq_schema, &s->base.id, &s->base.id, 
seq_id, &id, NULL, NULL);
-       for(rid = table_funcs.rids_next(rs); rid>=0; rid = 
table_funcs.rids_next(rs)) 
+       for(rid = table_funcs.rids_next(rs); rid != oid_nil; rid = 
table_funcs.rids_next(rs)) 
                cs_add(&s->seqs, load_seq(tr, s, rid), TR_OLD);
        table_funcs.rids_destroy(rs);
        return s;
@@ -905,12 +905,12 @@
        sql_table *sysschema = find_sql_table(syss, "schemas");
        sql_column *sysschema_ids = find_sql_column(sysschema, "id");
        rids *schemas = table_funcs.rids_select(tr, sysschema_ids, NULL, NULL);
-       ssize_t rid;
+       oid rid;
        
        if (bs_debug)
                fprintf(stderr, "load trans\n");
 
-       for(rid = table_funcs.rids_next(schemas); rid>=0; rid = 
table_funcs.rids_next(schemas)) {
+       for(rid = table_funcs.rids_next(schemas); rid != oid_nil; rid = 
table_funcs.rids_next(schemas)) {
                sql_schema *ns = load_schema(tr, id, rid);
                if (ns && ns->base.id > id)
                        cs_add(&tr->schemas, ns, TR_OLD);
@@ -2862,10 +2862,10 @@
 {
        sql_schema *syss = find_sql_schema(tr, isGlobalTable(k->t)?"sys":"tmp");
        sql_table *syskc = find_sql_table(syss, "keycolumns");
-       ssize_t rid = table_funcs.column_find_row(tr, find_sql_column(syskc, 
"id"), &k->base.id, NULL);
+       oid rid = table_funcs.column_find_row(tr, find_sql_column(syskc, "id"), 
&k->base.id, NULL);
 
        (void) kc;              /* Stefan: unused!? */
-       assert(rid != -1);
+       assert(rid != oid_nil);
        table_funcs.table_delete(tr, syskc, rid);
 
        if (isGlobalTable(k->t)) 
@@ -2878,9 +2878,9 @@
        node *n;
        sql_schema *syss = find_sql_schema(tr, isGlobalTable(k->t)?"sys":"tmp");
        sql_table *syskey = find_sql_table(syss, "keys");
-       ssize_t rid = table_funcs.column_find_row(tr, find_sql_column(syskey, 
"id"), &k->base.id, NULL);
+       oid rid = table_funcs.column_find_row(tr, find_sql_column(syskey, 
"id"), &k->base.id, NULL);
 
-       assert(rid != -1);
+       assert(rid != oid_nil);
        table_funcs.table_delete(tr, syskey, rid);
 
        for (n = k->columns->h; n; n = n->next) {
@@ -2918,10 +2918,10 @@
        sql_schema *syss = find_sql_schema(tr, isGlobalTable(i->t)?"sys":"tmp");
        sql_table *syskc = find_sql_table(syss, "keycolumns");
        sql_column *kc_id = find_sql_column(syskc, "id");
-       ssize_t rid = table_funcs.column_find_row(tr, kc_id, &i->base.id, NULL);
+       oid rid = table_funcs.column_find_row(tr, kc_id, &i->base.id, NULL);
 
        (void) kc;              /* Stefan: unused!? */
-       assert(rid != -1);
+       assert(rid != oid_nil);
        table_funcs.table_delete(tr, syskc, rid);
 
        if (isGlobalTable(i->t)) 
@@ -2934,9 +2934,9 @@
        node *n;
        sql_schema *syss = find_sql_schema(tr, isGlobalTable(i->t)?"sys":"tmp");
        sql_table *sysidx = find_sql_table(syss, "idxs");
-       ssize_t rid = table_funcs.column_find_row(tr, find_sql_column(sysidx, 
"id"), &i->base.id, NULL);
+       oid rid = table_funcs.column_find_row(tr, find_sql_column(sysidx, 
"id"), &i->base.id, NULL);
 
-       assert(rid != -1);
+       assert(rid != oid_nil);
        table_funcs.table_delete(tr, sysidx, rid);
 
        for (n = i->columns->h; n; n = n->next) {
@@ -2962,10 +2962,10 @@
 {
        sql_schema *syss = find_sql_schema(tr, isGlobalTable(i->t)?"sys":"tmp");
        sql_table *syskc = find_sql_table(syss, "keycolumns");
-       ssize_t rid = table_funcs.column_find_row(tr, find_sql_column(syskc, 
"id"), &i->base.id, NULL);
+       oid rid = table_funcs.column_find_row(tr, find_sql_column(syskc, "id"), 
&i->base.id, NULL);
 
        (void) kc;              /* Stefan: unused!? */
-       assert(rid != -1);
+       assert(rid != oid_nil);
        table_funcs.table_delete(tr, syskc, rid);
        if (isGlobalTable(i->t)) 
                tr->schema_updates ++;
@@ -2977,9 +2977,9 @@
        node *n;
        sql_schema *syss = find_sql_schema(tr, isGlobalTable(i->t)?"sys":"tmp");
        sql_table *systrigger = find_sql_table(syss, "triggers");
-       ssize_t rid = table_funcs.column_find_row(tr, 
find_sql_column(systrigger, "id"), &i->base.id, NULL);
+       oid rid = table_funcs.column_find_row(tr, find_sql_column(systrigger, 
"id"), &i->base.id, NULL);
 
-       assert(rid != -1);
+       assert(rid != oid_nil);
        table_funcs.table_delete(tr, systrigger, rid);
 
        for (n = i->columns->h; n; n = n->next) {
@@ -2999,9 +2999,9 @@
 {
        sql_schema *syss = find_sql_schema(tr, "sys");
        sql_table *sysseqs = find_sql_table(syss, "sequences");
-       ssize_t rid = table_funcs.column_find_row(tr, find_sql_column(sysseqs, 
"id"), &seq->base.id, NULL);
+       oid rid = table_funcs.column_find_row(tr, find_sql_column(sysseqs, 
"id"), &seq->base.id, NULL);
 
-       assert(rid != -1);
+       assert(rid != oid_nil);
        table_funcs.table_delete(tr, sysseqs, rid);
 
        if (drop_action)
@@ -3016,10 +3016,10 @@
        const char *next_value_for = "next value for \"sys\".\"seq_";
        sql_schema *syss = find_sql_schema(tr, 
isGlobalTable(col->t)?"sys":"tmp"); 
        sql_table *syscolumn = find_sql_table(syss, "_columns");
-       ssize_t rid = table_funcs.column_find_row(tr, 
find_sql_column(syscolumn, "id"),
+       oid rid = table_funcs.column_find_row(tr, find_sql_column(syscolumn, 
"id"),
                                  &col->base.id, NULL);
 
-       assert(rid != -1);
+       assert(rid != oid_nil);
        table_funcs.table_delete(tr, syscolumn, rid);
        sql_trans_drop_dependencies(tr, col->base.id);
 
@@ -3085,9 +3085,9 @@
        sql_schema *syss = find_sql_schema(tr, isGlobalTable(t)?"sys":"tmp");
        sql_table *systable = find_sql_table(syss, "_tables");
        sql_column *syscol = find_sql_column(systable, "id");
-       ssize_t rid = table_funcs.column_find_row(tr, syscol, &t->base.id, 
NULL);
+       oid rid = table_funcs.column_find_row(tr, syscol, &t->base.id, NULL);
 
-       assert(rid != -1);
+       assert(rid != oid_nil);
        table_funcs.table_delete(tr, systable, rid);
        sys_drop_keys(tr, t, drop_action);
        sys_drop_idxs(tr, t, drop_action);
@@ -3110,9 +3110,9 @@
        sql_schema *syss = find_sql_schema(tr, "sys");
        sql_table *sys_tab_type = find_sql_table(syss, "types");
        sql_column *sys_type_col = find_sql_column(sys_tab_type, "id");
-       ssize_t rid = table_funcs.column_find_row(tr, sys_type_col, 
&type->base.id, NULL);
+       oid rid = table_funcs.column_find_row(tr, sys_type_col, &type->base.id, 
NULL);
 
-       assert(rid != -1);
+       assert(rid != oid_nil);
        table_funcs.table_delete(tr, sys_tab_type, rid);
 
        sql_trans_drop_dependencies(tr, type->base.id);
@@ -3130,16 +3130,16 @@
        sql_schema *syss = find_sql_schema(tr, "sys");
        sql_table *sys_tab_func = find_sql_table(syss, "functions");
        sql_column *sys_func_col = find_sql_column(sys_tab_func, "id");
-       ssize_t rid_func = table_funcs.column_find_row(tr, sys_func_col, 
&func->base.id, NULL);
+       oid rid_func = table_funcs.column_find_row(tr, sys_func_col, 
&func->base.id, NULL);
        if (func->aggr) {
                sql_table *sys_tab_args = find_sql_table(syss, "args");
                sql_column *sys_args_col = find_sql_column(sys_tab_args, 
"func_id");
-               ssize_t rid_args = table_funcs.column_find_row(tr, 
sys_args_col, &func->base.id, NULL);
-               assert(rid_args != -1);
+               oid rid_args = table_funcs.column_find_row(tr, sys_args_col, 
&func->base.id, NULL);
+               assert(rid_args != oid_nil);
                table_funcs.table_delete(tr, sys_tab_args, rid_args);
        }
 
-       assert(rid_func != -1);
+       assert(rid_func != oid_nil);
        table_funcs.table_delete(tr, sys_tab_func, rid_func);
 
        sql_trans_drop_dependencies(tr, func->base.id);
@@ -3371,7 +3371,7 @@
        node *n = find_sql_schema_node(tr, NULL, id);
        sql_schema *s = n->data;
        sql_table *sysschema = find_sql_table(find_sql_schema(tr, "sys"), 
"schemas");
-       ssize_t rid = table_funcs.column_find_row(tr, 
find_sql_column(sysschema, "id"), &s->base.id, NULL);
+       oid rid = table_funcs.column_find_row(tr, find_sql_column(sysschema, 
"id"), &s->base.id, NULL);
 
        if (drop_action == DROP_CASCADE_START || drop_action == DROP_CASCADE) {
                int *local_id = NEW(int);
@@ -3382,7 +3382,7 @@
                list_append(tr->dropped, local_id);
        } 
 
-       assert(rid != -1);
+       assert(rid != oid_nil);
        table_funcs.table_delete(tr, sysschema, rid);
        sys_drop_funcs(tr, s, drop_action);
        sys_drop_tables(tr, s, drop_action);
@@ -3570,10 +3570,10 @@
        if (col->null != isnull) {
                sql_schema *syss = find_sql_schema(tr, 
isGlobalTable(col->t)?"sys":"tmp"); 
                sql_table *syscolumn = find_sql_table(syss, "_columns");
-               ssize_t rid = table_funcs.column_find_row(tr, 
find_sql_column(syscolumn, "id"),
+               oid rid = table_funcs.column_find_row(tr, 
find_sql_column(syscolumn, "id"),
                                          &col->base.id, NULL);
 
-               assert(rid != -1);
+               assert(rid != oid_nil);
                table_funcs.column_update_value(tr, find_sql_column(syscolumn, 
"null"), rid, &isnull);
                col->null = isnull;
                col->base.wtime = col->t->base.wtime = col->t->s->base.wtime = 
tr->wtime = tr->stime;
@@ -3596,9 +3596,9 @@
                sql_table *syscolumn = find_sql_table(syss, "_columns");
                sql_column *col_ids = find_sql_column(syscolumn, "id");
                sql_column *col_dfs = find_sql_column(syscolumn, "default");
-               ssize_t rid = table_funcs.column_find_row(tr, col_ids, 
&col->base.id, NULL);
+               oid rid = table_funcs.column_find_row(tr, col_ids, 
&col->base.id, NULL);
 
-               assert(rid != -1);
+               assert(rid != oid_nil);
                table_funcs.column_update_value(tr, col_dfs, rid, p);
                if (col->def)
                        _DELETE(col->def);
@@ -3934,7 +3934,7 @@
                sql_table *sysidx = find_sql_table(syss, "idxs");
                sql_column *sysidxid = find_sql_column(sysidx, "id");
                sql_column *sysidxtype = find_sql_column(sysidx, "type");
-               ssize_t rid = table_funcs.column_find_row(tr, sysidxid, 
&i->base.id, NULL);
+               oid rid = table_funcs.column_find_row(tr, sysidxid, 
&i->base.id, NULL);
        
                i->type = oph_idx;
                table_funcs.column_update_value(tr, sysidxtype, rid, &i->type);
@@ -4106,11 +4106,11 @@
 {
        sql_schema *syss = find_sql_schema(tr, "sys"); 
        sql_table *seqs = find_sql_table(syss, "sequences");
-       ssize_t rid = table_funcs.column_find_row(tr, find_sql_column(seqs, 
"id"), &seq->base.id, NULL);
+       oid rid = table_funcs.column_find_row(tr, find_sql_column(seqs, "id"), 
&seq->base.id, NULL);
        sql_column *c;
        int changed = 0;
 
-       assert(rid != -1);
+       assert(rid != oid_nil);
        if (min >= 0 && seq->minvalue != min) {
                seq->minvalue = min; 
                c = find_sql_column(seqs, "minvalue");
@@ -4154,11 +4154,11 @@
        if (seq->start != start) {
                sql_schema *syss = find_sql_schema(tr, "sys"); 
                sql_table *seqs = find_sql_table(syss, "sequences");
-               ssize_t rid = table_funcs.column_find_row(tr, 
find_sql_column(seqs, "id"),
+               oid rid = table_funcs.column_find_row(tr, find_sql_column(seqs, 
"id"),
                                  &seq->base.id, NULL);
                sql_column *c = find_sql_column(seqs, "start");
 
-               assert(rid != -1);
+               assert(rid != oid_nil);
                seq->start = start; 
                table_funcs.column_update_value(tr, c, rid, &seq->start);
 

U store_dependency.mx
Index: store_dependency.mx
===================================================================
RCS file: /cvsroot/monetdb/sql/src/storage/store_dependency.mx,v
retrieving revision 1.5
retrieving revision 1.5.4.1
diff -u -d -r1.5 -r1.5.4.1
--- store_dependency.mx 18 May 2009 07:18:18 -0000      1.5
+++ store_dependency.mx 12 Aug 2009 11:25:36 -0000      1.5.4.1
@@ -55,7 +55,7 @@
        sql_column *c_dep_id = find_sql_column(t, "depend_id");
        sql_column *c_dep_type = find_sql_column(t, "depend_type");
 
-       if (table_funcs.column_find_row(tr, c_id, &id, c_dep_id, &depend_id, 
c_dep_type, &depend_type, NULL) == -1)
+       if (table_funcs.column_find_row(tr, c_id, &id, c_dep_id, &depend_id, 
c_dep_type, &depend_type, NULL) == oid_nil)
                table_funcs.table_insert(tr, t, &id, &depend_id, &depend_type);
 }
 
@@ -63,14 +63,14 @@
 void
 sql_trans_drop_dependencies(sql_trans* tr, sqlid depend_id)
 {
-       ssize_t rid;
+       oid rid;
        sql_schema * s = find_sql_schema(tr, "sys");
        sql_table* deps = find_sql_table(s, "dependencies");
        sql_column * dep_dep_id = find_sql_column(deps, "depend_id");
        rids *rs;
        
        rs = table_funcs.rids_select(tr, dep_dep_id, &depend_id, &depend_id, 
NULL);
-       for(rid = table_funcs.rids_next(rs); rid>=0; rid = 
table_funcs.rids_next(rs)) 
+       for(rid = table_funcs.rids_next(rs); rid != oid_nil; rid = 
table_funcs.rids_next(rs)) 
                table_funcs.table_delete(tr, deps, rid);
        table_funcs.rids_destroy(rs);
 }
@@ -84,7 +84,7 @@
        sql_table *deps = find_sql_table(s, "dependencies");
        sql_column *dep_id, *dep_dep_id, *dep_dep_type, *tri_id, *table_id;
        list *dep_list = list_create((fdestroy) GDKfree); 
-       ssize_t r;
+       oid rid;
        rids *rs;
 
        dep_id = find_sql_column(deps, "id");
@@ -92,12 +92,12 @@
        dep_dep_type = find_sql_column(deps, "depend_type");
 
        rs = table_funcs.rids_select(tr, dep_id, &id, &id, NULL);
-       for(r = table_funcs.rids_next(rs); r>=0; r = table_funcs.rids_next(rs)){
-               v = table_funcs.column_find_value(tr, dep_dep_id, r);
+       for(rid = table_funcs.rids_next(rs); rid != oid_nil; rid = 
table_funcs.rids_next(rs)){
+               v = table_funcs.column_find_value(tr, dep_dep_id, rid);
                id = *(sqlid*)v;                
                if (!(ignore_ids  && list_find_func_id(ignore_ids, id))) {
                        list_append(dep_list, v);
-                       v = table_funcs.column_find_value(tr, dep_dep_type, r);
+                       v = table_funcs.column_find_value(tr, dep_dep_type, 
rid);
                        list_append(dep_list, v);
                } else {
                        _DELETE(v);
@@ -112,8 +112,8 @@
                depend_type = TRIGGER_DEPENDENCY;
 
                rs = table_funcs.rids_select(tr, table_id, &id, &id, NULL);
-               for(r = table_funcs.rids_next(rs); r>=0; r = 
table_funcs.rids_next(rs)) {
-                       v = table_funcs.column_find_value(tr, tri_id, r);
+               for(rid = table_funcs.rids_next(rs); rid != oid_nil; rid = 
table_funcs.rids_next(rs)) {
+                       v = table_funcs.column_find_value(tr, tri_id, rid);
                        list_append(dep_list, v);
                        v = NEW(sht);
                        *(sht*)v = depend_type;
@@ -128,7 +128,7 @@
 int
 sql_trans_get_dependency_type(sql_trans *tr, int id, short depend_type)
 {
-       ssize_t rid;
+       oid rid;
        sql_schema *s;
        sql_table *dep;
        sql_column *dep_id, *dep_dep_id, *dep_dep_type;
@@ -142,7 +142,7 @@
        dep_dep_type = find_sql_column(dep, "depend_type");
 
        rid = table_funcs.column_find_row(tr, dep_id, &id, dep_dep_type, 
&depend_type, NULL);
-       if (rid != -1)  
+       if (rid != oid_nil)     
                return *(int *) table_funcs.column_find_value(tr, dep_dep_id, 
rid);
        else return -1;
 }
@@ -151,7 +151,7 @@
 int
 sql_trans_check_dependency(sql_trans *tr, int id, int depend_id, short 
depend_type)
 {
-       ssize_t rid;
+       oid rid;
        sql_schema *s;
        sql_table *dep;
        sql_column *dep_id, *dep_dep_id, *dep_dep_type;
@@ -165,7 +165,7 @@
        dep_dep_type = find_sql_column(dep, "depend_type");
 
        rid = table_funcs.column_find_row(tr, dep_id, &id, dep_dep_id, 
&depend_id, dep_dep_type, &depend_type, NULL);
-       if (rid != -1)  
+       if (rid != oid_nil)     
                return 1;
        else return 0;
 }
@@ -184,9 +184,9 @@
        short type = USER_DEPENDENCY;
        list *l = list_create((fdestroy) GDKfree);
        rids *users = backend_schema_user_dependencies(tr, schema_id);
-       ssize_t rid;
+       oid rid;
        
-       for(rid = table_funcs.rids_next(users); rid>=0; rid = 
table_funcs.rids_next(users)) {
+       for(rid = table_funcs.rids_next(users); rid != oid_nil; rid = 
table_funcs.rids_next(users)) {
                v = table_funcs.column_find_value(tr, auth_id, rid);
                list_append(l,v);
                v = NEW(sht);
@@ -209,9 +209,9 @@
        short type = SCHEMA_DEPENDENCY;
        list *l = list_create((fdestroy) GDKfree);
        rids *rs = table_funcs.rids_select(tr, schema_owner, &owner_id, 
&owner_id, NULL);
-       ssize_t rid;
+       oid rid;
        
-       for(rid = table_funcs.rids_next(rs); rid>=0; rid = 
table_funcs.rids_next(rs)) {
+       for(rid = table_funcs.rids_next(rs); rid != oid_nil; rid = 
table_funcs.rids_next(rs)) {
                v = table_funcs.column_find_value(tr, schema_id, rid);
                list_append(l, v);
                v = NEW(sht);

U store_connections.mx
Index: store_connections.mx
===================================================================
RCS file: /cvsroot/monetdb/sql/src/storage/store_connections.mx,v
retrieving revision 1.5
retrieving revision 1.5.6.1
diff -u -d -r1.5 -r1.5.6.1
--- store_connections.mx        7 Jan 2009 14:19:29 -0000       1.5
+++ store_connections.mx        12 Aug 2009 11:25:36 -0000      1.5.6.1
@@ -43,7 +43,7 @@
        sql_column *c_db = find_sql_column(t, "db");
        sql_column *c_db_alias = find_sql_column(t, "db_alias");
 
-       if ((table_funcs.column_find_row(tr, c_server, server, c_db, db, NULL) 
== -1) && (table_funcs.column_find_row(tr, c_db_alias, db_alias, NULL) == -1)) {
+       if ((table_funcs.column_find_row(tr, c_server, server, c_db, db, NULL) 
== oid_nil) && (table_funcs.column_find_row(tr, c_db_alias, db_alias, NULL) == 
oid_nil)) {
                table_funcs.table_insert(tr, t, &id, server, &port_l, db, 
db_alias, user, passwd, lang);
                return id;
        }
@@ -55,7 +55,7 @@
 int
 sql_trans_disconnect_catalog(sql_trans* tr, char * db_alias)
 {
-       ssize_t rid = -1;
+       oid rid = oid_nil;
        int id = 0;
        sql_schema * s = find_sql_schema(tr, "sys");
        sql_table* t = find_sql_table(s, "connections");
@@ -64,7 +64,7 @@
        sql_column * col_id = find_sql_column(t, "id");
 
        rid = table_funcs.column_find_row(tr, col_db_alias, db_alias, NULL);
-       if (rid != -1) {
+       if (rid != oid_nil) {
                id = *(int *) table_funcs.column_find_value(tr, col_id, rid);
                table_funcs.table_delete(tr, t, rid);
        } else {
@@ -86,7 +86,7 @@
 list*
 sql_trans_get_connection(sql_trans* tr, int id, char *server, char *db, char 
*db_alias, char *user)
 {
-       ssize_t rid = -1;
+       oid rid = oid_nil;
        sql_schema *s = find_sql_schema(tr, "sys");     
        sql_table *con = find_sql_table(s, "connections");
        list *con_arg_list = list_create((fdestroy) NULL); 
@@ -112,7 +112,7 @@
        else    
                rid = table_funcs.column_find_row(tr, col_db_alias, db_alias, 
NULL);
 
-       if (rid != -1) {
+       if (rid != oid_nil) {
                list_append(con_arg_list, (int *) 
table_funcs.column_find_value(tr, col_id, rid));
                list_append(con_arg_list, (char *) 
table_funcs.column_find_value(tr, col_server, rid));
                list_append(con_arg_list, (int *) 
table_funcs.column_find_value(tr, col_port, rid));

Index: sql_storage.h
===================================================================
RCS file: /cvsroot/monetdb/sql/src/storage/sql_storage.h,v
retrieving revision 1.57.2.1
retrieving revision 1.57.2.2
diff -u -d -r1.57.2.1 -r1.57.2.2
--- sql_storage.h       4 Aug 2009 22:15:24 -0000       1.57.2.1
+++ sql_storage.h       12 Aug 2009 11:25:36 -0000      1.57.2.2
@@ -47,11 +47,11 @@
 extern store_type active_store_type;
 
 /* relational interface */
-typedef ssize_t (*column_find_row_fptr)(sql_trans *tr, sql_column *c, void 
*value, ...);
-typedef void *(*column_find_value_fptr)(sql_trans *tr, sql_column *c, ssize_t 
rid);
-typedef int (*column_update_value_fptr)(sql_trans *tr, sql_column *c, ssize_t 
rid, void *value);
+typedef oid (*column_find_row_fptr)(sql_trans *tr, sql_column *c, void *value, 
...);
+typedef void *(*column_find_value_fptr)(sql_trans *tr, sql_column *c, oid rid);
+typedef int (*column_update_value_fptr)(sql_trans *tr, sql_column *c, oid rid, 
void *value);
 typedef int (*table_insert_fptr)(sql_trans *tr, sql_table *t, ...);
-typedef int (*table_delete_fptr)(sql_trans *tr, sql_table *t, ssize_t rid);
+typedef int (*table_delete_fptr)(sql_trans *tr, sql_table *t, oid rid);
 
 typedef struct rids {
        BUN cur;
@@ -67,7 +67,7 @@
 typedef rids *(*rids_join_fptr)( sql_trans *tr, rids *l, sql_column *lc, rids 
*r, sql_column *rc);
 
 /* return table rids from result of table_select, return (-1) when done */
-typedef ssize_t (*rids_next_fptr)(rids *r);
+typedef oid (*rids_next_fptr)(rids *r);
 
 /* clean up the resources taken by the result of table_select */
 typedef void (*rids_destroy_fptr)(rids *r);
@@ -100,7 +100,7 @@
 */
 typedef void (*append_col_fptr) (sql_trans *tr, sql_column *c, void *d, int t);
 typedef void (*append_idx_fptr) (sql_trans *tr, sql_idx *i, void *d, int t);
-typedef void (*update_col_fptr) (sql_trans *tr, sql_column *c, void *d, int t, 
ssize_t rid);
+typedef void (*update_col_fptr) (sql_trans *tr, sql_column *c, void *d, int t, 
oid rid);
 typedef void (*update_idx_fptr) (sql_trans *tr, sql_idx *i, void *d, int t);
 typedef void (*delete_tab_fptr) (sql_trans *tr, sql_table *t, void *d, int 
tpe);
 


------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
Monetdb-sql-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-sql-checkins

Reply via email to