@@ -118,43 +118,53 @@ def run(self):
118118 traceback .print_exc ()
119119 return 3 , "DataCleaner loading failed."
120120
121- # step 4. apply processors to calculate scores of different dimensions
122- try :
123- res_dataset = dataset
124- if hit_cleaner :
125- res_dataset = cleaner .process ([res_dataset ])
126- if hit_synthesizer :
127- res_dataset = synthesizer .process ([res_dataset ])
128- if hit_human_annotator :
129- res_dataset = human_annotator .process ([res_dataset ])
130- except Exception :
131- traceback .print_exc ()
132- return 4 , "DataProcessors processing failed."
133-
134- # step 5. calculate the average and final scores, including priority
135- try :
136- if hit_cleaner :
137- scored_dataset = self ._group_scores (res_dataset )
138- scored_dataset = self ._compute_priority_scores (scored_dataset )
139- else :
140- scored_dataset = res_dataset
141- except Exception :
142- traceback .print_exc ()
143- return 5 , "Grouping and computing priority score failed."
144-
145- # step 6. track lineage if they are changed
146- try :
147- res_dataset = scored_dataset
148- except Exception :
149- traceback .print_exc ()
150- return 6 , "Tracking lineage failed."
151-
152- # step 7. export the result to the output buffer
153- try :
154- res_dataset .write_to_buffer ()
155- except Exception :
156- traceback .print_exc ()
157- return 7 , "Exporting result to output buffer failed."
121+ while True :
122+ # step 4. load data from the input buffers for the next batch
123+ try :
124+ dataset .read_from_buffer ()
125+ except StopIteration :
126+ break
127+ except Exception :
128+ traceback .print_exc ()
129+ return 4 , "RftDataset loading from buffers failed."
130+
131+ # step 5. apply processors to calculate scores of different dimensions
132+ try :
133+ res_dataset = dataset
134+ if hit_cleaner :
135+ res_dataset = cleaner .process ([res_dataset ])
136+ if hit_synthesizer :
137+ res_dataset = synthesizer .process ([res_dataset ])
138+ if hit_human_annotator :
139+ res_dataset = human_annotator .process ([res_dataset ])
140+ except Exception :
141+ traceback .print_exc ()
142+ return 5 , "DataProcessors processing failed."
143+
144+ # step 6. calculate the average and final scores, including priority
145+ try :
146+ if hit_cleaner :
147+ scored_dataset = self ._group_scores (res_dataset )
148+ scored_dataset = self ._compute_priority_scores (scored_dataset )
149+ else :
150+ scored_dataset = res_dataset
151+ except Exception :
152+ traceback .print_exc ()
153+ return 6 , "Grouping and computing priority score failed."
154+
155+ # step 7. track lineage if they are changed
156+ try :
157+ res_dataset = scored_dataset
158+ except Exception :
159+ traceback .print_exc ()
160+ return 7 , "Tracking lineage failed."
161+
162+ # step 8. export the result to the output buffer
163+ try :
164+ res_dataset .write_to_buffer ()
165+ except Exception :
166+ traceback .print_exc ()
167+ return 8 , "Exporting result to output buffer failed."
158168
159169 return 0 , "success"
160170
0 commit comments