### Eclipse Workspace Patch 1.0
#P jackrabbit-core
Index: src/main/java/org/apache/jackrabbit/core/observation/ObservationManagerImpl.java
===================================================================
--- src/main/java/org/apache/jackrabbit/core/observation/ObservationManagerImpl.java (revision 831906)
+++ src/main/java/org/apache/jackrabbit/core/observation/ObservationManagerImpl.java (working copy)
@@ -87,19 +87,22 @@
* belongs to.
* @param itemMgr {@link org.apache.jackrabbit.core.ItemManager} of the passed
* Session.
- * @throws NullPointerException if session or itemMgr
- * is null.
+ * @throws NullPointerException if dispatcher, session
+ * or itemMgr is null.
*/
public ObservationManagerImpl(
ObservationDispatcher dispatcher, SessionImpl session,
ItemManager itemMgr, ClusterNode clusterNode) {
+ if (dispatcher == null) {
+ throw new NullPointerException("dispatcher");
+ }
if (session == null) {
throw new NullPointerException("session");
}
if (itemMgr == null) {
throw new NullPointerException("itemMgr");
}
-
+
this.dispatcher = dispatcher;
this.session = session;
this.itemMgr = itemMgr;
Index: src/main/java/org/apache/jackrabbit/core/RepositoryImpl.java
===================================================================
--- src/main/java/org/apache/jackrabbit/core/RepositoryImpl.java (revision 831906)
+++ src/main/java/org/apache/jackrabbit/core/RepositoryImpl.java (working copy)
@@ -381,8 +381,13 @@
throw e;
} finally {
if (!succeeded) {
- // repository startup failed, clean up...
- shutdown();
+ try {
+ // repository startup failed, clean up...
+ shutdown();
+ } catch (Throwable t) {
+ // shutdown() likely to fail now, as startup was broken...
+ log.error("In addition to startup fail, another problem occurred while shutting down the repository again.", t);
+ }
}
}
}