Skip to content

Commit d00b2a0

Browse files
authored
Merge pull request #217 from LabKey/fb_merge_24.7_to_develop
Merge discvr-24.7 to develop
2 parents d4148de + a374689 commit d00b2a0

8 files changed

Lines changed: 58 additions & 19 deletions

File tree

mcc/resources/queries/mcc/genomicDatasetsSource.sql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,4 +7,4 @@ SELECT
77

88
FROM sequenceanalysis.sequence_readsets r
99

10-
WHERE r.subjectid LIKE 'MCC%' AND r.subjectid NOT LIKE 'MCC_%'
10+
WHERE r.subjectid LIKE 'MCC%' AND r.subjectid NOT LIKE 'MCC[_]%'

mcc/resources/queries/study/demographicsMostRecentWeight.query.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
query.queryName=Weight&
1414
query.id~eq=${id}
1515
</url>
16-
<formatString>0.##</formatString>
16+
<formatString>0.####</formatString>
1717
</column>
1818
<column columnName="MostRecentWeightGrams">
1919
<columnTitle>Current Weight (g)</columnTitle>

mcc/resources/queries/study/demographicsMostRecentWeight.sql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ timestampdiff('SQL_TSI_DAY', w.MostRecentWeightDate, now()) AS DaysSinceWeight,
1212
null as weightField,
1313
--NOTE: we need to be careful in case duplicate weights are entered on the same time
1414
cast((
15-
SELECT round(cast(AVG(w2.weight) as double), 2) AS _expr
15+
SELECT round(cast(AVG(w2.weight) as double), 4) AS _expr
1616
FROM study.weight w2
1717
WHERE w.id=w2.id AND w.MostRecentWeightDate=w2.date
1818
) as double) AS MostRecentWeight,

mcc/resources/queries/study/weight.query.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,8 +38,8 @@
3838
</fk>
3939
</column>
4040
<column columnName="weight">
41-
<columnTitle>Weight (kg)</columnTitle>
42-
<formatString>0.###</formatString>
41+
<columnTitle>Weight (kg)</columnTitle>
42+
<formatString>0.####</formatString>
4343
</column>
4444
</columns>
4545
</table>

mcc/src/org/labkey/mcc/etl/NprcObservationStep.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@
3636
import java.util.Arrays;
3737
import java.util.Collections;
3838
import java.util.Date;
39+
import java.util.HashMap;
3940
import java.util.List;
4041
import java.util.Map;
4142
import java.util.stream.Collectors;
@@ -133,7 +134,7 @@ private void processFile(PipelineJob job) throws PipelineJobException
133134
String objectId = new TableSelector(clinicalObs, PageFlowUtil.set("objectid"), filter, null).getObject(String.class);
134135
if (observation == null && objectId != null)
135136
{
136-
toDelete.add(row);
137+
toDelete.add(new CaseInsensitiveHashMap<>(Map.of("objectid", objectId)));
137138
continue;
138139
}
139140

mcc/src/org/labkey/mcc/notification/MCCDataNotification.java

Lines changed: 34 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,6 @@
1414
import org.labkey.mcc.MccManager;
1515

1616
import java.util.Date;
17-
import java.util.HashMap;
18-
import java.util.Map;
1917

