Update of /cvsroot/monetdb/pathfinder/runtime
In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv31308

Modified Files:
      Tag: xrpcdemo
        pathfinder.mx xrpc_client.mx 
Log Message:
- xrpc_* are now transent
- some (hacky) fix for the multiple execute at statement problem



U xrpc_client.mx
Index: xrpc_client.mx
===================================================================
RCS file: /cvsroot/monetdb/pathfinder/runtime/xrpc_client.mx,v
retrieving revision 1.45.4.2
retrieving revision 1.45.4.3
diff -u -d -r1.45.4.2 -r1.45.4.3
--- xrpc_client.mx      25 May 2008 22:55:11 -0000      1.45.4.2
+++ xrpc_client.mx      29 May 2008 23:11:44 -0000      1.45.4.3
@@ -346,10 +346,8 @@
                 var xrpc_wslock := lock_create();
                 lock_set(xrpc_wslock); # protect the ws of this query
 
-                var host := my_hostname();
-                var port := get_xrpc_port();
                 var ts := usec();
-                qid := host + ":" + str(port) + "|" + str(ts);
+                qid := xrpc_hostport + "|" + str(ts);
                 idx := count(xrpc_qids).oid(); # index of the new xrpc_* BUNs
 
                 xrpc_qids.append(qid);
@@ -363,6 +361,7 @@
                 sucsBAT.rename(str(int(idx)));
                 # add the dsts to the successors list
                 sucsBAT := sucsBAT.append(unq_dsts);
+                isoLevel := ""; # unset isolevel so we do not initialize lock 
a second time in this query
         });
         if(not(isnil(err_qinit))) {
             # Undo above actions, ignore possible errors
@@ -655,6 +654,7 @@
 "DESCRIPTION: make a separate RPC call for ever iteration",
 "xrpc_client");
 
+var xrpc_hostport := my_hostname() + ":" + str(get_xrpc_port());
 
 @h
 #ifndef XRPC_CLIENT_H

U pathfinder.mx
Index: pathfinder.mx
===================================================================
RCS file: /cvsroot/monetdb/pathfinder/runtime/pathfinder.mx,v
retrieving revision 1.416.2.1.2.2
retrieving revision 1.416.2.1.2.3
diff -u -d -r1.416.2.1.2.2 -r1.416.2.1.2.3
--- pathfinder.mx       25 May 2008 22:55:07 -0000      1.416.2.1.2.2
+++ pathfinder.mx       29 May 2008 23:11:44 -0000      1.416.2.1.2.3
@@ -635,11 +635,6 @@
     commitBAT.append("doc_collection");
     commitBAT.append("doc_timestamp");
     commitBAT.append("uri_lifetime");
-    commitBAT.append("xrpc_qids");
-    commitBAT.append("xrpc_wsids");
-    commitBAT.append("xrpc_timeouts");
-    commitBAT.append("xrpc_locks");
-    commitBAT.append("xrpc_statuss");
     var ok := false;
     lock_set(pf_wal);
     var err := CATCH(ok := subcommit(commitBAT));
@@ -718,11 +713,16 @@
 var uri_lifetime;     # caching rules
 
 # meta-data BATs for multi-request XRPC transactions
-var xrpc_qids;        # bat[void,str] query-id (host|timestamp)
-var xrpc_timeouts;    # bat[void,lng] query timeout in msec
-var xrpc_wsids;       # bat[void,lng] ID of the workingset associated with 
this query
-var xrpc_locks;       # bat[void,lock] lock for the workingset of this query 
-var xrpc_statuss;     # bat[void,str] 2PC status of this query: "exec", 
"prepare", "commit" or "abort"
+var xrpc_qids :=      # bat[void,str] query-id (host|timestamp)
+    new(void,str).seqbase([EMAIL 
PROTECTED]).persists(true).rename("xrpc_qids");
+var xrpc_timeouts :=  # bat[void,lng] query timeout in msec
+    new(void,lng).seqbase([EMAIL 
PROTECTED]).persists(true).rename("xrpc_timeouts");
+var xrpc_wsids :=     # bat[void,lng] ID of the workingset associated with 
this query
+    new(void,lng).seqbase([EMAIL 
PROTECTED]).persists(true).rename("xrpc_wsids");
+var xrpc_locks :=     # bat[void,lock] lock for the workingset of this query 
+    new(void,lock).seqbase([EMAIL 
PROTECTED]).persists(true).rename("xrpc_locks");
+var xrpc_statuss :=   # bat[void,str] 2PC status of this query: "exec", 
"prepare", "commit" or "abort"
+    new(void,str).seqbase([EMAIL 
PROTECTED]).persists(true).rename("xrpc_statuss");
 var xrpclock := pflock_get(6); # master XRPC lock, to protect above xrpc_* BATs
 
 # initialize persistent bats (use BBP as global mechanism to discover 
initialization)
@@ -734,11 +734,6 @@
     doc_location     := bat("doc_location");
     doc_timestamp    := bat("doc_timestamp");
     uri_lifetime     := bat("uri_lifetime");
-    xrpc_qids        := bat("xrpc_qids");
-    xrpc_timeouts    := bat("xrpc_timeouts");
-    xrpc_wsids       := bat("xrpc_wsids");
-    xrpc_locks       := bat("xrpc_locks");
-    xrpc_statuss     := bat("xrpc_statuss");
 
     # check that this database was created with a compatible pagesize as 
requested now
     var pagebits := 16; 
@@ -754,11 +749,6 @@
     doc_location    := new(oid,str).persists(true).rename("doc_location");
     doc_timestamp   := 
new(oid,timestamp).persists(true).rename("doc_timestamp");
     uri_lifetime    := new(str,lng).insert("tmp", 
1LL).persists(true).rename("uri_lifetime");
-    xrpc_qids       := new(void,str).seqbase([EMAIL 
PROTECTED]).persists(true).rename("xrpc_qids");
-    xrpc_timeouts   := new(void,lng).seqbase([EMAIL 
PROTECTED]).persists(true).rename("xrpc_timeouts");
-    xrpc_wsids      := new(void,lng).seqbase([EMAIL 
PROTECTED]).persists(true).rename("xrpc_wsids");
-    xrpc_locks      := new(void,lock).seqbase([EMAIL 
PROTECTED]).persists(true).rename("xrpc_locks");
-    xrpc_statuss    := new(void,str).seqbase([EMAIL 
PROTECTED]).persists(true).rename("xrpc_statuss");
     doc_collection.insert(DOCID_CURID_HACK, DOCID_MIN); # hack: store next oid 
as in invalid tuple
     doc_collection.insert(DOCID_PGBIT_HACK, oid(REMAP_PAGE_BITS)); # hack: 
store pagesize also
     pf_checkpoint(bat(void,str).append("uri_lifetime"));


-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Monetdb-pf-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-pf-checkins

Reply via email to