diff --git a/code/services-application/api-service/java/nu/marginalia/api/ApiMain.java b/code/services-application/api-service/java/nu/marginalia/api/ApiMain.java index 3eef045a..dd2b739f 100644 --- a/code/services-application/api-service/java/nu/marginalia/api/ApiMain.java +++ b/code/services-application/api-service/java/nu/marginalia/api/ApiMain.java @@ -4,6 +4,7 @@ import com.google.inject.Guice; import com.google.inject.Inject; import com.google.inject.Injector; import nu.marginalia.service.MainClass; +import nu.marginalia.service.discovery.ServiceRegistryIf; import nu.marginalia.service.module.ServiceDiscoveryModule; import nu.marginalia.service.ServiceId; import nu.marginalia.service.module.ServiceConfigurationModule; @@ -23,6 +24,10 @@ public class ApiMain extends MainClass { new DatabaseModule(false), new ServiceDiscoveryModule(), new ServiceConfigurationModule(ServiceId.Api)); + + // Ensure that the service registry is initialized early + injector.getInstance(ServiceRegistryIf.class); + injector.getInstance(ApiMain.class); injector.getInstance(Initialization.class).setReady(); } diff --git a/code/services-application/dating-service/java/nu/marginalia/dating/DatingMain.java b/code/services-application/dating-service/java/nu/marginalia/dating/DatingMain.java index cf85016b..3b0655f8 100644 --- a/code/services-application/dating-service/java/nu/marginalia/dating/DatingMain.java +++ b/code/services-application/dating-service/java/nu/marginalia/dating/DatingMain.java @@ -4,6 +4,7 @@ import com.google.inject.Guice; import com.google.inject.Inject; import com.google.inject.Injector; import nu.marginalia.service.MainClass; +import nu.marginalia.service.discovery.ServiceRegistryIf; import nu.marginalia.service.module.ServiceDiscoveryModule; import nu.marginalia.service.ServiceId; import nu.marginalia.service.module.ServiceConfigurationModule; @@ -31,6 +32,9 @@ public class DatingMain extends MainClass { new DatabaseModule(false) ); + // Ensure that the service registry is initialized early + injector.getInstance(ServiceRegistryIf.class); + injector.getInstance(DatingMain.class); injector.getInstance(Initialization.class).setReady(); } diff --git a/code/services-application/explorer-service/java/nu/marginalia/explorer/ExplorerMain.java b/code/services-application/explorer-service/java/nu/marginalia/explorer/ExplorerMain.java index 5a1fd734..a6b7b4fe 100644 --- a/code/services-application/explorer-service/java/nu/marginalia/explorer/ExplorerMain.java +++ b/code/services-application/explorer-service/java/nu/marginalia/explorer/ExplorerMain.java @@ -4,6 +4,7 @@ import com.google.inject.Guice; import com.google.inject.Inject; import com.google.inject.Injector; import nu.marginalia.service.MainClass; +import nu.marginalia.service.discovery.ServiceRegistryIf; import nu.marginalia.service.module.ServiceDiscoveryModule; import nu.marginalia.service.ServiceId; import nu.marginalia.service.module.ServiceConfigurationModule; @@ -31,6 +32,9 @@ public class ExplorerMain extends MainClass { new DatabaseModule(false) ); + // Ensure that the service registry is initialized early + injector.getInstance(ServiceRegistryIf.class); + injector.getInstance(ExplorerMain.class); injector.getInstance(Initialization.class).setReady(); } diff --git a/code/services-application/search-service/java/nu/marginalia/search/SearchMain.java b/code/services-application/search-service/java/nu/marginalia/search/SearchMain.java index 01350592..b93d641b 100644 --- a/code/services-application/search-service/java/nu/marginalia/search/SearchMain.java +++ b/code/services-application/search-service/java/nu/marginalia/search/SearchMain.java @@ -4,6 +4,7 @@ import com.google.inject.Guice; import com.google.inject.Inject; import com.google.inject.Injector; import nu.marginalia.service.MainClass; +import nu.marginalia.service.discovery.ServiceRegistryIf; import nu.marginalia.service.module.ServiceDiscoveryModule; import nu.marginalia.service.ServiceId; import nu.marginalia.service.module.ServiceConfigurationModule; @@ -32,6 +33,9 @@ public class SearchMain extends MainClass { new DatabaseModule(false) ); + // Ensure that the service registry is initialized early + injector.getInstance(ServiceRegistryIf.class); + injector.getInstance(SearchMain.class); injector.getInstance(Initialization.class).setReady(); diff --git a/code/services-core/assistant-service/java/nu/marginalia/assistant/AssistantMain.java b/code/services-core/assistant-service/java/nu/marginalia/assistant/AssistantMain.java index 1f583587..cf3606b2 100644 --- a/code/services-core/assistant-service/java/nu/marginalia/assistant/AssistantMain.java +++ b/code/services-core/assistant-service/java/nu/marginalia/assistant/AssistantMain.java @@ -4,6 +4,7 @@ import com.google.inject.Guice; import com.google.inject.Inject; import com.google.inject.Injector; import nu.marginalia.service.MainClass; +import nu.marginalia.service.discovery.ServiceRegistryIf; import nu.marginalia.service.module.ServiceDiscoveryModule; import nu.marginalia.service.ServiceId; import nu.marginalia.service.module.ServiceConfigurationModule; @@ -28,6 +29,10 @@ public class AssistantMain extends MainClass { new DatabaseModule(false) ); + + // Ensure that the service registry is initialized early + injector.getInstance(ServiceRegistryIf.class); + injector.getInstance(AssistantMain.class); injector.getInstance(Initialization.class).setReady(); diff --git a/code/services-core/control-service/java/nu/marginalia/control/ControlMain.java b/code/services-core/control-service/java/nu/marginalia/control/ControlMain.java index 6946f8d6..f329f4d5 100644 --- a/code/services-core/control-service/java/nu/marginalia/control/ControlMain.java +++ b/code/services-core/control-service/java/nu/marginalia/control/ControlMain.java @@ -4,6 +4,7 @@ import com.google.inject.Guice; import com.google.inject.Inject; import com.google.inject.Injector; import nu.marginalia.service.MainClass; +import nu.marginalia.service.discovery.ServiceRegistryIf; import nu.marginalia.service.module.ServiceDiscoveryModule; import nu.marginalia.service.ServiceId; import nu.marginalia.service.module.ServiceConfigurationModule; @@ -25,6 +26,9 @@ public class ControlMain extends MainClass { new ServiceDiscoveryModule(), new ServiceConfigurationModule(ServiceId.Control)); + // Ensure that the service registry is initialized early + injector.getInstance(ServiceRegistryIf.class); + injector.getInstance(ControlMain.class); injector.getInstance(Initialization.class).setReady(); } diff --git a/code/services-core/executor-service/java/nu/marginalia/executor/ExecutorMain.java b/code/services-core/executor-service/java/nu/marginalia/executor/ExecutorMain.java index 1e524bca..e3d308fe 100644 --- a/code/services-core/executor-service/java/nu/marginalia/executor/ExecutorMain.java +++ b/code/services-core/executor-service/java/nu/marginalia/executor/ExecutorMain.java @@ -4,6 +4,7 @@ import com.google.inject.Guice; import com.google.inject.Inject; import com.google.inject.Injector; import nu.marginalia.service.MainClass; +import nu.marginalia.service.discovery.ServiceRegistryIf; import nu.marginalia.service.module.ServiceDiscoveryModule; import nu.marginalia.service.ServiceId; import nu.marginalia.service.module.DatabaseModule; @@ -28,8 +29,11 @@ public class ExecutorMain extends MainClass { new ServiceDiscoveryModule(), new ServiceConfigurationModule(ServiceId.Executor) ); - injector.getInstance(NodeStatusWatcher.class); + // Ensure that the service registry is initialized early + injector.getInstance(ServiceRegistryIf.class); + + injector.getInstance(NodeStatusWatcher.class); injector.getInstance(ExecutorMain.class); injector.getInstance(Initialization.class).setReady(); } diff --git a/code/services-core/index-service/java/nu/marginalia/index/IndexMain.java b/code/services-core/index-service/java/nu/marginalia/index/IndexMain.java index a159ca63..cfde8004 100644 --- a/code/services-core/index-service/java/nu/marginalia/index/IndexMain.java +++ b/code/services-core/index-service/java/nu/marginalia/index/IndexMain.java @@ -4,6 +4,7 @@ import com.google.inject.Guice; import com.google.inject.Inject; import com.google.inject.Injector; import nu.marginalia.service.MainClass; +import nu.marginalia.service.discovery.ServiceRegistryIf; import nu.marginalia.service.module.ServiceDiscoveryModule; import nu.marginalia.service.ServiceId; import nu.marginalia.service.module.ServiceConfigurationModule; @@ -29,6 +30,9 @@ public class IndexMain extends MainClass { new ServiceConfigurationModule(ServiceId.Index) ); + // Ensure that the service registry is initialized early + injector.getInstance(ServiceRegistryIf.class); + injector.getInstance(NodeStatusWatcher.class); injector.getInstance(IndexMain.class); diff --git a/code/services-core/query-service/java/nu/marginalia/query/QueryMain.java b/code/services-core/query-service/java/nu/marginalia/query/QueryMain.java index f08491cd..8d0c1972 100644 --- a/code/services-core/query-service/java/nu/marginalia/query/QueryMain.java +++ b/code/services-core/query-service/java/nu/marginalia/query/QueryMain.java @@ -4,6 +4,7 @@ import com.google.inject.Guice; import com.google.inject.Inject; import com.google.inject.Injector; import nu.marginalia.service.MainClass; +import nu.marginalia.service.discovery.ServiceRegistryIf; import nu.marginalia.service.module.ServiceDiscoveryModule; import nu.marginalia.service.ServiceId; import nu.marginalia.service.module.ServiceConfigurationModule; @@ -28,6 +29,9 @@ public class QueryMain extends MainClass { new ServiceConfigurationModule(ServiceId.Query) ); + // Ensure that the service registry is initialized early + injector.getInstance(ServiceRegistryIf.class); + injector.getInstance(QueryMain.class); injector.getInstance(Initialization.class).setReady(); }