Changeset: be448f6f3645 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=be448f6f3645
Modified Files:
MonetDB5/src/mal/mal_interpreter.mx
Branch: default
Log Message:
Reset error upon redo
When an instruction should be rescheduled, then we better reset the pc number
to positive.
Also, when we attempt to execute an instruction already marked as error, break
the loop.
diffs (16 lines):
diff -r 05423a3abe36 -r be448f6f3645 MonetDB5/src/mal/mal_interpreter.mx
--- a/MonetDB5/src/mal/mal_interpreter.mx Sat Nov 27 10:29:14 2010 +0100
+++ b/MonetDB5/src/mal/mal_interpreter.mx Sun Nov 28 02:15:05 2010 +0100
@@ -1143,10 +1143,11 @@
if ( fs->pc >= 0)
printInstruction(GDKstdout, fs->flow->mb, 0,
getInstrPtr(fs->flow->mb,fs->pc), LIST_MAL_STMT | LIST_MAPI);
#endif
- err = DFLOWstep(task, fs);
+ err = fs->pc >0 ? DFLOWstep(task, fs):
createException(MAL,"interpreter","flow step failed");
/* restore the instruction and wait in specific cases*/
if ( err != MAL_SUCCEED && strstr(err,"DFLOWadmission") != NULL
&& strstr(err,"failed") != NULL){
GDKfree(err);
+ fs->pc = ABS(fs->pc);
fs->status = DFLOWrunning;
q_requeue(task->todo,fs);
continue;
_______________________________________________
Checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list