You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2018/09/21 05:13:27 UTC

[isis] 02/02: ISIS-1974: attempts to track down deadlock in validate

This is an automated email from the ASF dual-hosted git repository.

danhaywood pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git

commit 5d5c3e2a73db15e7f89c86b9865b25a3b8e42578
Author: danhaywood <da...@haywood-associates.co.uk>
AuthorDate: Fri Sep 21 07:12:49 2018 +0200

    ISIS-1974: attempts to track down deadlock in validate
    
    Bootstraps validate plugin in DEBUG mode; switch specification loader to
    run sequentially
---
 .../main/java/org/apache/isis/tool/mavenplugin/IsisMojoAbstract.java  | 4 ++++
 .../apache/isis/core/metamodel/specloader/SpecificationLoader.java    | 2 +-
 2 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/core/maven-plugin/src/main/java/org/apache/isis/tool/mavenplugin/IsisMojoAbstract.java b/core/maven-plugin/src/main/java/org/apache/isis/tool/mavenplugin/IsisMojoAbstract.java
index 8e82b0a..bb8ad88 100644
--- a/core/maven-plugin/src/main/java/org/apache/isis/tool/mavenplugin/IsisMojoAbstract.java
+++ b/core/maven-plugin/src/main/java/org/apache/isis/tool/mavenplugin/IsisMojoAbstract.java
@@ -21,6 +21,7 @@ package org.apache.isis.tool.mavenplugin;
 import java.io.IOException;
 import java.util.Set;
 
+import org.apache.log4j.Level;
 import org.apache.maven.model.Plugin;
 import org.apache.maven.plugin.AbstractMojo;
 import org.apache.maven.plugin.MojoExecutionException;
@@ -33,6 +34,7 @@ import org.apache.maven.project.MavenProject;
 import org.apache.isis.applib.AppManifest;
 import org.apache.isis.core.commons.factory.InstanceUtil;
 import org.apache.isis.core.metamodel.specloader.validator.MetaModelInvalidException;
+import org.apache.isis.core.runtime.logging.IsisLoggingConfigurer;
 import org.apache.isis.core.runtime.system.context.IsisContext;
 import org.apache.isis.core.runtime.system.session.IsisSessionFactory;
 import org.apache.isis.core.runtime.system.session.IsisSessionFactoryBuilder;
@@ -53,6 +55,8 @@ public abstract class IsisMojoAbstract extends AbstractMojo {
 
     public void execute() throws MojoExecutionException, MojoFailureException {
 
+        new IsisLoggingConfigurer(Level.DEBUG).configureLogging(".", new String[]{});
+
         final ContextForMojo context = new ContextForMojo(mavenProject, getLog());
 
         final Plugin plugin = MavenProjects.lookupPlugin(mavenProject, CURRENT_PLUGIN_KEY);
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/SpecificationLoader.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/SpecificationLoader.java
index 7e52cf6..9ea3ef9 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/SpecificationLoader.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/SpecificationLoader.java
@@ -213,7 +213,7 @@ public class SpecificationLoader implements ApplicationScopedComponent {
             callables.add(callable);
         }
         ThreadPoolSupport threadPoolSupport = ThreadPoolSupport.getInstance();
-        List<Future<Object>> futures = threadPoolSupport.invokeAll(callables);
+        List<Future<Object>> futures = threadPoolSupport.invokeAllSequential(callables);
         threadPoolSupport.joinGatherFailures(futures);
 
     }