Commit dda8b6a6 authored by Kento HASEGAWA's avatar Kento HASEGAWA
Browse files

Improve the request status display

parent 26018bb4
Loading
Loading
Loading
Loading
+9 −2
Changes for roles/host.py: 9 added lines, 2 removed lines.
Original line number Diff line number Diff line
@@ -407,9 +407,16 @@ class Request(object):
            idx = data['part_id']
            print(idx)
            if data['status'] == 'done':
                self.solved[idx] += 1
                self.solved[idx] = 1
            else:
                self.solved[idx] = -1
            if all([v!=0 for v in self.solved]) and any([v<0 for v in self.solved]):
                self.solved[-1] = -1
        else:
            if data['status'] == 'done':
                self.solved[-1] = 1
            else:
                self.solved[-1] = -1
            self.done_time = time.time()

    def get_status(self):
@@ -428,7 +435,7 @@ class Request(object):
                status = 'Not connected'
            else:
                if len(self.solved) == 1:
                    status_mes = 'Waiting for response'
                    status_mes = 'Running'
                elif len(self.solved) > 1:
                    counter = sum([v>0 for v in self.solved])
                    status_mes = f'{counter}/{len(self.solved)}'
+9 −3
Changes for utils/data.py: 9 added lines, 3 removed lines.
Original line number Diff line number Diff line
@@ -360,10 +360,16 @@ class Problem(object):
    
        idx = int(data['part_id'])
        self.partial_solutions[idx].append(data)
        print([len(v)>0 for v in self.partial_solutions])
        
        outdir = f"{self.solution_path}/{self.name}"
        if not os.path.exists(outdir):
            os.mkdir(outdir)
        outpath = f"{outdir}/{data['request_id']}-{data['worker']}-p{data['part_id']}.json".replace(":", ".")
        with open(outpath, 'w') as fp:
            json.dump(self.get_dict(), fp, indent=4)

        # print([len(v)>0 for v in self.partial_solutions])
        if all([len(v)>0 for v in self.partial_solutions]):
            # for v in self.partial_solutions:
            #     print(v[0])
            return True
        else:
            return False