Skip to content

Commit 99b4a91

Browse files
committed
ensure runtime template
1 parent 7f1a7a5 commit 99b4a91

File tree

5 files changed

+24
-8
lines changed

5 files changed

+24
-8
lines changed

app.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,8 @@ def setup_request_logging(app, runtime_state):
3535
@app.before_request
3636
def log_request_info():
3737
runtime_state.template_lock.renew()
38+
request_folder = request.args.get('folder')
39+
runtime_state.ensure_runtime_template(request_folder)
3840
runtime_state.log_request(request)
3941
request._start_time = time.time()
4042

routes/runtime_state.py

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -143,12 +143,10 @@ def log_warning(self, message):
143143
self.logger.warning(f"{self.log_prefix} {message}")
144144

145145
def log_request(self, request):
146-
self.logger.info(
147-
f"{self.log_prefix} {build_request_info_string(request)}")
146+
self.logger.info(f"{self.log_prefix} {build_request_info_string(request)}")
148147

149148
def log_response(self, response, request, duration=None):
150-
self.logger.info(
151-
f"{self.log_prefix} {build_response_info_string(response, request, duration)}")
149+
self.logger.info(f"{self.log_prefix} {build_response_info_string(response, request, duration)}")
152150

153151
def reload_data_if_needed(self):
154152
if not self.data_parser:
@@ -170,6 +168,17 @@ def _get_current_pkl_files_fingerprint(self):
170168

171169
return get_files_fingerprint(self.data_parser.pkl_files)
172170

171+
def ensure_runtime_template(self, runtime_template):
172+
if not runtime_template:
173+
return
174+
175+
if self.template_lock.is_locked():
176+
return
177+
178+
if runtime_template == os.path.basename(self.runtime_template):
179+
return
180+
181+
self.reload_template(runtime_template)
173182

174183
def reload_template(self, runtime_template):
175184
# init template and data parser

routes/utils.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -229,4 +229,4 @@ def get_files_fingerprint(files):
229229
continue
230230
parts.append(f"{file}:{stat['mtime']}:{stat['size']}")
231231

232-
return hashlib.md5(";".join(parts).encode()).hexdigest()
232+
return hashlib.md5(";".join(parts).encode()).hexdigest()

static/js/modules/base.js

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -142,10 +142,13 @@ export class BaseModule {
142142
this.svg = null;
143143
}
144144

145-
async fetchData() {
145+
async fetchData(folder) {
146146
this.clearSVG();
147147

148-
const response = await fetch(this.api_url);
148+
const response = await fetch(
149+
`${this.api_url}?` +
150+
`folder=${folder}`
151+
);
149152
const data = await response.json();
150153

151154
if (!data) {

static/js/modules/task_subgraphs.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,9 @@ export class TaskSubgraphsModule extends BaseModule {
1010
if (!subgraph_id) return;
1111

1212
const response = await fetch(
13-
`${this.api_url}?subgraph_id=${subgraph_id}` +
13+
`${this.api_url}?` +
14+
`folder=${folder}` +
15+
`&subgraph_id=${subgraph_id}` +
1416
`&plot_failed_task=${plot_failed_task}` +
1517
`&plot_recovery_task=${plot_recovery_task}`
1618
);

0 commit comments

Comments
 (0)