From df7047065d885ddd657081afa344211c69eba8ce Mon Sep 17 00:00:00 2001 From: jeb228 Date: Thu, 16 Dec 2010 20:44:17 +0000 Subject: [PATCH] NIHVIVO-719 set names on all created Threads, to help in diagnosing memory leaks. --- .../mannlib/vitro/webapp/controller/BrowseController.java | 1 + .../vitro/webapp/dao/jena/MemToRDBModelSynchronizer.java | 4 ++-- .../mannlib/vitro/webapp/dao/jena/VClassGroupCache.java | 1 + .../mannlib/vitro/webapp/dao/jena/pellet/PelletListener.java | 4 ++-- .../mannlib/vitro/webapp/utils/jena/SesameSyncUtils.java | 3 +-- 5 files changed, 7 insertions(+), 6 deletions(-) diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/controller/BrowseController.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/controller/BrowseController.java index b9e1cb572..77ab06f0b 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/controller/BrowseController.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/controller/BrowseController.java @@ -275,6 +275,7 @@ public class BrowseController extends VitroHttpServlet { private boolean awareOfQueueChange = false; RebuildGroupCacheThread(BrowseController controller) { + super("RebuildGroupCacheThread"); this.controller = controller; } public void run() { diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/jena/MemToRDBModelSynchronizer.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/jena/MemToRDBModelSynchronizer.java index e951949c4..bc86ee503 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/jena/MemToRDBModelSynchronizer.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/jena/MemToRDBModelSynchronizer.java @@ -49,7 +49,7 @@ public class MemToRDBModelSynchronizer extends StatementListener { lastEditTimeMillis = System.currentTimeMillis(); this.editInProgress = false; if (!cleanupThreadActive) { - (new Thread(new Cleanup(this))).start(); + (new Thread(new Cleanup(this), "MemToRDBModelSynchronizer")).start(); } } } @@ -63,7 +63,7 @@ public class MemToRDBModelSynchronizer extends StatementListener { lastEditTimeMillis = System.currentTimeMillis(); this.editInProgress = false; if (!cleanupThreadActive) { - (new Thread(new Cleanup(this))).start(); + (new Thread(new Cleanup(this), "MemToRDBModelSynchronizer")).start(); } } } diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/jena/VClassGroupCache.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/jena/VClassGroupCache.java index 61e8b9bf2..c57c58910 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/jena/VClassGroupCache.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/jena/VClassGroupCache.java @@ -282,6 +282,7 @@ public class VClassGroupCache implements ServletContextListener{ private boolean awareOfQueueChange = false; RebuildGroupCacheThread(VClassGroupCache cache) { + super("VClassGroupCache.RebuildGroupCacheThread"); this.cache = cache; } public void run() { diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/jena/pellet/PelletListener.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/jena/pellet/PelletListener.java index ddc95eb23..8272acf26 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/jena/pellet/PelletListener.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/dao/jena/pellet/PelletListener.java @@ -428,7 +428,7 @@ public class PelletListener implements ModelChangedListener { if (foreground) { (new InferenceGetter(this)).run(); } else { - new Thread(new InferenceGetter(this)).start(); + new Thread(new InferenceGetter(this), "PelletListener.InferenceGetter").start(); } } } @@ -625,7 +625,7 @@ public class PelletListener implements ModelChangedListener { if (foreground) { (new PelletSynchronizer()).run(); } else { - new Thread(new PelletSynchronizer()).start(); + new Thread(new PelletSynchronizer(), "PelletListener.PelletSynchronizer").start(); } } } diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/utils/jena/SesameSyncUtils.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/utils/jena/SesameSyncUtils.java index f5b166f69..96ef68acc 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/utils/jena/SesameSyncUtils.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/utils/jena/SesameSyncUtils.java @@ -14,7 +14,6 @@ import org.openrdf.model.impl.URIImpl; import org.openrdf.repository.Repository; import org.openrdf.repository.RepositoryConnection; import org.openrdf.repository.RepositoryException; -import org.openrdf.repository.RepositoryResult; import org.openrdf.repository.http.HTTPRepository; import org.openrdf.rio.RDFFormat; import org.openrdf.rio.RDFParseException; @@ -47,7 +46,7 @@ public class SesameSyncUtils { PipedInputStream in = new PipedInputStream(); PipedOutputStream out = new PipedOutputStream(in); try { - new Thread((new JenaOutputter(jenaModel, out))).start(); + new Thread(new JenaOutputter(jenaModel, out), "SesameSyncUtilities.JenaOutputter").start(); if (contextRes != null) { myConn.add(in,"http://example.org/base/", RDFFormat.NTRIPLES, contextRes); } else {