X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2Fftacmp%2Fquery_plan.cc;fp=src%2Fftacmp%2Fquery_plan.cc;h=a746e44f34ec386f942095d70f95d1625d5ae4d9;hb=393a42a5b1ba6e64bd3eabf7d0ce2f197e966355;hp=ec391dda00a382009e203c9fb5a152cdcd0d4552;hpb=5a4f9d3d8846452b1b99302d03368565863df62a;p=com%2Fgs-lite.git diff --git a/src/ftacmp/query_plan.cc b/src/ftacmp/query_plan.cc index ec391dd..a746e44 100644 --- a/src/ftacmp/query_plan.cc +++ b/src/ftacmp/query_plan.cc @@ -7856,9 +7856,9 @@ static string gen_unpack_cids(table_list *schema, col_id_set &new_cids, string o unpack_fcn = dt.get_hfta_unpack_fcn_noxf(); } if(dt.is_buffer_type()){ - sprintf(tmpstr,"\t unpack_var_%s_%d = %s(tup%d.data, tup%d.tuple_size, unpack_offset_%s_%d, &problem);\n",field.c_str(), tblref, unpack_fcn.c_str(), tblref, tblref, field.c_str(), tblref); + sprintf(tmpstr,"\tunpack_var_%s_%d = %s(tup%d.data, tup%d.tuple_size, unpack_offset_%s_%d, &problem); // unpack_cid\n",field.c_str(), tblref, unpack_fcn.c_str(), tblref, tblref, field.c_str(), tblref); }else{ - sprintf(tmpstr,"\t unpack_var_%s_%d = %s_nocheck(tup%d.data, unpack_offset_%s_%d);\n",field.c_str(), tblref, unpack_fcn.c_str(), tblref, field.c_str(), tblref); + sprintf(tmpstr,"\tunpack_var_%s_%d = %s_nocheck(tup%d.data, unpack_offset_%s_%d); // unpack_cid\n",field.c_str(), tblref, unpack_fcn.c_str(), tblref, field.c_str(), tblref); } ret += tmpstr; if(dt.is_buffer_type()){ @@ -8927,7 +8927,16 @@ string sgah_qpn::generate_functor(table_list *schema, ext_fcn_list *Ext_fcns, ve if(structured_types.size()==0){ ret += "\t"+generate_functor_name() + "_groupdef(){};\n"; }else{ - ret += "\t"+generate_functor_name() + "_groupdef(){}\n"; + ret += "\t"+generate_functor_name() + "_groupdef(){\n"; + for(g=0;gis_buffer_type()){ + sprintf(tmpstr,"\t\t%s(&gb_var%d);\n", + gdt->get_hfta_buffer_init().c_str(), g ); + ret += tmpstr; + } + } + ret += "\t};\n"; } @@ -9476,7 +9485,10 @@ ret += "// hfta_disorder = "+int_to_string(hfta_disorder)+"\n"; // For temporal status tuple we don't need to do anything else - ret += "\tif (temp_tuple_received) return NULL;\n\n"; + ret += "\tif (temp_tuple_received){\n"; + ret += "\t\tdisordered_arrival = false;\n"; + ret += "\t\treturn NULL;\n\n"; + ret += "\t}\n"; for(w=0;wis_buffer_type()){ + sprintf(tmpstr,"\t\t%s(&gb_var%d);\n", + gdt->get_hfta_buffer_init().c_str(), g ); + ret += tmpstr; + } + } + ret += "\t};\n"; + ret += "\t// shallow copy constructor\n"; ret += "\t"+generate_functor_name() + "_groupdef("+ this->generate_functor_name() + "_groupdef &gd){\n";