Uploaded image for project: 'JBoss Marshalling'
  1. JBoss Marshalling
  2. JBMAR-254

JVM crash when passing record to local EJB via remote interface

    XMLWordPrintable

Details

    • Hide

      Code

      public class MyClient {
        public static void main(String[] args) throws Throwable {
          System.setProperty(INITIAL_CONTEXT_FACTORY, org.wildfly.naming.client.WildFlyInitialContextFactory.class.getName());
          System.setProperty(PROVIDER_URL, "remote+http://localhost:8080");
          AuthenticationContext ctx = AuthenticationContext.empty().with(MatchRule.ALL, AuthenticationConfiguration.empty() //
              .useAuthorizationName("username") //
              .usePassword("password") //
          );
          ctx.runCallable(() -> {
            MyRemoteInterface1 session1 =
                InitialContext.doLookup("server/" + MyRemoteInterface1.NAME + "!" + MyRemoteInterface1.class.getName());
            MyRemoteInterface2 session2 =
                InitialContext.doLookup("server/" + MyRemoteInterface2.NAME + "!" + MyRemoteInterface2.class.getName());
      
            System.out.println(session1.myStringMethod1("Session1: Ping"));
            System.out.println(session2.myStringMethod2("Session2: Ping"));
            System.out.println(session1.myRecordMethod1(new MyRecord("Session1", "Ping")));
            System.out.println(session2.myRecordMethod2(new MyRecord("Session2", "Ping")));
      
            return null;
          });
        }
      }
      
      public record MyRecord(String title, String message) implements Serializable {
      }
      
      public interface MyRemoteInterface1 {
        String NAME = "MyRemoteInterface1";
      
        String myStringMethod1(String myString);
      
        MyRecord myRecordMethod1(MyRecord myRecord);
      }
      
      public interface MyRemoteInterface2 {
        String NAME = "MyRemoteInterface2";
      
        String myStringMethod2(String myString);
      
        MyRecord myRecordMethod2(MyRecord myRecord);
      }
      
      @Remote(MyRemoteInterface1.class)
      @Stateless(name = MyRemoteInterface1.NAME)
      @PermitAll
      public class MyEjb1 implements MyRemoteInterface1 {
        @Override
        public String myStringMethod1(String myString) {
          System.out.println("MyEjb1.myStringMethod1(" + myString + ") enter");
          String result = "MyEjb1: Pong";
          System.out.println("MyEjb1.myStringMethod1(" + myString + ") exit");
          return result;
        }
      
        @Override
        public MyRecord myRecordMethod1(MyRecord myRecord) {
          System.out.println("MyEjb1.myRecordMethod1(" + myRecord + ") enter");
          MyRecord result = new MyRecord("MyEjb1", "Pong");
          System.out.println("MyEjb1.myRecordMethod1(" + myRecord + ") exit");
          return result;
        }
      }
      
      @Remote(MyRemoteInterface2.class)
      @Stateless(name = MyRemoteInterface2.NAME)
      @PermitAll
      public class MyEjb2 implements MyRemoteInterface2 {
        @EJB
        private MyRemoteInterface1 ejb2;
      
        @Override
        public String myStringMethod2(String myString) {
          System.out.println("MyEjb2.myStringMethod2(" + myString + ") enter");
          String result = ejb2.myStringMethod1(myString);
          System.out.println("MyEjb2.myStringMethod2(" + myString + ") exit");
          return result;
        }
      
        @Override
        public MyRecord myRecordMethod2(MyRecord myRecord) {
          System.out.println("MyEjb2.myRecordMethod2(" + myRecord + ") enter");
          MyRecord result = ejb2.myRecordMethod1(myRecord);
          System.out.println("MyEjb2.myRecordMethod2(" + myRecord + ") exit");
          return result;
        }
      }
      

      Client Output

      Aug. 14, 2023 3:18:11 PM org.wildfly.security.Version <clinit>
      INFO: ELY00001: WildFly Elytron version 2.2.1.Final
      Aug. 14, 2023 3:18:11 PM org.wildfly.naming.client.Version <clinit>
      INFO: WildFly Naming version 2.0.1.Final
      Aug. 14, 2023 3:18:11 PM org.xnio.Xnio <clinit>
      INFO: XNIO version 3.8.9.Final
      Aug. 14, 2023 3:18:11 PM org.xnio.nio.NioXnio <clinit>
      INFO: XNIO NIO Implementation Version 3.8.9.Final
      Aug. 14, 2023 3:18:11 PM org.jboss.threads.Version <clinit>
      INFO: JBoss Threads version 2.4.0.Final
      Aug. 14, 2023 3:18:11 PM org.jboss.remoting3.EndpointImpl <clinit>
      INFO: JBoss Remoting version 5.0.27.Final
      MyEjb1: Pong
      MyEjb1: Pong
      MyRecord[title=MyEjb1, message=Pong]
      Exception in thread "main" jakarta.ejb.EJBException: IO channel timed out or closed. Check server endpoint read or write timeout settings
              at org.jboss.ejb.protocol.remote.EJBClientChannel$MethodInvocation.handleClosed(EJBClientChannel.java:1288)
              at org.jboss.remoting3.util.InvocationTracker.connectionClosed(InvocationTracker.java:222)
              at org.jboss.remoting3.util.InvocationTracker.lambda$new$0(InvocationTracker.java:70)
              at org.jboss.remoting3.spi.SpiUtils.safeHandleClose(SpiUtils.java:50)
              at org.jboss.remoting3.spi.AbstractHandleableCloseable$CloseHandlerTask.run(AbstractHandleableCloseable.java:520)
              at org.jboss.remoting3.spi.AbstractHandleableCloseable.runCloseTask(AbstractHandleableCloseable.java:425)
              at org.jboss.remoting3.spi.AbstractHandleableCloseable.closeComplete(AbstractHandleableCloseable.java:286)
              at org.jboss.remoting3.remote.RemoteConnectionChannel.closeAction(RemoteConnectionChannel.java:510)
              at org.jboss.remoting3.spi.AbstractHandleableCloseable.closeAsync(AbstractHandleableCloseable.java:368)
              at org.jboss.remoting3.remote.RemoteConnectionHandler.closeAllChannels(RemoteConnectionHandler.java:623)
              at org.jboss.remoting3.remote.RemoteConnectionHandler.receiveCloseRequest(RemoteConnectionHandler.java:226)
              at org.jboss.remoting3.remote.RemoteConnectionHandler.handleConnectionClose(RemoteConnectionHandler.java:123)
              at org.jboss.remoting3.remote.RemoteReadListener.lambda$null$0(RemoteReadListener.java:67)
              at org.jboss.remoting3.EndpointImpl$TrackingExecutor.lambda$execute$0(EndpointImpl.java:993)
              at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
              at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1990)
              at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1486)
              at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1377)
              at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
              at java.base/java.lang.Thread.run(Thread.java:833)
      Caused by: java.nio.channels.ClosedChannelException
              ... 20 more
      

      Server Output

      Calling "C:\wildfly-record-bug2\server\build\wildfly\wildfly-29.0.0.Final\bin\standalone.conf.bat"
      Setting JAVA property to "C:\Devel\tools\java\jdk-17.0.8+7\bin\java"
      ===============================================================================
      
        JBoss Bootstrap Environment
      
        JBOSS_HOME: "C:\wildfly-record-bug2\server\build\wildfly\wildfly-29.0.0.Final"
      
        JAVA: "C:\Devel\tools\java\jdk-17.0.8+7\bin\java"
      
        JAVA_OPTS: "-Dprogram.name=standalone.bat -Xms64M -Xmx512M -XX:MetaspaceSize=96M -XX:MaxMetaspaceSize=256m -Djava.net.preferIPv4Stack=true -Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true  --add-exports=java.desktop/sun.awt=ALL-UNNAMED --add-exports=java.naming/com.sun.jndi.ldap=ALL-UNNAMED --add-exports=java.naming/com.sun.jndi.url.ldap=ALL-UNNAMED --add-exports=java.naming/com.sun.jndi.url.ldaps=ALL-UNNAMED --add-exports=jdk.naming.dns/com.sun.jndi.dns=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.base/java.lang.reflect=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.security=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.management/javax.management=ALL-UNNAMED --add-opens=java.naming/javax.naming=ALL-UNNAMED -Djava.security.manager=allow"
      
      ===============================================================================
      
      15:17:56,415 INFO  [org.jboss.modules] (main) JBoss Modules version 2.1.0.Final
      15:17:56,718 INFO  [org.jboss.msc] (main) JBoss MSC version 1.5.1.Final
      15:17:56,724 INFO  [org.jboss.threads] (main) JBoss Threads version 2.4.0.Final
      15:17:56,796 INFO  [org.jboss.as] (MSC service thread 1-3) WFLYSRV0049: WildFly Full 29.0.0.Final (WildFly Core 21.1.0.Final) starting
      15:17:57,241 INFO  [org.wildfly.security] (ServerService Thread Pool -- 28) ELY00001: WildFly Elytron version 2.2.1.Final
      15:17:57,579 INFO  [org.jboss.as.controller.management-deprecated] (ServerService Thread Pool -- 15) WFLYCTL0028: Attribute 'cluster' in the resource at address '/subsystem=ejb3/service=remote' is deprecated, and may be removed in a future version. See the attribute description in the output of the read-resource-description operation to learn more about the deprecation.
      15:17:57,617 INFO  [org.jboss.as.server] (Controller Boot Thread) WFLYSRV0039: Creating http management service using socket-binding (management-http)
      15:17:57,629 INFO  [org.xnio] (MSC service thread 1-5) XNIO version 3.8.9.Final
      15:17:57,633 INFO  [org.xnio.nio] (MSC service thread 1-5) XNIO NIO Implementation Version 3.8.9.Final
      15:17:57,653 INFO  [org.jboss.as.jaxrs] (ServerService Thread Pool -- 57) WFLYRS0016: RESTEasy version 6.2.4.Final
      15:17:57,656 INFO  [org.wildfly.extension.elytron.oidc._private] (ServerService Thread Pool -- 53) WFLYOIDC0001: Activating WildFly Elytron OIDC Subsystem
      15:17:57,657 INFO  [org.jboss.as.clustering.infinispan] (ServerService Thread Pool -- 55) WFLYCLINF0001: Activating Infinispan subsystem.
      15:17:57,660 INFO  [org.wildfly.extension.health] (ServerService Thread Pool -- 54) WFLYHEALTH0001: Activating Base Health Subsystem
      15:17:57,660 INFO  [org.wildfly.extension.microprofile.jwt.smallrye] (ServerService Thread Pool -- 66) WFLYJWT0001: Activating MicroProfile JWT Subsystem
      15:17:57,660 WARN  [org.jboss.as.txn] (ServerService Thread Pool -- 74) WFLYTX0013: The node-identifier attribute on the /subsystem=transactions is set to the default value. This is a danger for environments running multiple servers. Please make sure the attribute value is unique.
      15:17:57,667 INFO  [org.jboss.as.naming] (ServerService Thread Pool -- 67) WFLYNAM0001: Activating Naming Subsystem
      15:17:57,673 INFO  [org.wildfly.extension.microprofile.config.smallrye] (ServerService Thread Pool -- 65) WFLYCONF0001: Activating MicroProfile Config Subsystem
      15:17:57,677 INFO  [org.jboss.as.jsf] (ServerService Thread Pool -- 62) WFLYJSF0007: Activated the following Jakarta Server Faces Implementations: [main]
      15:17:57,689 INFO  [org.wildfly.extension.metrics] (ServerService Thread Pool -- 64) WFLYMETRICS0001: Activating Base Metrics Subsystem
      15:17:57,711 INFO  [org.jboss.as.webservices] (ServerService Thread Pool -- 76) WFLYWS0002: Activating WebServices Extension
      15:17:57,720 INFO  [org.jboss.as.connector] (MSC service thread 1-1) WFLYJCA0009: Starting Jakarta Connectors Subsystem (WildFly/IronJacamar 3.0.3.Final)
      15:17:57,736 INFO  [org.jboss.as.connector.subsystems.datasources] (ServerService Thread Pool -- 44) WFLYJCA0004: Deploying JDBC-compliant driver class org.h2.Driver (version 2.1)
      15:17:57,737 INFO  [org.wildfly.extension.undertow] (MSC service thread 1-4) WFLYUT0003: Undertow 2.3.7.Final starting
      15:17:57,751 INFO  [org.jboss.as.naming] (MSC service thread 1-7) WFLYNAM0003: Starting Naming Service
      15:17:57,752 INFO  [org.jboss.as.connector.deployers.jdbc] (MSC service thread 1-4) WFLYJCA0018: Started Driver service with driver-name = h2
      15:17:57,752 INFO  [org.jboss.as.mail.extension] (MSC service thread 1-4) WFLYMAIL0001: Bound mail session [java:jboss/mail/Default]
      15:17:57,756 INFO  [org.wildfly.extension.io] (ServerService Thread Pool -- 56) WFLYIO001: Worker 'default' has auto-configured to 16 IO threads with 128 max task threads based on your 8 available processors
      15:17:57,766 WARN  [org.wildfly.extension.elytron] (MSC service thread 1-8) WFLYELY00023: KeyStore file 'C:\wildfly-record-bug2\server\build\wildfly\wildfly-29.0.0.Final\standalone\configuration\application.keystore' does not exist. Used blank.
      15:17:57,801 WARN  [org.wildfly.extension.elytron] (MSC service thread 1-6) WFLYELY01084: KeyStore C:\wildfly-record-bug2\server\build\wildfly\wildfly-29.0.0.Final\standalone\configuration\application.keystore not found, it will be auto-generated on first use with a self-signed certificate for host localhost
      15:17:57,820 INFO  [org.jboss.remoting] (MSC service thread 1-4) JBoss Remoting version 5.0.27.Final
      15:17:57,821 INFO  [org.wildfly.extension.undertow] (ServerService Thread Pool -- 75) WFLYUT0014: Creating file handler for path 'C:\wildfly-record-bug2\server\build\wildfly\wildfly-29.0.0.Final/welcome-content' with options [directory-listing: 'false', follow-symlink: 'false', case-sensitive: 'true', safe-symlink-paths: '[]']
      15:17:57,855 INFO  [org.wildfly.extension.undertow] (MSC service thread 1-8) WFLYUT0012: Started server default-server.
      15:17:57,858 INFO  [org.jboss.as.ejb3] (MSC service thread 1-7) WFLYEJB0481: Strict pool slsb-strict-max-pool is using a max instance size of 128 (per class), which is derived from thread worker pool sizing.
      15:17:57,858 INFO  [org.jboss.as.ejb3] (MSC service thread 1-2) WFLYEJB0482: Strict pool mdb-strict-max-pool is using a max instance size of 32 (per class), which is derived from the number of CPUs on this host.
      15:17:57,860 INFO  [org.wildfly.extension.undertow] (MSC service thread 1-1) Queuing requests.
      15:17:57,864 INFO  [org.wildfly.extension.undertow] (MSC service thread 1-1) WFLYUT0018: Host default-host starting
      15:17:57,901 INFO  [org.wildfly.extension.undertow] (MSC service thread 1-5) WFLYUT0006: Undertow HTTP listener default listening on 127.0.0.1:8080
      15:17:57,996 INFO  [org.wildfly.extension.undertow] (MSC service thread 1-6) WFLYUT0006: Undertow HTTPS listener https listening on 127.0.0.1:8443
      15:17:58,025 INFO  [org.jboss.as.ejb3] (MSC service thread 1-3) WFLYEJB0493: Jakarta Enterprise Beans subsystem suspension complete
      15:17:58,032 INFO  [org.jboss.as.server.deployment.scanner] (MSC service thread 1-8) WFLYDS0013: Started FileSystemDeploymentService for directory C:\wildfly-record-bug2\server\build\wildfly\wildfly-29.0.0.Final\standalone\deployments
      15:17:58,058 INFO  [org.jboss.as.connector.subsystems.datasources] (MSC service thread 1-4) WFLYJCA0001: Bound data source [java:jboss/datasources/ExampleDS]
      15:17:58,075 INFO  [org.jboss.ws.common.management] (MSC service thread 1-6) JBWS022052: Starting JBossWS 6.2.0.Final (Apache CXF 4.0.0) 
      15:17:58,138 INFO  [org.jboss.as.server] (Controller Boot Thread) WFLYSRV0212: Resuming server
      15:17:58,141 INFO  [org.jboss.as] (Controller Boot Thread) WFLYSRV0060: Http management interface listening on http://127.0.0.1:9990/management
      15:17:58,141 INFO  [org.jboss.as] (Controller Boot Thread) WFLYSRV0051: Admin console listening on http://127.0.0.1:9990
      15:17:58,142 INFO  [org.jboss.as] (Controller Boot Thread) WFLYSRV0025: WildFly Full 29.0.0.Final (WildFly Core 21.1.0.Final) started in 1947ms - Started 280 of 522 services (317 services are lazy, passive or on-demand) - Server configuration file in use: standalone.xml
      15:18:03,121 INFO  [org.jboss.as.repository] (management-handler-thread - 1) WFLYDR0001: Content added at location C:\wildfly-record-bug2\server\build\wildfly\wildfly-29.0.0.Final\standalone\data\content\3d\0b362bc035e944a0702fafdabb3b0427a1c10b\content
      15:18:03,137 INFO  [org.jboss.as.server.deployment] (MSC service thread 1-6) WFLYSRV0027: Starting deployment of "server.war" (runtime-name: "server.war")
      15:18:04,059 INFO  [org.jboss.weld.deployer] (MSC service thread 1-5) WFLYWELD0003: Processing weld deployment server.war
      15:18:04,130 INFO  [org.hibernate.validator.internal.util.Version] (MSC service thread 1-5) HV000001: Hibernate Validator 8.0.0.Final
      15:18:04,237 INFO  [org.jboss.as.ejb3.deployment] (MSC service thread 1-5) WFLYEJB0473: JNDI bindings for session bean named 'MyRemoteInterface2' in deployment unit 'deployment "server.war"' are as follows:
      
      	java:global/server/MyRemoteInterface2!org.wildfly.bug.record.interfaces.MyRemoteInterface2
      	java:app/server/MyRemoteInterface2!org.wildfly.bug.record.interfaces.MyRemoteInterface2
      	java:module/MyRemoteInterface2!org.wildfly.bug.record.interfaces.MyRemoteInterface2
      	java:jboss/exported/server/MyRemoteInterface2!org.wildfly.bug.record.interfaces.MyRemoteInterface2
      	ejb:/server/MyRemoteInterface2!org.wildfly.bug.record.interfaces.MyRemoteInterface2
      	java:global/server/MyRemoteInterface2
      	java:app/server/MyRemoteInterface2
      	java:module/MyRemoteInterface2
      
      15:18:04,237 INFO  [org.jboss.as.ejb3.deployment] (MSC service thread 1-5) WFLYEJB0473: JNDI bindings for session bean named 'MyRemoteInterface1' in deployment unit 'deployment "server.war"' are as follows:
      
      	java:global/server/MyRemoteInterface1!org.wildfly.bug.record.interfaces.MyRemoteInterface1
      	java:app/server/MyRemoteInterface1!org.wildfly.bug.record.interfaces.MyRemoteInterface1
      	java:module/MyRemoteInterface1!org.wildfly.bug.record.interfaces.MyRemoteInterface1
      	java:jboss/exported/server/MyRemoteInterface1!org.wildfly.bug.record.interfaces.MyRemoteInterface1
      	ejb:/server/MyRemoteInterface1!org.wildfly.bug.record.interfaces.MyRemoteInterface1
      	java:global/server/MyRemoteInterface1
      	java:app/server/MyRemoteInterface1
      	java:module/MyRemoteInterface1
      
      15:18:04,419 WARN  [org.jboss.as.jaxrs] (MSC service thread 1-5) WFLYRS0015: No Servlet declaration found for Jakarta RESTful Web Services application.  In server.war either provide a class that extends jakarta.ws.rs.core.Application or declare a servlet class in web.xml.
      15:18:04,437 INFO  [org.jboss.weld.Version] (MSC service thread 1-5) WELD-000900: 5.1.1 (SP1)
      15:18:05,023 INFO  [org.wildfly.security.soteria.original.SamRegistrationInstaller] (ServerService Thread Pool -- 3) Initializing Soteria 3.0.3.Final for context '/server'
      15:18:05,070 INFO  [jakarta.enterprise.resource.webcontainer.faces.config] (ServerService Thread Pool -- 3) Mojarra 4.0.2 f�r Kontext '/server' wird initialisiert.
      15:18:05,319 INFO  [org.wildfly.extension.undertow] (ServerService Thread Pool -- 3) WFLYUT0021: Registered web context: '/server' for server 'default-server'
      15:18:05,354 INFO  [org.jboss.as.server] (management-handler-thread - 1) WFLYSRV0010: Deployed "server.war" (runtime-name : "server.war")
      15:18:11,931 INFO  [org.wildfly.naming] (default task-1) WildFly Naming version 2.0.1.Final
      15:18:11,937 INFO  [org.jboss.ejb.client] (default task-2) JBoss EJB Client version 5.0.5.Final
      15:18:12,135 INFO  [stdout] (default task-2) MyEjb1.myStringMethod1(Session1: Ping) enter
      
      15:18:12,135 INFO  [stdout] (default task-2) MyEjb1.myStringMethod1(Session1: Ping) exit
      
      15:18:12,141 INFO  [stdout] (default task-2) MyEjb2.myStringMethod2(Session2: Ping) enter
      
      15:18:12,168 INFO  [stdout] (default task-2) MyEjb1.myStringMethod1(Session2: Ping) enter
      
      15:18:12,168 INFO  [stdout] (default task-2) MyEjb1.myStringMethod1(Session2: Ping) exit
      
      15:18:12,169 INFO  [stdout] (default task-2) MyEjb2.myStringMethod2(Session2: Ping) exit
      
      15:18:12,186 INFO  [stdout] (default task-2) MyEjb1.myRecordMethod1(MyRecord[title=Session1, message=Ping]) enter
      
      15:18:12,187 INFO  [stdout] (default task-2) MyEjb1.myRecordMethod1(MyRecord[title=Session1, message=Ping]) exit
      
      15:18:12,199 INFO  [stdout] (default task-2) MyEjb2.myRecordMethod2(MyRecord[title=Session2, message=Ping]) enter
      
      #
      # A fatal error has been detected by the Java Runtime Environment:
      #
      #  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x00000226bc5dcf4f, pid=6376, tid=15200
      #
      # JRE version: OpenJDK Runtime Environment Temurin-17.0.8+7 (17.0.8+7) (build 17.0.8+7)
      # Java VM: OpenJDK 64-Bit Server VM Temurin-17.0.8+7 (17.0.8+7, mixed mode, sharing, tiered, compressed oops, compressed class ptrs, g1 gc, windows-amd64)
      # Problematic frame:
      # J 4674 c2 java.util.IdentityHashMap.get(Ljava/lang/Object;)Ljava/lang/Object; java.base@17.0.8 (60 bytes) @ 0x00000226bc5dcf4f [0x00000226bc5dcf20+0x000000000000002f]
      #
      # No core dump will be written. Minidumps are not enabled by default on client versions of Windows
      #
      # An error report file with more information is saved as:
      # C:\wildfly-record-bug2\server\build\wildfly\wildfly-29.0.0.Final\bin\hs_err_pid6376.log
      Compiled method (c2)   16061 4674       4       java.util.IdentityHashMap::get (60 bytes)
       total in heap  [0x00000226bc5dcd90,0x00000226bc5dd288] = 1272
       relocation     [0x00000226bc5dcee8,0x00000226bc5dcf18] = 48
       main code      [0x00000226bc5dcf20,0x00000226bc5dd0e0] = 448
       stub code      [0x00000226bc5dd0e0,0x00000226bc5dd108] = 40
       metadata       [0x00000226bc5dd108,0x00000226bc5dd120] = 24
       scopes data    [0x00000226bc5dd120,0x00000226bc5dd1c0] = 160
       scopes pcs     [0x00000226bc5dd1c0,0x00000226bc5dd250] = 144
       dependencies   [0x00000226bc5dd250,0x00000226bc5dd258] = 8
       handler table  [0x00000226bc5dd258,0x00000226bc5dd270] = 24
       nul chk table  [0x00000226bc5dd270,0x00000226bc5dd288] = 24
      Compiled method (c2)   16069 4674       4       java.util.IdentityHashMap::get (60 bytes)
       total in heap  [0x00000226bc5dcd90,0x00000226bc5dd288] = 1272
       relocation     [0x00000226bc5dcee8,0x00000226bc5dcf18] = 48
       main code      [0x00000226bc5dcf20,0x00000226bc5dd0e0] = 448
       stub code      [0x00000226bc5dd0e0,0x00000226bc5dd108] = 40
       metadata       [0x00000226bc5dd108,0x00000226bc5dd120] = 24
       scopes data    [0x00000226bc5dd120,0x00000226bc5dd1c0] = 160
       scopes pcs     [0x00000226bc5dd1c0,0x00000226bc5dd250] = 144
       dependencies   [0x00000226bc5dd250,0x00000226bc5dd258] = 8
       handler table  [0x00000226bc5dd258,0x00000226bc5dd270] = 24
       nul chk table  [0x00000226bc5dd270,0x00000226bc5dd288] = 24
      #
      # If you would like to submit a bug report, please visit:
      #   https://github.com/adoptium/adoptium-support/issues
      #
      Dr�cken Sie eine beliebige Taste . . . 
      
      Show
      Code public class MyClient { public static void main( String [] args) throws Throwable { System .setProperty(INITIAL_CONTEXT_FACTORY, org.wildfly.naming.client.WildFlyInitialContextFactory. class. getName()); System .setProperty(PROVIDER_URL, "remote+http: //localhost:8080" ); AuthenticationContext ctx = AuthenticationContext.empty().with(MatchRule.ALL, AuthenticationConfiguration.empty() // .useAuthorizationName( "username" ) // .usePassword( "password" ) // ); ctx.runCallable(() -> { MyRemoteInterface1 session1 = InitialContext.doLookup( "server/" + MyRemoteInterface1.NAME + "!" + MyRemoteInterface1. class. getName()); MyRemoteInterface2 session2 = InitialContext.doLookup( "server/" + MyRemoteInterface2.NAME + "!" + MyRemoteInterface2. class. getName()); System .out.println(session1.myStringMethod1( "Session1: Ping" )); System .out.println(session2.myStringMethod2( "Session2: Ping" )); System .out.println(session1.myRecordMethod1( new MyRecord( "Session1" , "Ping" ))); System .out.println(session2.myRecordMethod2( new MyRecord( "Session2" , "Ping" ))); return null ; }); } } public record MyRecord( String title, String message) implements Serializable { } public interface MyRemoteInterface1 { String NAME = "MyRemoteInterface1" ; String myStringMethod1( String myString); MyRecord myRecordMethod1(MyRecord myRecord); } public interface MyRemoteInterface2 { String NAME = "MyRemoteInterface2" ; String myStringMethod2( String myString); MyRecord myRecordMethod2(MyRecord myRecord); } @Remote(MyRemoteInterface1.class) @Stateless(name = MyRemoteInterface1.NAME) @PermitAll public class MyEjb1 implements MyRemoteInterface1 { @Override public String myStringMethod1( String myString) { System .out.println( "MyEjb1.myStringMethod1(" + myString + ") enter" ); String result = "MyEjb1: Pong" ; System .out.println( "MyEjb1.myStringMethod1(" + myString + ") exit" ); return result; } @Override public MyRecord myRecordMethod1(MyRecord myRecord) { System .out.println( "MyEjb1.myRecordMethod1(" + myRecord + ") enter" ); MyRecord result = new MyRecord( "MyEjb1" , "Pong" ); System .out.println( "MyEjb1.myRecordMethod1(" + myRecord + ") exit" ); return result; } } @Remote(MyRemoteInterface2.class) @Stateless(name = MyRemoteInterface2.NAME) @PermitAll public class MyEjb2 implements MyRemoteInterface2 { @EJB private MyRemoteInterface1 ejb2; @Override public String myStringMethod2( String myString) { System .out.println( "MyEjb2.myStringMethod2(" + myString + ") enter" ); String result = ejb2.myStringMethod1(myString); System .out.println( "MyEjb2.myStringMethod2(" + myString + ") exit" ); return result; } @Override public MyRecord myRecordMethod2(MyRecord myRecord) { System .out.println( "MyEjb2.myRecordMethod2(" + myRecord + ") enter" ); MyRecord result = ejb2.myRecordMethod1(myRecord); System .out.println( "MyEjb2.myRecordMethod2(" + myRecord + ") exit" ); return result; } } Client Output Aug. 14, 2023 3:18:11 PM org.wildfly.security.Version <clinit> INFO: ELY00001: WildFly Elytron version 2.2.1.Final Aug. 14, 2023 3:18:11 PM org.wildfly.naming.client.Version <clinit> INFO: WildFly Naming version 2.0.1.Final Aug. 14, 2023 3:18:11 PM org.xnio.Xnio <clinit> INFO: XNIO version 3.8.9.Final Aug. 14, 2023 3:18:11 PM org.xnio.nio.NioXnio <clinit> INFO: XNIO NIO Implementation Version 3.8.9.Final Aug. 14, 2023 3:18:11 PM org.jboss.threads.Version <clinit> INFO: JBoss Threads version 2.4.0.Final Aug. 14, 2023 3:18:11 PM org.jboss.remoting3.EndpointImpl <clinit> INFO: JBoss Remoting version 5.0.27.Final MyEjb1: Pong MyEjb1: Pong MyRecord[title=MyEjb1, message=Pong] Exception in thread "main" jakarta.ejb.EJBException: IO channel timed out or closed. Check server endpoint read or write timeout settings at org.jboss.ejb.protocol.remote.EJBClientChannel$MethodInvocation.handleClosed(EJBClientChannel.java:1288) at org.jboss.remoting3.util.InvocationTracker.connectionClosed(InvocationTracker.java:222) at org.jboss.remoting3.util.InvocationTracker.lambda$new$0(InvocationTracker.java:70) at org.jboss.remoting3.spi.SpiUtils.safeHandleClose(SpiUtils.java:50) at org.jboss.remoting3.spi.AbstractHandleableCloseable$CloseHandlerTask.run(AbstractHandleableCloseable.java:520) at org.jboss.remoting3.spi.AbstractHandleableCloseable.runCloseTask(AbstractHandleableCloseable.java:425) at org.jboss.remoting3.spi.AbstractHandleableCloseable.closeComplete(AbstractHandleableCloseable.java:286) at org.jboss.remoting3.remote.RemoteConnectionChannel.closeAction(RemoteConnectionChannel.java:510) at org.jboss.remoting3.spi.AbstractHandleableCloseable.closeAsync(AbstractHandleableCloseable.java:368) at org.jboss.remoting3.remote.RemoteConnectionHandler.closeAllChannels(RemoteConnectionHandler.java:623) at org.jboss.remoting3.remote.RemoteConnectionHandler.receiveCloseRequest(RemoteConnectionHandler.java:226) at org.jboss.remoting3.remote.RemoteConnectionHandler.handleConnectionClose(RemoteConnectionHandler.java:123) at org.jboss.remoting3.remote.RemoteReadListener.lambda$null$0(RemoteReadListener.java:67) at org.jboss.remoting3.EndpointImpl$TrackingExecutor.lambda$execute$0(EndpointImpl.java:993) at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35) at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1990) at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1486) at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1377) at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282) at java.base/java.lang.Thread.run(Thread.java:833) Caused by: java.nio.channels.ClosedChannelException ... 20 more Server Output Calling "C:\wildfly-record-bug2\server\build\wildfly\wildfly-29.0.0.Final\bin\standalone.conf.bat" Setting JAVA property to "C:\Devel\tools\java\jdk-17.0.8+7\bin\java" =============================================================================== JBoss Bootstrap Environment JBOSS_HOME: "C:\wildfly-record-bug2\server\build\wildfly\wildfly-29.0.0.Final" JAVA: "C:\Devel\tools\java\jdk-17.0.8+7\bin\java" JAVA_OPTS: "-Dprogram.name=standalone.bat -Xms64M -Xmx512M -XX:MetaspaceSize=96M -XX:MaxMetaspaceSize=256m -Djava.net.preferIPv4Stack=true -Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true --add-exports=java.desktop/sun.awt=ALL-UNNAMED --add-exports=java.naming/com.sun.jndi.ldap=ALL-UNNAMED --add-exports=java.naming/com.sun.jndi.url.ldap=ALL-UNNAMED --add-exports=java.naming/com.sun.jndi.url.ldaps=ALL-UNNAMED --add-exports=jdk.naming.dns/com.sun.jndi.dns=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.base/java.lang.reflect=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.security=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.management/javax.management=ALL-UNNAMED --add-opens=java.naming/javax.naming=ALL-UNNAMED -Djava.security.manager=allow" =============================================================================== 15:17:56,415 INFO [org.jboss.modules] (main) JBoss Modules version 2.1.0.Final 15:17:56,718 INFO [org.jboss.msc] (main) JBoss MSC version 1.5.1.Final 15:17:56,724 INFO [org.jboss.threads] (main) JBoss Threads version 2.4.0.Final 15:17:56,796 INFO [org.jboss.as] (MSC service thread 1-3) WFLYSRV0049: WildFly Full 29.0.0.Final (WildFly Core 21.1.0.Final) starting 15:17:57,241 INFO [org.wildfly.security] (ServerService Thread Pool -- 28) ELY00001: WildFly Elytron version 2.2.1.Final 15:17:57,579 INFO [org.jboss.as.controller.management-deprecated] (ServerService Thread Pool -- 15) WFLYCTL0028: Attribute 'cluster' in the resource at address '/subsystem=ejb3/service=remote' is deprecated, and may be removed in a future version. See the attribute description in the output of the read-resource-description operation to learn more about the deprecation. 15:17:57,617 INFO [org.jboss.as.server] (Controller Boot Thread) WFLYSRV0039: Creating http management service using socket-binding (management-http) 15:17:57,629 INFO [org.xnio] (MSC service thread 1-5) XNIO version 3.8.9.Final 15:17:57,633 INFO [org.xnio.nio] (MSC service thread 1-5) XNIO NIO Implementation Version 3.8.9.Final 15:17:57,653 INFO [org.jboss.as.jaxrs] (ServerService Thread Pool -- 57) WFLYRS0016: RESTEasy version 6.2.4.Final 15:17:57,656 INFO [org.wildfly.extension.elytron.oidc._private] (ServerService Thread Pool -- 53) WFLYOIDC0001: Activating WildFly Elytron OIDC Subsystem 15:17:57,657 INFO [org.jboss.as.clustering.infinispan] (ServerService Thread Pool -- 55) WFLYCLINF0001: Activating Infinispan subsystem. 15:17:57,660 INFO [org.wildfly.extension.health] (ServerService Thread Pool -- 54) WFLYHEALTH0001: Activating Base Health Subsystem 15:17:57,660 INFO [org.wildfly.extension.microprofile.jwt.smallrye] (ServerService Thread Pool -- 66) WFLYJWT0001: Activating MicroProfile JWT Subsystem 15:17:57,660 WARN [org.jboss.as.txn] (ServerService Thread Pool -- 74) WFLYTX0013: The node-identifier attribute on the /subsystem=transactions is set to the default value. This is a danger for environments running multiple servers. Please make sure the attribute value is unique. 15:17:57,667 INFO [org.jboss.as.naming] (ServerService Thread Pool -- 67) WFLYNAM0001: Activating Naming Subsystem 15:17:57,673 INFO [org.wildfly.extension.microprofile.config.smallrye] (ServerService Thread Pool -- 65) WFLYCONF0001: Activating MicroProfile Config Subsystem 15:17:57,677 INFO [org.jboss.as.jsf] (ServerService Thread Pool -- 62) WFLYJSF0007: Activated the following Jakarta Server Faces Implementations: [main] 15:17:57,689 INFO [org.wildfly.extension.metrics] (ServerService Thread Pool -- 64) WFLYMETRICS0001: Activating Base Metrics Subsystem 15:17:57,711 INFO [org.jboss.as.webservices] (ServerService Thread Pool -- 76) WFLYWS0002: Activating WebServices Extension 15:17:57,720 INFO [org.jboss.as.connector] (MSC service thread 1-1) WFLYJCA0009: Starting Jakarta Connectors Subsystem (WildFly/IronJacamar 3.0.3.Final) 15:17:57,736 INFO [org.jboss.as.connector.subsystems.datasources] (ServerService Thread Pool -- 44) WFLYJCA0004: Deploying JDBC-compliant driver class org.h2.Driver (version 2.1) 15:17:57,737 INFO [org.wildfly.extension.undertow] (MSC service thread 1-4) WFLYUT0003: Undertow 2.3.7.Final starting 15:17:57,751 INFO [org.jboss.as.naming] (MSC service thread 1-7) WFLYNAM0003: Starting Naming Service 15:17:57,752 INFO [org.jboss.as.connector.deployers.jdbc] (MSC service thread 1-4) WFLYJCA0018: Started Driver service with driver-name = h2 15:17:57,752 INFO [org.jboss.as.mail.extension] (MSC service thread 1-4) WFLYMAIL0001: Bound mail session [java:jboss/mail/Default] 15:17:57,756 INFO [org.wildfly.extension.io] (ServerService Thread Pool -- 56) WFLYIO001: Worker 'default' has auto-configured to 16 IO threads with 128 max task threads based on your 8 available processors 15:17:57,766 WARN [org.wildfly.extension.elytron] (MSC service thread 1-8) WFLYELY00023: KeyStore file 'C:\wildfly-record-bug2\server\build\wildfly\wildfly-29.0.0.Final\standalone\configuration\application.keystore' does not exist. Used blank. 15:17:57,801 WARN [org.wildfly.extension.elytron] (MSC service thread 1-6) WFLYELY01084: KeyStore C:\wildfly-record-bug2\server\build\wildfly\wildfly-29.0.0.Final\standalone\configuration\application.keystore not found, it will be auto-generated on first use with a self-signed certificate for host localhost 15:17:57,820 INFO [org.jboss.remoting] (MSC service thread 1-4) JBoss Remoting version 5.0.27.Final 15:17:57,821 INFO [org.wildfly.extension.undertow] (ServerService Thread Pool -- 75) WFLYUT0014: Creating file handler for path 'C:\wildfly-record-bug2\server\build\wildfly\wildfly-29.0.0.Final/welcome-content' with options [directory-listing: 'false', follow-symlink: 'false', case-sensitive: 'true', safe-symlink-paths: '[]'] 15:17:57,855 INFO [org.wildfly.extension.undertow] (MSC service thread 1-8) WFLYUT0012: Started server default-server. 15:17:57,858 INFO [org.jboss.as.ejb3] (MSC service thread 1-7) WFLYEJB0481: Strict pool slsb-strict-max-pool is using a max instance size of 128 (per class), which is derived from thread worker pool sizing. 15:17:57,858 INFO [org.jboss.as.ejb3] (MSC service thread 1-2) WFLYEJB0482: Strict pool mdb-strict-max-pool is using a max instance size of 32 (per class), which is derived from the number of CPUs on this host. 15:17:57,860 INFO [org.wildfly.extension.undertow] (MSC service thread 1-1) Queuing requests. 15:17:57,864 INFO [org.wildfly.extension.undertow] (MSC service thread 1-1) WFLYUT0018: Host default-host starting 15:17:57,901 INFO [org.wildfly.extension.undertow] (MSC service thread 1-5) WFLYUT0006: Undertow HTTP listener default listening on 127.0.0.1:8080 15:17:57,996 INFO [org.wildfly.extension.undertow] (MSC service thread 1-6) WFLYUT0006: Undertow HTTPS listener https listening on 127.0.0.1:8443 15:17:58,025 INFO [org.jboss.as.ejb3] (MSC service thread 1-3) WFLYEJB0493: Jakarta Enterprise Beans subsystem suspension complete 15:17:58,032 INFO [org.jboss.as.server.deployment.scanner] (MSC service thread 1-8) WFLYDS0013: Started FileSystemDeploymentService for directory C:\wildfly-record-bug2\server\build\wildfly\wildfly-29.0.0.Final\standalone\deployments 15:17:58,058 INFO [org.jboss.as.connector.subsystems.datasources] (MSC service thread 1-4) WFLYJCA0001: Bound data source [java:jboss/datasources/ExampleDS] 15:17:58,075 INFO [org.jboss.ws.common.management] (MSC service thread 1-6) JBWS022052: Starting JBossWS 6.2.0.Final (Apache CXF 4.0.0) 15:17:58,138 INFO [org.jboss.as.server] (Controller Boot Thread) WFLYSRV0212: Resuming server 15:17:58,141 INFO [org.jboss.as] (Controller Boot Thread) WFLYSRV0060: Http management interface listening on http://127.0.0.1:9990/management 15:17:58,141 INFO [org.jboss.as] (Controller Boot Thread) WFLYSRV0051: Admin console listening on http://127.0.0.1:9990 15:17:58,142 INFO [org.jboss.as] (Controller Boot Thread) WFLYSRV0025: WildFly Full 29.0.0.Final (WildFly Core 21.1.0.Final) started in 1947ms - Started 280 of 522 services (317 services are lazy, passive or on-demand) - Server configuration file in use: standalone.xml 15:18:03,121 INFO [org.jboss.as.repository] (management-handler-thread - 1) WFLYDR0001: Content added at location C:\wildfly-record-bug2\server\build\wildfly\wildfly-29.0.0.Final\standalone\data\content\3d\0b362bc035e944a0702fafdabb3b0427a1c10b\content 15:18:03,137 INFO [org.jboss.as.server.deployment] (MSC service thread 1-6) WFLYSRV0027: Starting deployment of "server.war" (runtime-name: "server.war") 15:18:04,059 INFO [org.jboss.weld.deployer] (MSC service thread 1-5) WFLYWELD0003: Processing weld deployment server.war 15:18:04,130 INFO [org.hibernate.validator.internal.util.Version] (MSC service thread 1-5) HV000001: Hibernate Validator 8.0.0.Final 15:18:04,237 INFO [org.jboss.as.ejb3.deployment] (MSC service thread 1-5) WFLYEJB0473: JNDI bindings for session bean named 'MyRemoteInterface2' in deployment unit 'deployment "server.war"' are as follows: java:global/server/MyRemoteInterface2!org.wildfly.bug.record.interfaces.MyRemoteInterface2 java:app/server/MyRemoteInterface2!org.wildfly.bug.record.interfaces.MyRemoteInterface2 java:module/MyRemoteInterface2!org.wildfly.bug.record.interfaces.MyRemoteInterface2 java:jboss/exported/server/MyRemoteInterface2!org.wildfly.bug.record.interfaces.MyRemoteInterface2 ejb:/server/MyRemoteInterface2!org.wildfly.bug.record.interfaces.MyRemoteInterface2 java:global/server/MyRemoteInterface2 java:app/server/MyRemoteInterface2 java:module/MyRemoteInterface2 15:18:04,237 INFO [org.jboss.as.ejb3.deployment] (MSC service thread 1-5) WFLYEJB0473: JNDI bindings for session bean named 'MyRemoteInterface1' in deployment unit 'deployment "server.war"' are as follows: java:global/server/MyRemoteInterface1!org.wildfly.bug.record.interfaces.MyRemoteInterface1 java:app/server/MyRemoteInterface1!org.wildfly.bug.record.interfaces.MyRemoteInterface1 java:module/MyRemoteInterface1!org.wildfly.bug.record.interfaces.MyRemoteInterface1 java:jboss/exported/server/MyRemoteInterface1!org.wildfly.bug.record.interfaces.MyRemoteInterface1 ejb:/server/MyRemoteInterface1!org.wildfly.bug.record.interfaces.MyRemoteInterface1 java:global/server/MyRemoteInterface1 java:app/server/MyRemoteInterface1 java:module/MyRemoteInterface1 15:18:04,419 WARN [org.jboss.as.jaxrs] (MSC service thread 1-5) WFLYRS0015: No Servlet declaration found for Jakarta RESTful Web Services application. In server.war either provide a class that extends jakarta.ws.rs.core.Application or declare a servlet class in web.xml. 15:18:04,437 INFO [org.jboss.weld.Version] (MSC service thread 1-5) WELD-000900: 5.1.1 (SP1) 15:18:05,023 INFO [org.wildfly.security.soteria.original.SamRegistrationInstaller] (ServerService Thread Pool -- 3) Initializing Soteria 3.0.3.Final for context '/server' 15:18:05,070 INFO [jakarta.enterprise.resource.webcontainer.faces.config] (ServerService Thread Pool -- 3) Mojarra 4.0.2 f�r Kontext '/server' wird initialisiert. 15:18:05,319 INFO [org.wildfly.extension.undertow] (ServerService Thread Pool -- 3) WFLYUT0021: Registered web context: '/server' for server 'default-server' 15:18:05,354 INFO [org.jboss.as.server] (management-handler-thread - 1) WFLYSRV0010: Deployed "server.war" (runtime-name : "server.war") 15:18:11,931 INFO [org.wildfly.naming] (default task-1) WildFly Naming version 2.0.1.Final 15:18:11,937 INFO [org.jboss.ejb.client] (default task-2) JBoss EJB Client version 5.0.5.Final 15:18:12,135 INFO [stdout] (default task-2) MyEjb1.myStringMethod1(Session1: Ping) enter 15:18:12,135 INFO [stdout] (default task-2) MyEjb1.myStringMethod1(Session1: Ping) exit 15:18:12,141 INFO [stdout] (default task-2) MyEjb2.myStringMethod2(Session2: Ping) enter 15:18:12,168 INFO [stdout] (default task-2) MyEjb1.myStringMethod1(Session2: Ping) enter 15:18:12,168 INFO [stdout] (default task-2) MyEjb1.myStringMethod1(Session2: Ping) exit 15:18:12,169 INFO [stdout] (default task-2) MyEjb2.myStringMethod2(Session2: Ping) exit 15:18:12,186 INFO [stdout] (default task-2) MyEjb1.myRecordMethod1(MyRecord[title=Session1, message=Ping]) enter 15:18:12,187 INFO [stdout] (default task-2) MyEjb1.myRecordMethod1(MyRecord[title=Session1, message=Ping]) exit 15:18:12,199 INFO [stdout] (default task-2) MyEjb2.myRecordMethod2(MyRecord[title=Session2, message=Ping]) enter # # A fatal error has been detected by the Java Runtime Environment: # # EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x00000226bc5dcf4f, pid=6376, tid=15200 # # JRE version: OpenJDK Runtime Environment Temurin-17.0.8+7 (17.0.8+7) (build 17.0.8+7) # Java VM: OpenJDK 64-Bit Server VM Temurin-17.0.8+7 (17.0.8+7, mixed mode, sharing, tiered, compressed oops, compressed class ptrs, g1 gc, windows-amd64) # Problematic frame: # J 4674 c2 java.util.IdentityHashMap.get(Ljava/lang/Object;)Ljava/lang/Object; java.base@17.0.8 (60 bytes) @ 0x00000226bc5dcf4f [0x00000226bc5dcf20+0x000000000000002f] # # No core dump will be written. Minidumps are not enabled by default on client versions of Windows # # An error report file with more information is saved as: # C:\wildfly-record-bug2\server\build\wildfly\wildfly-29.0.0.Final\bin\hs_err_pid6376.log Compiled method (c2) 16061 4674 4 java.util.IdentityHashMap::get (60 bytes) total in heap [0x00000226bc5dcd90,0x00000226bc5dd288] = 1272 relocation [0x00000226bc5dcee8,0x00000226bc5dcf18] = 48 main code [0x00000226bc5dcf20,0x00000226bc5dd0e0] = 448 stub code [0x00000226bc5dd0e0,0x00000226bc5dd108] = 40 metadata [0x00000226bc5dd108,0x00000226bc5dd120] = 24 scopes data [0x00000226bc5dd120,0x00000226bc5dd1c0] = 160 scopes pcs [0x00000226bc5dd1c0,0x00000226bc5dd250] = 144 dependencies [0x00000226bc5dd250,0x00000226bc5dd258] = 8 handler table [0x00000226bc5dd258,0x00000226bc5dd270] = 24 nul chk table [0x00000226bc5dd270,0x00000226bc5dd288] = 24 Compiled method (c2) 16069 4674 4 java.util.IdentityHashMap::get (60 bytes) total in heap [0x00000226bc5dcd90,0x00000226bc5dd288] = 1272 relocation [0x00000226bc5dcee8,0x00000226bc5dcf18] = 48 main code [0x00000226bc5dcf20,0x00000226bc5dd0e0] = 448 stub code [0x00000226bc5dd0e0,0x00000226bc5dd108] = 40 metadata [0x00000226bc5dd108,0x00000226bc5dd120] = 24 scopes data [0x00000226bc5dd120,0x00000226bc5dd1c0] = 160 scopes pcs [0x00000226bc5dd1c0,0x00000226bc5dd250] = 144 dependencies [0x00000226bc5dd250,0x00000226bc5dd258] = 8 handler table [0x00000226bc5dd258,0x00000226bc5dd270] = 24 nul chk table [0x00000226bc5dd270,0x00000226bc5dd288] = 24 # # If you would like to submit a bug report, please visit: # https://github.com/adoptium/adoptium-support/issues # Dr�cken Sie eine beliebige Taste . . .

    Description

      Full reproducer: https://github.com/jbaesner/WFLY-18346

      When passing a record as a parameter to a local ejb via a remote interface method the jvm crashes. I tested with the following JVMs:

      This may relate to WFLY-16986.

      To reproduce this all you need is an EJB that calls another EJB with a record as parameter:

      @Remote(MyRemoteInterface2.class)
      @Stateless(name = MyRemoteInterface2.NAME)
      @PermitAll
      public class MyEjb2 implements MyRemoteInterface2 {
        @EJB
        private MyRemoteInterface1 ejb2;
      
        @Override
        public MyRecord myRecordMethod2(MyRecord myRecord) {
          return ejb2.myRecordMethod1(myRecord);
        }
      }
      

      Attachments

        Issue Links

          Activity

            People

              dlloyd@redhat.com David Lloyd
              cfang@redhat.com Cheng Fang
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: