From 7a5ea523f0a338cee0ac009d94c103b9a0d74a56 Mon Sep 17 00:00:00 2001 From: labkey-matthewb Date: Tue, 29 Jul 2025 09:49:54 -0700 Subject: [PATCH] checkpoint - migrate to using long/Long to represent any integer ID value (rowId, objectId, etc). --- .../view/SkylineToolsStoreWebPart.jsp | 3 ++- .../org/labkey/lincs/DocImportListener.java | 2 +- .../src/org/labkey/lincs/LincsController.java | 2 +- .../src/org/labkey/lincs/psp/LincsPspJob.java | 6 +++--- .../org/labkey/lincs/psp/LincsPspTask.java | 2 +- .../org/labkey/nextflow/NextFlowManager.java | 6 +++--- .../PanoramaPublicController.java | 8 ++++---- .../PanoramaPublicMetadataImporter.java | 9 +++++---- .../model/ExperimentAnnotations.java | 6 +++--- .../model/validation/DataValidation.java | 6 +++--- .../pipeline/PxDataValidationTask.java | 2 +- .../ExperimentModificationGetter.java | 5 +++-- .../proteomexchange/NcbiUtils.java | 3 ++- .../proteomexchange/PxHtmlWriter.java | 3 ++- .../query/DataValidationManager.java | 2 +- .../query/ExperimentAnnotationsManager.java | 20 +++++++++---------- .../panoramapublic/speclib/BlibReader.java | 4 +++- .../view/publish/pxValidationRunning.jsp | 2 +- .../view/publish/pxValidationStatus.jsp | 2 +- .../testresults/TestResultsController.java | 9 +++++---- .../labkey/testresults/view/RunDownBean.java | 5 +++-- 21 files changed, 58 insertions(+), 49 deletions(-) diff --git a/SkylineToolsStore/src/org/labkey/skylinetoolsstore/view/SkylineToolsStoreWebPart.jsp b/SkylineToolsStore/src/org/labkey/skylinetoolsstore/view/SkylineToolsStoreWebPart.jsp index b780aea8..03607ace 100644 --- a/SkylineToolsStore/src/org/labkey/skylinetoolsstore/view/SkylineToolsStoreWebPart.jsp +++ b/SkylineToolsStore/src/org/labkey/skylinetoolsstore/view/SkylineToolsStoreWebPart.jsp @@ -20,6 +20,7 @@ <%@ page import="java.util.Iterator" %> <%@ page import="java.util.List" %> <%@ page import="java.util.Map" %> +<%@ page import="org.labkey.api.collections.IntHashMap" %> <%@ page extends="org.labkey.api.jsp.JspBase" %> <%! @@ -237,7 +238,7 @@
<% - HashMap toolOwners = new HashMap<>(); + HashMap toolOwners = new IntHashMap<>(); for (SkylineTool tool : tools) { final String tableId = "table-" + tool.getName().replaceAll("[^A-Za-z0-9]", ""); diff --git a/lincs/src/org/labkey/lincs/DocImportListener.java b/lincs/src/org/labkey/lincs/DocImportListener.java index 0c2ae1c0..a5179fc6 100644 --- a/lincs/src/org/labkey/lincs/DocImportListener.java +++ b/lincs/src/org/labkey/lincs/DocImportListener.java @@ -137,7 +137,7 @@ public void onDocumentImport(Container container, User user, ITargetedMSRun skyl return; } - int jobId = PipelineService.get().getJobId(user, container, job.getJobGUID()); + long jobId = PipelineService.get().getJobId(user, container, job.getJobGUID()); _log.info("LINCS: Queued job Id " + jobId +" for creating GCT files for " + skylineRun.getFileName() + ". Container: " + container.getPath()); pspJob.setPipelineJobId(jobId); diff --git a/lincs/src/org/labkey/lincs/LincsController.java b/lincs/src/org/labkey/lincs/LincsController.java index 2179ba2f..c38497e6 100644 --- a/lincs/src/org/labkey/lincs/LincsController.java +++ b/lincs/src/org/labkey/lincs/LincsController.java @@ -1556,7 +1556,7 @@ public boolean handlePost(LincsPspJobForm form, BindException errors) return false; } - int jobId = PipelineService.get().getJobId(getUser(), container, job.getJobGUID()); + long jobId = PipelineService.get().getJobId(getUser(), container, job.getJobGUID()); newPspJob.setPipelineJobId(jobId); lincsManager.updatePipelineJobId(newPspJob); return true; diff --git a/lincs/src/org/labkey/lincs/psp/LincsPspJob.java b/lincs/src/org/labkey/lincs/psp/LincsPspJob.java index 09cbc2b0..d21b9a6d 100644 --- a/lincs/src/org/labkey/lincs/psp/LincsPspJob.java +++ b/lincs/src/org/labkey/lincs/psp/LincsPspJob.java @@ -9,7 +9,7 @@ public class LincsPspJob private int id; private long _runId; private Container _container; - private Integer _pipelineJobId; + private Long _pipelineJobId; private String _pspJobId; private String pspJobName; @@ -59,12 +59,12 @@ public void setContainer(Container container) _container = container; } - public Integer getPipelineJobId() + public Long getPipelineJobId() { return _pipelineJobId; } - public void setPipelineJobId(Integer pipelineJobId) + public void setPipelineJobId(Long pipelineJobId) { _pipelineJobId = pipelineJobId; } diff --git a/lincs/src/org/labkey/lincs/psp/LincsPspTask.java b/lincs/src/org/labkey/lincs/psp/LincsPspTask.java index 22de8eb9..0af5368e 100644 --- a/lincs/src/org/labkey/lincs/psp/LincsPspTask.java +++ b/lincs/src/org/labkey/lincs/psp/LincsPspTask.java @@ -81,7 +81,7 @@ private void postToPsp(LincsPspJobSupport jobSupport, User user, Logger log) thr if(pspJob.getPipelineJobId() == null) { - Integer pipelineJobId = (PipelineService.get().getJobId(getJob().getUser(), getJob().getContainer(), getJob().getJobGUID())); + Long pipelineJobId = (PipelineService.get().getJobId(getJob().getUser(), getJob().getContainer(), getJob().getJobGUID())); pspJob.setPipelineJobId(pipelineJobId); } diff --git a/nextflow/src/org/labkey/nextflow/NextFlowManager.java b/nextflow/src/org/labkey/nextflow/NextFlowManager.java index a1b115c7..d9bc62b6 100644 --- a/nextflow/src/org/labkey/nextflow/NextFlowManager.java +++ b/nextflow/src/org/labkey/nextflow/NextFlowManager.java @@ -174,7 +174,7 @@ private DbSchema getDbSchema() return DbSchema.get(SCHEMA_NAME, DbSchemaType.Module); } - private Integer getJobId(NextFlowPipelineJob job) + private Long getJobId(NextFlowPipelineJob job) { PipelineStatusFile file = PipelineService.get().getStatusFile(job.getJobGUID()); return file == null ? null : file.getRowId(); @@ -185,7 +185,7 @@ public int getInvocationCount(NextFlowPipelineJob job) return getInvocationCount(getJobId(job)); } - private int getInvocationCount(int jobId) + private int getInvocationCount(long jobId) { Integer result = new SqlSelector(getDbSchema(), new SQLFragment("SELECT InvocationCount FROM nextflow.Job WHERE JobId = ?", jobId)).getObject(Integer.class); return result != null ? result.intValue() : 0; @@ -193,7 +193,7 @@ private int getInvocationCount(int jobId) public int incrementInvocationCount(NextFlowPipelineJob job) { - int jobId = getJobId(job); + long jobId = getJobId(job); int current = getInvocationCount(jobId); current++; if (current == 1) diff --git a/panoramapublic/src/org/labkey/panoramapublic/PanoramaPublicController.java b/panoramapublic/src/org/labkey/panoramapublic/PanoramaPublicController.java index c54778be..5a6de3d2 100644 --- a/panoramapublic/src/org/labkey/panoramapublic/PanoramaPublicController.java +++ b/panoramapublic/src/org/labkey/panoramapublic/PanoramaPublicController.java @@ -3416,7 +3416,7 @@ private DataValidation submitValidationJob(@NotNull ExperimentAnnotations experi validation = DataValidationManager.saveDataValidation(validation, user); PxDataValidationPipelineJob job = new PxDataValidationPipelineJob(info, root, experimentAnnotations, validation.getId()); PipelineService.get().queueJob(job); - Integer jobId = PipelineService.get().getJobId(user, container, job.getJobGUID()); + Long jobId = PipelineService.get().getJobId(user, container, job.getJobGUID()); if (jobId == null) { errors.reject(ERROR_MSG, "Data validation job was not submitted for experiment Id: " + experimentAnnotations.getId()); @@ -3487,7 +3487,7 @@ public ModelAndView getView(PxDataValidationForm form, BindException errors) return new SimpleErrorView(errors, false); } - int jobId = validation.getJobId(); + long jobId = validation.getJobId(); PipelineStatusFile pipelineJobStatus = PipelineService.get().getStatusFile(jobId); JournalSubmission js = SubmissionManager.getNewestJournalSubmission(_experimentAnnotations); JspView view; @@ -3585,7 +3585,7 @@ public Object execute(PxDataValidationForm form, BindException errors) throws Ex DataValidation validation = DataValidationManager.getValidation(form.getValidationId(), getContainer()); if (validation != null) { - int jobId = validation.getJobId(); + long jobId = validation.getJobId(); PipelineStatusFile status = PipelineService.get().getStatusFile(jobId); if (status != null) { @@ -5804,7 +5804,7 @@ public boolean handlePost(NewExperimentAnnotationsForm form, BindException error // Add all runs in the folder List runsInFolder = ExperimentService.get().getExpRuns(getContainer(), null, null); - int[] runIds = new int[runsInFolder.size()]; + long[] runIds = new long[runsInFolder.size()]; int i = 0; for(ExpRun run: runsInFolder) { diff --git a/panoramapublic/src/org/labkey/panoramapublic/PanoramaPublicMetadataImporter.java b/panoramapublic/src/org/labkey/panoramapublic/PanoramaPublicMetadataImporter.java index ac13766a..b794935b 100644 --- a/panoramapublic/src/org/labkey/panoramapublic/PanoramaPublicMetadataImporter.java +++ b/panoramapublic/src/org/labkey/panoramapublic/PanoramaPublicMetadataImporter.java @@ -1,5 +1,6 @@ package org.labkey.panoramapublic; +import org.apache.commons.lang3.ArrayUtils; import org.apache.logging.log4j.Logger; import org.jetbrains.annotations.Nullable; import org.labkey.api.admin.AbstractFolderImportFactory; @@ -98,7 +99,7 @@ else if (experiments.size() > 1) ExperimentAnnotations targetExperiment = createNewExperimentAnnotations(experiment, sourceExperiment, user, log); // Get a list of all the ExpRuns imported to subfolders of this folder. - int[] runRowIdsInSubfolders = getAllExpRunRowIdsInSubfolders(container); + long[] runRowIdsInSubfolders = getAllExpRunRowIdsInSubfolders(container); if (runRowIdsInSubfolders.length > 0) { // The folder export and import process, creates a new experiment in exp.experiment. @@ -119,11 +120,11 @@ else if (experiments.size() > 1) } } - private static int[] getAllExpRunRowIdsInSubfolders(Container container) + private static long[] getAllExpRunRowIdsInSubfolders(Container container) { Set children = ContainerManager.getAllChildren(container); ExperimentService expService = ExperimentService.get(); - List expRunRowIds = new ArrayList<>(); + List expRunRowIds = new ArrayList<>(); for(Container child: children) { if(container.equals(child)) @@ -136,7 +137,7 @@ private static int[] getAllExpRunRowIdsInSubfolders(Container container) expRunRowIds.add(run.getRowId()); } } - int[] intIds = new int[expRunRowIds.size()]; + long[] intIds = new long[expRunRowIds.size()]; for(int i = 0; i < expRunRowIds.size(); i++) { intIds[i] = expRunRowIds.get(i); diff --git a/panoramapublic/src/org/labkey/panoramapublic/model/ExperimentAnnotations.java b/panoramapublic/src/org/labkey/panoramapublic/model/ExperimentAnnotations.java index 9696b75c..68ba3aee 100644 --- a/panoramapublic/src/org/labkey/panoramapublic/model/ExperimentAnnotations.java +++ b/panoramapublic/src/org/labkey/panoramapublic/model/ExperimentAnnotations.java @@ -49,7 +49,7 @@ */ public class ExperimentAnnotations extends DbEntity { - private int _experimentId; + private long _experimentId; private Container _container; private String _title; private String _experimentDescription; @@ -83,12 +83,12 @@ public class ExperimentAnnotations extends DbEntity public ExperimentAnnotations() {} - public int getExperimentId() + public long getExperimentId() { return _experimentId; } - public void setExperimentId(int experimentId) + public void setExperimentId(long experimentId) { _experimentId = experimentId; } diff --git a/panoramapublic/src/org/labkey/panoramapublic/model/validation/DataValidation.java b/panoramapublic/src/org/labkey/panoramapublic/model/validation/DataValidation.java index d3b3892f..a404a2c5 100644 --- a/panoramapublic/src/org/labkey/panoramapublic/model/validation/DataValidation.java +++ b/panoramapublic/src/org/labkey/panoramapublic/model/validation/DataValidation.java @@ -15,7 +15,7 @@ public class DataValidation extends DbEntity private static final SimpleDateFormat DATE_FORMAT = new SimpleDateFormat("yyyy-MM-d HH:mm"); private int _experimentAnnotationsId; - private int _jobId; + private long _jobId; private PxStatus _status; public DataValidation() {} @@ -35,12 +35,12 @@ public void setExperimentAnnotationsId(int experimentAnnotationsId) _experimentAnnotationsId = experimentAnnotationsId; } - public int getJobId() + public long getJobId() { return _jobId; } - public void setJobId(int jobId) + public void setJobId(long jobId) { _jobId = jobId; } diff --git a/panoramapublic/src/org/labkey/panoramapublic/pipeline/PxDataValidationTask.java b/panoramapublic/src/org/labkey/panoramapublic/pipeline/PxDataValidationTask.java index 332db2bb..2434f490 100644 --- a/panoramapublic/src/org/labkey/panoramapublic/pipeline/PxDataValidationTask.java +++ b/panoramapublic/src/org/labkey/panoramapublic/pipeline/PxDataValidationTask.java @@ -50,7 +50,7 @@ public void doValidation(PipelineJob job, PxDataValidationJobSupport jobSupport) jobSupport.getValidationId(), exptAnnotations.getContainer().getPath())); } log.info(String.format("Validating data for experiment Id: %d, validation Id: %d", exptAnnotations.getId(), validation.getId())); - Integer pipelineJobId = (PipelineService.get().getJobId(job.getUser(), job.getContainer(), job.getJobGUID())); + Long pipelineJobId = (PipelineService.get().getJobId(job.getUser(), job.getContainer(), job.getJobGUID())); if (pipelineJobId != null && pipelineJobId != validation.getJobId()) { throw new PipelineJobException(String.format("Unexpected pipeline job Id %d. Job Id saved in the validation row (Id: %d) is %d.", diff --git a/panoramapublic/src/org/labkey/panoramapublic/proteomexchange/ExperimentModificationGetter.java b/panoramapublic/src/org/labkey/panoramapublic/proteomexchange/ExperimentModificationGetter.java index 160a501b..1dc6b565 100644 --- a/panoramapublic/src/org/labkey/panoramapublic/proteomexchange/ExperimentModificationGetter.java +++ b/panoramapublic/src/org/labkey/panoramapublic/proteomexchange/ExperimentModificationGetter.java @@ -19,6 +19,7 @@ import org.jetbrains.annotations.NotNull; import org.junit.Assert; import org.junit.Test; +import org.labkey.api.collections.LongHashMap; import org.labkey.api.targetedms.IModification; import org.labkey.api.targetedms.ITargetedMSRun; import org.labkey.api.targetedms.TargetedMSService; @@ -47,8 +48,8 @@ public static List getModifications(ExperimentAnnotations expAnn { List runs = ExperimentAnnotationsManager.getTargetedMSRuns(expAnnot); - Map strModMap = new HashMap<>(); - Map isoModMap = new HashMap<>(); + Map strModMap = new LongHashMap<>(); + Map isoModMap = new LongHashMap<>(); UnimodModifications uMods = UnimodUtil.getUnimod(); // Read the UNIMOD modifications diff --git a/panoramapublic/src/org/labkey/panoramapublic/proteomexchange/NcbiUtils.java b/panoramapublic/src/org/labkey/panoramapublic/proteomexchange/NcbiUtils.java index 269952f7..c599dd9f 100644 --- a/panoramapublic/src/org/labkey/panoramapublic/proteomexchange/NcbiUtils.java +++ b/panoramapublic/src/org/labkey/panoramapublic/proteomexchange/NcbiUtils.java @@ -20,6 +20,7 @@ import org.apache.logging.log4j.Logger; import org.json.JSONException; import org.json.JSONObject; +import org.labkey.api.collections.IntHashMap; import org.labkey.api.util.PageFlowUtil; import org.labkey.api.util.Pair; import org.labkey.api.util.logging.LogHelper; @@ -120,7 +121,7 @@ public static Map getScientificNames(List taxIds) thro { String queryUrl = eutilsUrl + "&id=" + StringUtils.join(taxIds, ","); - Map sciNameMap = new HashMap<>(); + Map sciNameMap = new IntHashMap<>(); HttpURLConnection conn = null; try diff --git a/panoramapublic/src/org/labkey/panoramapublic/proteomexchange/PxHtmlWriter.java b/panoramapublic/src/org/labkey/panoramapublic/proteomexchange/PxHtmlWriter.java index 999e45f5..4909c241 100644 --- a/panoramapublic/src/org/labkey/panoramapublic/proteomexchange/PxHtmlWriter.java +++ b/panoramapublic/src/org/labkey/panoramapublic/proteomexchange/PxHtmlWriter.java @@ -17,6 +17,7 @@ import org.apache.commons.lang3.StringUtils; import org.apache.logging.log4j.Logger; +import org.labkey.api.collections.IntHashMap; import org.labkey.api.security.User; import org.labkey.api.util.PageFlowUtil; import org.labkey.api.util.logging.LogHelper; @@ -181,7 +182,7 @@ void writeSpeciesList(ExperimentAnnotations experimentAnnotations) } boolean ncbiLookupError = false; - Map sciNameMap = new HashMap<>(); + Map sciNameMap = new IntHashMap<>(); try { sciNameMap = getScientificNames(taxIds); diff --git a/panoramapublic/src/org/labkey/panoramapublic/query/DataValidationManager.java b/panoramapublic/src/org/labkey/panoramapublic/query/DataValidationManager.java index b66e36f3..a22082e5 100644 --- a/panoramapublic/src/org/labkey/panoramapublic/query/DataValidationManager.java +++ b/panoramapublic/src/org/labkey/panoramapublic/query/DataValidationManager.java @@ -147,7 +147,7 @@ public static boolean isPipelineJobRunning(DataValidation validation) public static PipelineStatusFile getPipelineJobStatus(@NotNull DataValidation validation) { - int jobId = validation.getJobId(); + long jobId = validation.getJobId(); return PipelineService.get().getStatusFile(jobId); } diff --git a/panoramapublic/src/org/labkey/panoramapublic/query/ExperimentAnnotationsManager.java b/panoramapublic/src/org/labkey/panoramapublic/query/ExperimentAnnotationsManager.java index 1bc6a474..04067a91 100644 --- a/panoramapublic/src/org/labkey/panoramapublic/query/ExperimentAnnotationsManager.java +++ b/panoramapublic/src/org/labkey/panoramapublic/query/ExperimentAnnotationsManager.java @@ -85,7 +85,7 @@ public static ExperimentAnnotations get(int experimentAnnotationsId, Container c * @param experimentId FK -> exp.experiment.rowId * @return ExperimentAnnotations object with the given experimentId */ - public static ExperimentAnnotations getForExperimentId(int experimentId) + public static ExperimentAnnotations getForExperimentId(long experimentId) { return new TableSelector(PanoramaPublicManager.getTableInfoExperimentAnnotations(), new SimpleFilter(FieldKey.fromParts("ExperimentId"), experimentId), null).getObject(ExperimentAnnotations.class); @@ -123,7 +123,7 @@ public static void excludeSubfoldersFromExperiment(ExperimentAnnotations expAnno // Get all the runs in the experiment. List runs = experiment.getRuns(); - List rowIdsToRemove = new ArrayList<>(); + List rowIdsToRemove = new ArrayList<>(); Container expContainer = experiment.getContainer(); // Get a list of runs that are not in the folder where the experiment is defined. for(ExpRun run: runs) @@ -134,9 +134,9 @@ public static void excludeSubfoldersFromExperiment(ExperimentAnnotations expAnno } } - int[] rowIds = new int[rowIdsToRemove.size()]; + long[] rowIds = new long[rowIdsToRemove.size()]; int i = 0; - for(Integer rowId: rowIdsToRemove) + for(Long rowId: rowIdsToRemove) { rowIds[i++] = rowId; } @@ -152,11 +152,11 @@ public static void excludeSubfoldersFromExperiment(ExperimentAnnotations expAnno } } - private static void removeRunIds(ExpExperiment experiment, int[] rowIds, User user) + private static void removeRunIds(ExpExperiment experiment, long[] rowIds, User user) { ExperimentService expService = ExperimentService.get(); - for(int rowId: rowIds) + for (long rowId: rowIds) { ExpRun run = expService.getExpRun(rowId); if(run != null) @@ -187,7 +187,7 @@ public static void includeSubfoldersInExperiment(ExperimentAnnotations expAnnota // Get a list of runs that already belong to the experiment. List existingRuns = experiment.getRuns(); - Set existingRunRowIds = new HashSet<>(); + Set existingRunRowIds = new HashSet<>(); for(ExpRun run: existingRuns) { existingRunRowIds.add(run.getRowId()); @@ -195,7 +195,7 @@ public static void includeSubfoldersInExperiment(ExperimentAnnotations expAnnota // Keep runs that do not already belong to the experiment. runs.removeIf(run -> existingRunRowIds.contains(run.getRowId())); - int[] rowIds = new int[runs.size()]; + long[] rowIds = new long[runs.size()]; int i = 0; for(ExpRun run: runs) { @@ -213,10 +213,10 @@ public static void includeSubfoldersInExperiment(ExperimentAnnotations expAnnota } } - public static void addSelectedRunsToExperiment(ExpExperiment experiment, int[] rowIds, User user) + public static void addSelectedRunsToExperiment(ExpExperiment experiment, long[] rowIds, User user) { List runs = new ArrayList<>(); - for (int rowId : rowIds) + for (long rowId : rowIds) { ExpRun run = ExperimentService.get().getExpRun(rowId); if (run != null) diff --git a/panoramapublic/src/org/labkey/panoramapublic/speclib/BlibReader.java b/panoramapublic/src/org/labkey/panoramapublic/speclib/BlibReader.java index 8a4b5286..64357367 100644 --- a/panoramapublic/src/org/labkey/panoramapublic/speclib/BlibReader.java +++ b/panoramapublic/src/org/labkey/panoramapublic/speclib/BlibReader.java @@ -1,6 +1,8 @@ package org.labkey.panoramapublic.speclib; import org.jetbrains.annotations.Nullable; +import org.labkey.api.collections.IntHashMap; + import java.sql.Connection; import java.sql.ResultSet; import java.sql.ResultSetMetaData; @@ -27,7 +29,7 @@ public class BlibReader extends SpecLibReader List sourceFiles = new ArrayList<>(); - Map> scoreTypes = new HashMap<>(); // file id -> score types + Map> scoreTypes = new IntHashMap<>(); // file id -> score types if(hasTable(conn, "ScoreTypes")) // Older .blib files do not have a ScoreTypes table { try (Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery("SELECT DISTINCT r.fileID, s.scoreType FROM RefSpectra as r JOIN ScoreTypes s ON r.scoreType = s.id")) diff --git a/panoramapublic/src/org/labkey/panoramapublic/view/publish/pxValidationRunning.jsp b/panoramapublic/src/org/labkey/panoramapublic/view/publish/pxValidationRunning.jsp index 119fd899..d8f011b1 100644 --- a/panoramapublic/src/org/labkey/panoramapublic/view/publish/pxValidationRunning.jsp +++ b/panoramapublic/src/org/labkey/panoramapublic/view/publish/pxValidationRunning.jsp @@ -20,7 +20,7 @@ <% JspView view = HttpView.currentView(); var bean = view.getModelBean(); - int jobId = bean.getDataValidation().getJobId(); + long jobId = bean.getDataValidation().getJobId(); var jobStatus = bean.getPipelineJobStatus(); var onPageLoadMsg = jobStatus != null ? (String.format("Data validation job is %s. This page will automatically refresh with the validation progress.", jobStatus.isActive() ? (PipelineJob.TaskStatus.waiting.matches(jobStatus.getStatus()) ? "in the queue" : "running") : "complete")) diff --git a/panoramapublic/src/org/labkey/panoramapublic/view/publish/pxValidationStatus.jsp b/panoramapublic/src/org/labkey/panoramapublic/view/publish/pxValidationStatus.jsp index 50bbba34..08542771 100644 --- a/panoramapublic/src/org/labkey/panoramapublic/view/publish/pxValidationStatus.jsp +++ b/panoramapublic/src/org/labkey/panoramapublic/view/publish/pxValidationStatus.jsp @@ -28,7 +28,7 @@ ExperimentAnnotations experimentAnnotations = bean.getExpAnnotations(); int experimentAnnotationsId = experimentAnnotations.getId(); boolean includeSubfolders = experimentAnnotations.isIncludeSubfolders(); - int jobId = bean.getDataValidation().getJobId(); + long jobId = bean.getDataValidation().getJobId(); Integer journalId = bean.getJournalId(); var submitAction = SpringActionController.getActionName(PanoramaPublicController.PublishExperimentAction.class); Submission submission = bean.getSubmission(); diff --git a/testresults/src/org/labkey/testresults/TestResultsController.java b/testresults/src/org/labkey/testresults/TestResultsController.java index 44ce98ea..0e020415 100644 --- a/testresults/src/org/labkey/testresults/TestResultsController.java +++ b/testresults/src/org/labkey/testresults/TestResultsController.java @@ -28,6 +28,7 @@ import org.labkey.api.action.ReadOnlyApiAction; import org.labkey.api.action.SimpleViewAction; import org.labkey.api.action.SpringActionController; +import org.labkey.api.collections.IntHashMap; import org.labkey.api.data.CompareType; import org.labkey.api.data.Container; import org.labkey.api.data.ContainerManager; @@ -1679,7 +1680,7 @@ static void populatePasses(RunDetail[] runs) { TestPassDetail[] passes = new TableSelector(TestResultsSchema.getTableInfoTestPasses(), filter, sortById).getArray(TestPassDetail.class); - Map> testPassDetails = new HashMap<>(); + Map> testPassDetails = new IntHashMap<>(); int id = 0; for (TestPassDetail pass : passes) { if (id != pass.getTestRunId()) { @@ -1738,7 +1739,7 @@ static void populateFailures(RunDetail[] runs) { SimpleFilter filter = filterByRunId(runs); TestFailDetail[] fails = new TableSelector(TestResultsSchema.getTableInfoTestFails(), filter, null).getArray(TestFailDetail.class); - Map> testFailDetails = new HashMap<>(); + Map> testFailDetails = new IntHashMap<>(); for (TestFailDetail fail : fails) { List list = testFailDetails.get(fail.getTestRunId()); @@ -1767,7 +1768,7 @@ static void populateLeaks(RunDetail[] runs) { List leaks = new ArrayList<>(); Collections.addAll(leaks, new TableSelector(TestResultsSchema.getTableInfoMemoryLeaks(), filter, null).getArray(TestMemoryLeakDetail.class)); Collections.addAll(leaks, new TableSelector(TestResultsSchema.getTableInfoHandleLeaks(), filter, null).getArray(TestHandleLeakDetail.class)); - Map> testLeakDetails = new HashMap<>(); + Map> testLeakDetails = new IntHashMap<>(); for (TestLeakDetail leak : leaks) { List list = testLeakDetails.get(leak.getTestRunId()); @@ -1792,7 +1793,7 @@ static void populateHangs(RunDetail[] runs) SimpleFilter filter = filterByRunId(runs); TestHangDetail[] hangs = new TableSelector(TestResultsSchema.getTableInfoHangs(), filter, null).getArray(TestHangDetail.class); - Map testHangDetails = new HashMap<>(); + Map testHangDetails = new IntHashMap<>(); for (TestHangDetail hang : hangs) { testHangDetails.put(hang.getTestRunId(), hang); diff --git a/testresults/src/org/labkey/testresults/view/RunDownBean.java b/testresults/src/org/labkey/testresults/view/RunDownBean.java index 2220f1c2..7027bfcd 100644 --- a/testresults/src/org/labkey/testresults/view/RunDownBean.java +++ b/testresults/src/org/labkey/testresults/view/RunDownBean.java @@ -2,6 +2,7 @@ import org.apache.commons.lang3.ArrayUtils; import org.json.JSONObject; +import org.labkey.api.collections.IntHashMap; import org.labkey.api.data.statistics.MathStat; import org.labkey.api.data.statistics.StatsService; import org.labkey.api.services.ServiceRegistry; @@ -192,8 +193,8 @@ public JSONObject getTodaysCompactMemoryJson(Date day) throws Exception } } - Map> allPassPointsMap = new HashMap<>(); - Map averagePassPointMap = new HashMap<>(); + Map> allPassPointsMap = new IntHashMap<>(); + Map averagePassPointMap = new IntHashMap<>(); for (Map.Entry entry : points.entrySet()) { if (entry.getValue().length ==0)