Changeset: 17efee61a6a7 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=17efee61a6a7
Modified Files:
        monetdb5/extras/dvf/opt_dvf.c
Branch: DVframework
Log Message:

getting rid of the oid mismatch in the projectdelta.


diffs (153 lines):

diff --git a/monetdb5/extras/dvf/opt_dvf.c b/monetdb5/extras/dvf/opt_dvf.c
--- a/monetdb5/extras/dvf/opt_dvf.c
+++ b/monetdb5/extras/dvf/opt_dvf.c
@@ -104,13 +104,15 @@ OPTdvfImplementation(Client cntxt, MalBl
        str schema_name = "mseed";
        str data_table_identifier = "data";
        str file_identifier_str = "file_id";
-       str files_table_name = "files";
-       str file_location_str = "file_location";
+//     str files_table_name = "files";
+//     str file_location_str = "file_location";
        str mountRef = putName("mount", 5);
        str miniseedRef = putName("miniseed", 8);
        str dvfRef = putName("dvf", 3);
        str planmodifierRef = putName("plan_modifier", 13);
        str fetchfileidsandlocationsRef = 
putName("fetch_file_ids_and_locations", 28);
+       
+       str fetchRef = putName("fetch", 5);
 
        //states of finding the pattern
        int state = 0; //0: start, 1:found v3, 2:found v5, 3:done with 
injection;
@@ -120,7 +122,7 @@ OPTdvfImplementation(Client cntxt, MalBl
        
        //
 
-       InstrPtr *old = NULL, q = NULL, r = NULL, t = NULL, b = NULL, m = NULL, 
e = NULL, b0 = NULL, b1 = NULL, b2 = NULL, ffiali = NULL, *ps_iter = NULL;
+       InstrPtr *old = NULL, q = NULL, r = NULL, t = NULL, b = NULL, m = NULL, 
e = NULL, f = NULL, ffiali = NULL, *ps_iter = NULL;
        int i, limit, which_column, actions = 0;
        int last_bind_return_var_id = -1;
        int last_data_tid_return_var_id = -1;
@@ -129,7 +131,7 @@ OPTdvfImplementation(Client cntxt, MalBl
        int last_update_bind_second_return_var_id = -1;
        int last_subdelta_return_var_id = -1;
        
-       int var_sql_mvc;
+//     int var_sql_mvc;
 
        stk = stk; //to escape 'unused' parameter error.
        pci = pci; //to escape 'unused' parameter error.
@@ -164,7 +166,7 @@ OPTdvfImplementation(Client cntxt, MalBl
                {
                        i1 = i;
                        state = 1;
-                       var_sql_mvc = getArg(p, 1);
+//                     var_sql_mvc = getArg(p, 1);
                }
                /* check for
                 * v4 := algebra.leftjoin(v2, v3);
@@ -397,12 +399,9 @@ OPTdvfImplementation(Client cntxt, MalBl
                                                *  t3 := bat.mirror(t1);
                                                *  t4 := algebra.leftjoin(t3, 
v6);
                                                * 
-                                               * X_17 := 
sql.bind(X_3,"mseed","files","file_location",0);
-                                               * (X_19,r1_24) := 
sql.bind(X_3,"mseed","files","file_location",2);
-                                               * X_21 := 
sql.bind(X_3,"mseed","files","file_location",1);
-                                               * X_22 := 
sql.projectdelta(t4,X_17,X_19,r1_24,X_21);
+                                               * (X_21,X_22) := 
dvf.fetch_file_ids_and_locations(schema_name,t4);
                                                * 
-                                               *  
dvf.plan_modifier(schema_name, t4, X_22, mode);
+                                               *  
dvf.plan_modifier(schema_name, X_21, X_22, mode);
                                                */
 
                                                /* create group.done 
instruction */
@@ -430,59 +429,23 @@ OPTdvfImplementation(Client cntxt, MalBl
                                                t = pushArgument(mb, t, 
getArg(r, 1));
                                                t = pushArgument(mb, t, 
getArg(old[i2], 0));
                                                
-                                               /* create sql.bind 0 
instruction */
-                                               b0 = newInstruction(mb, 
ASSIGNsymbol);
-                                               setModuleId(b0, sqlRef);
-                                               setFunctionId(b0, bindRef);
-                                               b0 = pushReturn(mb, b0, 
newTmpVariable(mb, TYPE_bat)); /* X_17 */
-                                               b0 = pushArgument(mb, b0, 
var_sql_mvc); /* X_3: sql_mvc */
-                                               b0 = pushStr(mb, b0, 
schema_name); /* schema_name */
-                                               b0 = pushStr(mb, b0, 
files_table_name); /* "files" */
-                                               b0 = pushStr(mb, b0, 
file_location_str); /* "file_location" */
-                                               b0 = pushInt(mb, b0, 0); /* 
contents: 0, inserts: 1, or updates: 2 */
-                                               
-                                               /* create sql.bind 2 
instruction */
-                                               b2 = newInstruction(mb, 
ASSIGNsymbol);
-                                               setModuleId(b2, sqlRef);
-                                               setFunctionId(b2, bindRef);
-                                               b2 = pushReturn(mb, b2, 
newTmpVariable(mb, TYPE_bat)); /* X_19 */
-                                               b2 = pushReturn(mb, b2, 
newTmpVariable(mb, TYPE_bat)); /* r1_24 */
-                                               b2 = pushArgument(mb, b2, 
var_sql_mvc); /* X_3: sql_mvc */
-                                               b2 = pushStr(mb, b2, 
schema_name); /* schema_name */
-                                               b2 = pushStr(mb, b2, 
files_table_name); /* "files" */
-                                               b2 = pushStr(mb, b2, 
file_location_str); /* "file_location" */
-                                               b2 = pushInt(mb, b2, 2); /* 
contents: 0, inserts: 1, or updates: 2 */
-                                               
-                                               /* create sql.bind 1 
instruction */
-                                               b1 = newInstruction(mb, 
ASSIGNsymbol);
-                                               setModuleId(b1, sqlRef);
-                                               setFunctionId(b1, bindRef);
-                                               b1 = pushReturn(mb, b1, 
newTmpVariable(mb, TYPE_bat)); /* X_21 */
-                                               b1 = pushArgument(mb, b1, 
var_sql_mvc); /* X_3: sql_mvc */
-                                               b1 = pushStr(mb, b1, 
schema_name); /* schema_name */
-                                               b1 = pushStr(mb, b1, 
files_table_name); /* "files" */
-                                               b1 = pushStr(mb, b1, 
file_location_str); /* "file_location" */
-                                               b1 = pushInt(mb, b1, 1); /* 
contents: 0, inserts: 1, or updates: 2 */
-                                               
-                                               /* create sql.projectdelta 
instruction */
-                                               pd = newInstruction(mb, 
ASSIGNsymbol);
-                                               setModuleId(pd, sqlRef);
-                                               setFunctionId(pd, 
projectdeltaRef);
-                                               pd = pushReturn(mb, pd, 
newTmpVariable(mb, TYPE_bat)); /* X_22 */
-                                               pd = pushArgument(mb, pd, 
getArg(t, 0)); /* t4 */
-                                               pd = pushArgument(mb, pd, 
getArg(b0, 0)); /* X_17 */
-                                               pd = pushArgument(mb, pd, 
getArg(b2, 0)); /* X_19 */
-                                               pd = pushArgument(mb, pd, 
getArg(b2, 1)); /* r1_24 */
-                                               pd = pushArgument(mb, pd, 
getArg(b1, 0)); /* X_21 */
+                                               /* create 
dvf.fetch_file_ids_and_locations instruction */
+                                               ffiali = newInstruction(mb, 
ASSIGNsymbol);
+                                               setModuleId(ffiali, dvfRef);
+                                               setFunctionId(ffiali, 
fetchfileidsandlocationsRef);
+                                               ffiali = pushReturn(mb, ffiali, 
newTmpVariable(mb, TYPE_bat)); /* X_21 */
+                                               ffiali = pushReturn(mb, ffiali, 
newTmpVariable(mb, TYPE_bat)); /* X_22 */
+                                               ffiali = pushStr(mb, ffiali, 
schema_name); /* schema_name */
+                                               ffiali = pushArgument(mb, 
ffiali, getArg(t, 0)); /* t4 */
 
                                                /* create dvf.plan_modifier 
instruction */
                                                q = newInstruction(mb, 
ASSIGNsymbol);
                                                setModuleId(q, dvfRef);
                                                setFunctionId(q, 
planmodifierRef);
                                                q = pushReturn(mb, q, 
newTmpVariable(mb, TYPE_void));
-                                               q = pushArgument(mb, q, 
getArg(p, 2));
-                                               q = pushArgument(mb, q, 
getArg(t, 0)); /* t4 */
-                                               q = pushArgument(mb, q, 
getArg(pd, 0)); /* X_22 */
+                                               q = pushArgument(mb, q, 
getArg(p, 2)); /* schema_name */
+                                               q = pushArgument(mb, q, 
getArg(ffiali, 0)); /* X_21 */
+                                               q = pushArgument(mb, q, 
getArg(ffiali, 1)); /* X_22 */
                                                if(mode == 2)
                                                        q = pushInt(mb, q, 0);
                                                else
@@ -491,16 +454,13 @@ OPTdvfImplementation(Client cntxt, MalBl
                                                /* insert the new instructions 
in pc i2+1 */
                                                insertInstruction(mb, q, i2+1);
                                                
-                                               insertInstruction(mb, pd, i2+1);
-                                               insertInstruction(mb, b1, i2+1);
-                                               insertInstruction(mb, b2, i2+1);
-                                               insertInstruction(mb, b0, i2+1);
+                                               insertInstruction(mb, ffiali, 
i2+1);
                                                
                                                insertInstruction(mb, t, i2+1);
 //                                             insertInstruction(mb, s, i2+1);
                                                insertInstruction(mb, r, i2+1);
 
-                                               actions += 7;
+                                               actions += 4;
                                                state = 3;
                                        }
                                        
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to