2018
/**
2119
* User: bimber
@@ -81,6 +79,7 @@ public String getMessageBodyHTML(Container c, User u)
8179
doU24AssignedCheck(mccData, u , msg);
8280
doMissingIdCheck(mccData, u, msg);
8381
doZeroWeightCheck(mccData, u, msg);
82+
doDuplicationCheck(mccData, u, msg);
8483

8584
//since we dont want to trigger an email if there's no alerts, conditionally append the title
8685
if (msg.length() > 0)
@@ -174,4 +173,37 @@ protected void doParentSexCheck(final Container c, User u, final StringBuilder m
174173
msg.append("<hr>\n\n");
175174
}
176175
}
176+
177+
protected void doDuplicationCheck(final Container c, User u, final StringBuilder msg)
178+
{
179+
TableInfo ti = getUserSchemaByName(c, u, "mcc").getTable("duplicateDemographics");
180+
TableSelector ts = new TableSelector(ti);
181+
long count = ts.getRowCount();
182+
if (count > 0)
183+
{
184+
msg.append("<b>WARNING: There are ").append(count).append(" demographics records with duplicated MCC IDs\n");
185+
msg.append("<p><a href='").append(getExecuteQueryUrl(c, "mcc", "duplicateDemographics", null)).append("'>Click here to view them</a><br>\n\n");
186+
msg.append("<hr>\n\n");
187+
}
188+
189+
ti = getUserSchemaByName(c, u, "mcc").getTable("duplicatedAggregatedDemographics");
190+
ts = new TableSelector(ti);
191+
count = ts.getRowCount();
192+
if (count > 0)
193+
{
194+
msg.append("<b>WARNING: There are ").append(count).append(" aggregated demographics records with duplicated MCC IDs\n");
195+
msg.append("<p><a href='").append(getExecuteQueryUrl(c, "mcc", "duplicatedAggregatedDemographics", null)).append("'>Click here to view them</a><br>\n\n");
196+
msg.append("<hr>\n\n");
197+
}
198+
199+
ti = getUserSchemaByName(c, u, "mcc").getTable("duplicatedAggregatedDemographicsParents");
200+
ts = new TableSelector(ti);
201+
count = ts.getRowCount();
202+
if (count > 0)
203+
{
204+
msg.append("<b>WARNING: There are ").append(count).append(" aggregated demographics parent records with duplicated MCC IDs\n");
205+
msg.append("<p><a href='").append(getExecuteQueryUrl(c, "mcc", "duplicatedAggregatedDemographicsParents", null)).append("'>Click here to view them</a><br>\n\n");
206+
msg.append("<hr>\n\n");
207+
}
208+
}
177209
}

primeseq/src/org/labkey/primeseq/pipeline/SequenceJobResourceAllocator.java

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -98,8 +98,8 @@ public Integer getMaxRequestCpus(PipelineJob job)
9898

9999
if (isSequenceNormalizationTask(job))
100100
{
101-
job.getLogger().debug("setting max CPUs to 8");
102-
return 8;
101+
job.getLogger().debug("setting max CPUs to 4");
102+
return 4;
103103
}
104104

105105
if (isLuceneIndexJob(job))
@@ -125,14 +125,14 @@ public Integer getMaxRequestCpus(PipelineJob job)
125125
}
126126
else if (totalFileSize < 20e9)
127127
{
128-
job.getLogger().debug("file size less than 20gb, lowering CPUs to 16");
128+
job.getLogger().debug("file size less than 20gb, lowering CPUs to 12");
129129

130-
return 16;
130+
return 12;
131131
}
132132

133-
job.getLogger().debug("file size greater than 20gb, using 24 CPUs");
133+
job.getLogger().debug("file size greater than 20gb, using 12 CPUs");
134134

135-
return 24;
135+
return 12;
136136
}
137137

138138
return null;
@@ -155,8 +155,8 @@ public Integer getMaxRequestMemory(PipelineJob job)
155155

156156
if (isSequenceNormalizationTask(job))
157157
{
158-
job.getLogger().debug("setting memory to 48");
159-
return 48;
158+
job.getLogger().debug("setting memory to 18");
159+
return 18;
160160
}
161161

162162
if (isGeneticsTask(job))
@@ -167,8 +167,8 @@ public Integer getMaxRequestMemory(PipelineJob job)
167167

168168
if (isCacheAlignerIndexesTask(job))
169169
{
170-
job.getLogger().debug("setting memory to 48");
171-
return 48;
170+
job.getLogger().debug("setting memory to 12");
171+
return 12;
172172
}
173173

174174
if (isLuceneIndexJob(job))
@@ -314,7 +314,7 @@ public void addExtraSubmitScriptLines(PipelineJob job, RemoteExecutionEngine eng
314314
}
315315

316316
@Override
317-
public Map<String, Object> getEnvironmentVars(PipelineJob job, RemoteExecutionEngine engine)
317+
public @NotNull Map<String, Object> getEnvironmentVars(PipelineJob job, RemoteExecutionEngine engine)
318318
{
319319
Map<String, Object> ret = new HashMap<>();
320320

tcrdb/src/org/labkey/tcrdb/pipeline/CellRangerVDJUtils.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -512,6 +512,12 @@ else if (discordantBarcodes.contains(barcode))
512512
for (File f : Arrays.asList(consensusFastaGD, allFastaGD))
513513
{
514514
_log.info("processing G/D FASTA: " + f.getPath());
515+
if (!SequencePipelineService.get().hasMinLineCount(f, 2))
516+
{
517+
_log.info("too few lines, skipping FASTA:" + f.getPath());
518+
continue;
519+
}
520+
515521
try (FastaDataLoader loader = new FastaDataLoader(f, false))
516522
{
517523
loader.setCharacterFilter(new FastaLoader.UpperAndLowercaseCharacterFilter());

0 commit comments

Comments
 (0)