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.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;
}
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.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;
}
//printf("accept_tuple channel=%d: ",tup.channel);
int tup_order=func.compare_ts_with_ts(&tup_ts,max_input_ts[tup.channel]);
if (tup_order < 0){
- printf("%s: out of order ts, channel=%d.\n", op_name, tup.channel);
+ // printf("%s: out of order ts, channel=%d.\n", op_name, tup.channel);
tup.free_tuple();
// even for out of order temporal tuples we need to post new temporal tuple
ret = func.create_group(tup, (gs_sp_t)&grp);
nflushes = func.flush_needed();
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;
}
typename hash_table<group, aggregate, hasher_func, equal_func>::iterator iter;
// Limit the number of successive flushes - avoid explosive behavior
- const gs_int32_t max_flushes = 10;
+ const gs_int32_t max_flushes = 25;
if(nflushes>max_flushes){
fprintf(stderr,"Warning in operator %s, temporal advance of %d windows needed, max number of windows that can be reported at once is %d\n",op_name, nflushes, max_flushes);
nflushes = max_flushes;