Code Review
/
com
/
gs-lite.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
Disable printing out-of-order messages, increase max_flushes to 25 in running groupby
[com/gs-lite.git]
/
include
/
hfta
/
groupby_slowflush_operator.h
diff --git
a/include/hfta/groupby_slowflush_operator.h
b/include/hfta/groupby_slowflush_operator.h
index
d2120ba
..
f9de2a0
100644
(file)
--- a/
include/hfta/groupby_slowflush_operator.h
+++ b/
include/hfta/groupby_slowflush_operator.h
@@
-55,7
+55,7
@@
public:
group grp;
if (!func.create_group(tup, (gs_sp_t)&grp)) {
if(func.disordered()){
group grp;
if (!func.create_group(tup, (gs_sp_t)&grp)) {
if(func.disordered()){
- fprintf(stderr,"Out of order record in %s\n",op_name);
+
//
fprintf(stderr,"Out of order record in %s\n",op_name);
return 0;
}
if (func.flush_needed()){
return 0;
}
if (func.flush_needed()){
@@
-72,7
+72,7
@@
public:
return 0;
}
if(func.disordered()){
return 0;
}
if(func.disordered()){
- fprintf(stderr,"Out of order record in %s\n",op_name);
+
//
fprintf(stderr,"Out of order record in %s\n",op_name);
return 0;
}
return 0;
}
@@
-85,21
+85,21
@@
public:
flush_old(result);
}
if(n_patterns <= 1){
flush_old(result);
}
if(n_patterns <= 1){
-
aggregate aggr
;
+
char aggr_buffer[sizeof(aggregate)]
;
// create an aggregate in preallocated buffer
// create an aggregate in preallocated buffer
- func.create_aggregate(tup,
(char*)&agg
r);
+ func.create_aggregate(tup,
aggr_buffe
r);
// neeed operator= doing a deep copy
// neeed operator= doing a deep copy
- group_table[curr_table].insert(grp,
aggr
);
+ group_table[curr_table].insert(grp,
(*(aggregate*)aggr_buffer)
);
}else{
int p;
for(p=0;p<n_patterns;++p){
// TODO this code is wrong need to check each pattern to see if its in the table
}else{
int p;
for(p=0;p<n_patterns;++p){
// TODO this code is wrong need to check each pattern to see if its in the table
- // need shalow copy constructor for groups
+ // need shal
l
ow copy constructor for groups
group new_grp(grp, func.get_pattern(p));
group new_grp(grp, func.get_pattern(p));
-
aggregate aggr
;
- func.create_aggregate(tup,
(char*)&agg
r);
+
char aggr_buffer[sizeof(aggregate)]
;
+ func.create_aggregate(tup,
aggr_buffe
r);
// neeed operator= doing a deep copy
// neeed operator= doing a deep copy
- group_table[curr_table].insert(new_grp,
aggr
);
+ group_table[curr_table].insert(new_grp,
(*(aggregate*)aggr_buffer)
);
}
}
}
}
}
}