Skip to content

Commit 7922150

Browse files
author
Yan Xu
committed
Fix bug
1 parent 84005ea commit 7922150

File tree

8 files changed

+27
-18
lines changed

8 files changed

+27
-18
lines changed

webapp/client/src/edge/project/forms/FastqInput.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,7 @@ export const FastqInput = (props) => {
6767
{!props.disableSwitcher && (
6868
<>
6969
<Switcher
70+
id={'interleaved'}
7071
name={'interleaved'}
7172
setParams={setSwitcher}
7273
text={components[componentName].params['interleaved'].text}

webapp/client/src/edge/project/forms/Switcher.js

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import { components } from './defaults'
66

77
export const Switcher = (props) => {
88
const componentName = 'switcher'
9-
const [form, setState] = useState({ ...components[componentName] })
9+
const [form, setState] = useState({ ...components[componentName], isTrue: props.defaultValue })
1010
const [doValidation, setDoValidation] = useState(0)
1111

1212
const setNewState2 = (name, value) => {
@@ -18,11 +18,7 @@ export const Switcher = (props) => {
1818
}
1919

2020
useEffect(() => {
21-
form.isTrue = props.defaultValue
22-
}, []) // eslint-disable-line react-hooks/exhaustive-deps
23-
24-
useEffect(() => {
25-
setState({ ...components[componentName] })
21+
setState({ ...components[componentName], isTrue: props.defaultValue })
2622
}, [props.reset]) // eslint-disable-line react-hooks/exhaustive-deps
2723

2824
useEffect(() => {

webapp/client/src/edge/workflows/metagenomics/Main.js

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ const Main = (props) => {
3232
setDoValidation(doValidation + 1)
3333
}
3434
const setWorkflowParams = (params, workflowName) => {
35-
console.log(workflowName, params)
35+
//console.log(workflowName, params)
3636
setSelectedWorkflows({ ...selectedWorkflows, [workflowName]: params })
3737
setDoValidation(doValidation + 1)
3838
}
@@ -63,6 +63,9 @@ const Main = (props) => {
6363
selectedWorkflows[workflow].inputs[key].value
6464
}
6565
})
66+
// set pairedFile flag
67+
myWorkflow.input['pairedFile'] = !myWorkflow.input['interleaved']
68+
6669
//update input for nextflow
6770
if (!myWorkflow.input['artifactFile']) {
6871
myWorkflow.input['artifactFile'] = '${projectDir}/nf_assets/NO_FILE3'

webapp/client/src/edge/workflows/metagenomics/defaults.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ export const workflows = {
77
validForm: false,
88
errMessage: 'input error',
99
inputs: {
10-
pairedFile: {
10+
interleaved: {
1111
text: 'Is interleaved',
1212
value: true,
1313
},

webapp/client/src/edge/workflows/metagenomics/forms/RunFaQCs.js

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ export const RunFaQCs = (props) => {
2626
}
2727

2828
const setIntegerInput = (inForm, name) => {
29-
console.log(inForm, name)
29+
//console.log(inForm, name)
3030
if (inForm.validForm) {
3131
form.inputs[name].value = inForm.integerInput
3232
if (validInputs[name]) {
@@ -65,7 +65,7 @@ export const RunFaQCs = (props) => {
6565

6666
const setFastqInput = (inForm, name) => {
6767
if (inForm.validForm) {
68-
form.inputs['pairedFile'].value = !inForm.interleaved
68+
form.inputs['interleaved'].value = inForm.interleaved
6969
if (inForm.interleaved) {
7070
form.inputs[name].value = inForm.fileInput
7171
form.inputs[name].display = inForm.fileInput_display
@@ -77,7 +77,8 @@ export const RunFaQCs = (props) => {
7777
validInputs[name].isValid = true
7878
}
7979
} else {
80-
form.inputs['pairedFile'].value = inForm.interleaved
80+
// reset values
81+
form.inputs['interleaved'].value = true
8182
form.inputs[name].value = []
8283
form.inputs[name].display = []
8384
if (validInputs[name]) {
@@ -172,6 +173,7 @@ export const RunFaQCs = (props) => {
172173
/>
173174
<br></br>
174175
<Switcher
176+
id={'trimAdapter'}
175177
name={'trimAdapter'}
176178
setParams={setSwitcher}
177179
text={workflows[workflowName].inputs['trimAdapter'].text}
@@ -193,6 +195,7 @@ export const RunFaQCs = (props) => {
193195
/>
194196
<br></br>
195197
<Switcher
198+
id={'trimPolyA'}
196199
name={'trimPolyA'}
197200
setParams={setSwitcher}
198201
text={workflows[workflowName].inputs['trimPolyA'].text}
@@ -261,6 +264,7 @@ export const RunFaQCs = (props) => {
261264
/>
262265
<br></br>
263266
<Switcher
267+
id={'filtPhiX'}
264268
name={'filtPhiX'}
265269
setParams={setSwitcher}
266270
text={workflows[workflowName].inputs['filtPhiX'].text}
12.6 KB
Binary file not shown.

webapp/server/edge-api/utils/project.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -166,6 +166,9 @@ const getProjectRunStats = async (code, type, req) => {
166166
if (proj) {
167167
// get associated job
168168
const job = await Job.findOne({ 'project': { $eq: code } });
169+
if (!job) {
170+
return {};
171+
}
169172
const projHome = `${config.IO.PROJECT_BASE_DIR}/${code}`;
170173
const statsJson = `${projHome}/run_stats.json`;
171174
if (job.queue === 'nextflow') {

webapp/server/utils/nextflow.js

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -66,13 +66,15 @@ const abortJob = async (proj) => {
6666
// If is local, find pid in .nextflow.pid and kill process and all descendant processes: pkill -TERM -P <pid>
6767
// If is slurm, delete slurm job?
6868
const pidFile = `${config.IO.PROJECT_BASE_DIR}/${proj.code}/nextflow/.nextflow.pid`;
69-
let all = fs.readFileSync(pidFile, 'utf8');
70-
all = all.trim(); // final crlf in file
71-
const lines = all.split('\n');
72-
const pid = parseInt(lines[0], 10);
73-
const cmd = `pkill -TERM -P ${pid}`;
74-
// Don't need to wait for the deletion, the process may already complete
75-
execCmd(cmd);
69+
if (fs.existsSync(pidFile)) {
70+
let all = fs.readFileSync(pidFile, 'utf8');
71+
all = all.trim(); // final crlf in file
72+
const lines = all.split('\n');
73+
const pid = parseInt(lines[0], 10);
74+
const cmd = `pkill -TERM -P ${pid}`;
75+
// Don't need to wait for the deletion, the process may already complete
76+
execCmd(cmd);
77+
}
7678
// delete job
7779
Job.deleteOne({ project: proj.code }, (err) => {
7880
if (err) {

0 commit comments

Comments
 (0)