[JBoss JIRA] (WFLY-13438) Database Timers: instances sporadically fail to start in a cluster
by Cheng Fang (Jira)
[ https://issues.redhat.com/browse/WFLY-13438?page=com.atlassian.jira.plugi... ]
Cheng Fang commented on WFLY-13438:
-----------------------------------
I was running everything (WildFly instances and Postgres 10) on my local machine (mac book pro), with JDK 8. Everytime I was able to restart the entire server group (with 3 servers) at once in admin console, and I verified that the timer execution was properly distributed. I did notice some error in postgres log file (which seems to be informational ):
{code:java}
2020-07-06 12:40:58.292 EDT [92199] LOG: database system is ready to accept connections
2020-07-06 12:43:30.013 EDT [92316] ERROR: could not serialize access due to concurrent update
2020-07-06 12:43:30.013 EDT [92316] STATEMENT: UPDATE JBOSS_EJB_TIMER SET TIMER_STATE=$1, NODE_NAME=$2 WHERE ID=$3 AND TIMER_STATE<>$4 AND TIMER_STATE<>$5 AND NEXT_DATE<=$6
2020-07-06 12:43:30.013 EDT [92310] ERROR: could not serialize access due to concurrent update
2020-07-06 12:43:30.013 EDT [92310] STATEMENT: UPDATE JBOSS_EJB_TIMER SET TIMER_STATE=$1, NODE_NAME=$2 WHERE ID=$3 AND TIMER_STATE<>$4 AND TIMER_STATE<>$5 AND NEXT_DATE<=$6
{code}
My datasource config:
{code:xml}
<datasource jta="true" jndi-name="java:jboss/PostgresDS" pool-name="PostgresDS" enabled="true" use-java-context="true">
<connection-url>jdbc:postgresql://localhost/postgres</connection-url>
<driver>postgres</driver>
<transaction-isolation>TRANSACTION_SERIALIZABLE</transaction-isolation>
<security>
<user-name>postgres</user-name>
</security>
</datasource>
{code}
I don't see any meaningful difference between my config and yours. If you notice any, pls let me know.
> Database Timers: instances sporadically fail to start in a cluster
> ------------------------------------------------------------------
>
> Key: WFLY-13438
> URL: https://issues.redhat.com/browse/WFLY-13438
> Project: WildFly
> Issue Type: Bug
> Components: EJB
> Affects Versions: 19.1.0.Final
> Reporter: Marcos Scholtz
> Assignee: Cheng Fang
> Priority: Major
>
> We use a postgresql database for persistent timers, to control the execution of scheduled tasks in a cluster. It mainly works, but when operating in a cluster and when a server-group is restarted, sometimes individual instances in the cluster fail to start because of an error when reinstating persistent timers.
> Configuration of the Datasource:
> {code}
> <xa-datasource jndi-name="java:/datasources/MonitoringDS" pool-name="MonitoringDS" enabled="true">
> <xa-datasource-property name="ServerName">
> appserver.local
> </xa-datasource-property>
> <xa-datasource-property name="PortNumber">
> 5432
> </xa-datasource-property>
> <xa-datasource-property name="DatabaseName">
> monitoringdb
> </xa-datasource-property>
> <xa-datasource-class>org.postgresql.xa.PGXADataSource</xa-datasource-class>
> <driver>postgresql</driver>
> <security>
> <user-name>xxx</user-name>
> <password>xxx</password>
> </security>
> </xa-datasource>
> {code}
> Configuration of the timer service:
> {code}
> <timer-service thread-pool-name="default" default-data-store="batch-clustered-store">
> <data-stores>
> <file-data-store name="default-file-store" path="timer-service-data" relative-to="jboss.server.data.dir"/>
> <database-data-store name="batch-clustered-store" datasource-jndi-name="java:/datasources/MonitoringDS" database="'postgresql'" partition="${batch.partition}" refresh-interval="60000" allow-execution="true"/>
> </data-stores>
> </timer-service>
> {code}
> Note we use a system-property on the server-group to determine the partition name.
> Also, we made NO changes to the SQL statements in "timer-sql.properties".
> The timer is generated by a `@Schedule` annotation in an EJB like this:
> {code}
> @Schedule(
> dayOfMonth = "${manual.scheduler.dayofmonth:*}",
> dayOfWeek = "${manual.scheduler.dayofweek:*}",
> hour = "${manual.scheduler.hour:2/6}",
> minute = "${manual.scheduler.minute:2}"
> )
> @TransactionAttribute(TransactionAttributeType.NEVER)
> void doPostboxImport() {
> log.info("Starting Postbox Import");
> BatchRuntime.getJobOperator().start("PostboxImportBatchlet", null);
> }
> {code}
> The error we sporadically get when starting more than one instance at the same time (when all instances try to reinstate timers) is like this:
> {code}
> 14:48:28,117 WARN [com.arjuna.ats.arjuna] (ServerService Thread Pool -- 69) {"tenant": "", "clientId": ""} ARJUNA012078: Abort called illegaly on atomic action 0:ffff7f000001:-27f2652e:5eb2b20f:f
> 14:48:28,118 WARN [org.jboss.as.ejb3.timer] (ServerService Thread Pool -- 69) {"tenant": "", "clientId": ""} WFLYEJB0161: Failed to reinstate timer 'postbox-integration-service.postbox-integration-service.PostboxImport' (id=unavailable) from its persistent state: javax.transaction.NotSupportedException: WFTXN0001: A transaction is already in progress
> at org.wildfly.transaction.client@1.1.9.Final//org.wildfly.transaction.client.ContextTransactionManager.begin(ContextTransactionManager.java:60)
> at org.wildfly.transaction.client@1.1.9.Final//org.wildfly.transaction.client.ContextTransactionManager.begin(ContextTransactionManager.java:54)
> at org.jboss.as.ejb3@19.1.0.Final//org.jboss.as.ejb3.timerservice.TimerServiceImpl.getActivePersistentTimers(TimerServiceImpl.java:984)
> at org.jboss.as.ejb3@19.1.0.Final//org.jboss.as.ejb3.timerservice.TimerServiceImpl.restoreTimers(TimerServiceImpl.java:712)
> at org.jboss.as.ejb3@19.1.0.Final//org.jboss.as.ejb3.timerservice.TimerServiceImpl.activate(TimerServiceImpl.java:223)
> at org.jboss.as.ejb3@19.1.0.Final//org.jboss.as.ejb3.component.EJBComponent.init(EJBComponent.java:595)
> at org.jboss.as.ejb3@19.1.0.Final//org.jboss.as.ejb3.component.stateless.StatelessSessionComponent.init(StatelessSessionComponent.java:110)
> at org.jboss.as.ee@19.1.0.Final//org.jboss.as.ee.component.BasicComponent.start(BasicComponent.java:222)
> at org.jboss.as.ee@19.1.0.Final//org.jboss.as.ee.component.ComponentStartService$1.run(ComponentStartService.java:54)
> at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
> at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
> at org.jboss.threads@2.3.3.Final//org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
> at org.jboss.threads@2.3.3.Final//org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1982)
> at org.jboss.threads@2.3.3.Final//org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1486)
> at org.jboss.threads@2.3.3.Final//org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1377)
> at java.base/java.lang.Thread.run(Thread.java:834)
> at org.jboss.threads@2.3.3.Final//org.jboss.threads.JBossThread.run(JBossThread.java:485)
> 14:48:28,153 ERROR [org.jboss.msc.service.fail] (ServerService Thread Pool -- 69) {"tenant": "", "clientId": ""} MSC000001: Failed to start service jboss.deployment.unit."postbox-integration-service-E-SNAPSHOT.war".component.PostboxImport.START: org.jboss.msc.service.StartException in service jboss.deployment.unit."postbox-integration-service-E-SNAPSHOT.war".component.PostboxImport.START: java.lang.RuntimeException: java.lang.NullPointerException
> at org.jboss.as.ee@19.1.0.Final//org.jboss.as.ee.component.ComponentStartService$1.run(ComponentStartService.java:57)
> at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
> at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
> at org.jboss.threads@2.3.3.Final//org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
> at org.jboss.threads@2.3.3.Final//org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1982)
> at org.jboss.threads@2.3.3.Final//org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1486)
> at org.jboss.threads@2.3.3.Final//org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1377)
> at java.base/java.lang.Thread.run(Thread.java:834)
> at org.jboss.threads@2.3.3.Final//org.jboss.threads.JBossThread.run(JBossThread.java:485)
> Caused by: java.lang.RuntimeException: java.lang.NullPointerException
> at org.jboss.as.ejb3@19.1.0.Final//org.jboss.as.ejb3.timerservice.TimerServiceImpl.persistTimer(TimerServiceImpl.java:626)
> at org.jboss.as.ejb3@19.1.0.Final//org.jboss.as.ejb3.timerservice.TimerServiceImpl.createCalendarTimer(TimerServiceImpl.java:537)
> at org.jboss.as.ejb3@19.1.0.Final//org.jboss.as.ejb3.timerservice.TimerServiceImpl.loadAutoTimer(TimerServiceImpl.java:388)
> at org.jboss.as.ejb3@19.1.0.Final//org.jboss.as.ejb3.timerservice.TimerServiceImpl.restoreTimers(TimerServiceImpl.java:774)
> at org.jboss.as.ejb3@19.1.0.Final//org.jboss.as.ejb3.timerservice.TimerServiceImpl.activate(TimerServiceImpl.java:223)
> at org.jboss.as.ejb3@19.1.0.Final//org.jboss.as.ejb3.component.EJBComponent.init(EJBComponent.java:595)
> at org.jboss.as.ejb3@19.1.0.Final//org.jboss.as.ejb3.component.stateless.StatelessSessionComponent.init(StatelessSessionComponent.java:110)
> at org.jboss.as.ee@19.1.0.Final//org.jboss.as.ee.component.BasicComponent.start(BasicComponent.java:222)
> at org.jboss.as.ee@19.1.0.Final//org.jboss.as.ee.component.ComponentStartService$1.run(ComponentStartService.java:54)
> ... 8 more
> Caused by: java.lang.NullPointerException
> at org.jboss.as.ejb3@19.1.0.Final//org.jboss.as.ejb3.timerservice.persistence.database.DatabaseTimerPersistence.addTimer(DatabaseTimerPersistence.java:336)
> at org.jboss.as.ejb3@19.1.0.Final//org.jboss.as.ejb3.timerservice.TimerServiceImpl.persistTimer(TimerServiceImpl.java:607)
> ... 16 more
> {code}
> The error seems similar to the one described in WFLY-13386, but the stack trace and the steps to reproduce it seem different to me, so I'm not sure if it's the same problem. The problem also existed in Wildfly 14 , we just updated to 19.1 (also hoping that his error would be corrected).
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
5 years, 12 months
[JBoss JIRA] (WFLY-13600) EJB client over HTTP Fail on Java SE
by Cheng Fang (Jira)
[ https://issues.redhat.com/browse/WFLY-13600?page=com.atlassian.jira.plugi... ]
Cheng Fang resolved WFLY-13600.
-------------------------------
Release Notes Text: Mark it as resolved. Feel free to reopen if you still see problems.
Resolution: Explained
> EJB client over HTTP Fail on Java SE
> ------------------------------------
>
> Key: WFLY-13600
> URL: https://issues.redhat.com/browse/WFLY-13600
> Project: WildFly
> Issue Type: Bug
> Components: EJB
> Affects Versions: 20.0.0.Final
> Reporter: Gergely Molnár
> Assignee: Cheng Fang
> Priority: Major
>
> Java SE code:
> {code:java}
> public class Application {
> private static final String REMOTE_CALC = "ejb:/remote-ejb/RemoteCalc!" + RemoteCalc.class.getName();
> /**
> * Lookup remote \{@link RemoteCalc}.
> *
> * @return a \{@link RemoteCalc} object
> * @throws NamingException Something is wrong
> */
> public static RemoteCalc getRemoteCalc() throws NamingException {
> Hashtable<String, Object> jndiProps = new Hashtable<>();
> jndiProps.put(Context.INITIAL_CONTEXT_FACTORY, "org.wildfly.naming.client.WildFlyInitialContextFactory");
> // remote+http connection (work fine)
> //jndiProps.put(Context.PROVIDER_URL, "remote+http://127.0.0.1:8080/remote-ejb");
> // http connection (fail)
> jndiProps.put(Context.PROVIDER_URL, "http://127.0.0.1:8080/wildfly-services");
> Context context = new InitialContext(jndiProps);
> return (RemoteCalc) context.lookup(REMOTE_CALC);
> }
> /**
> * Call to run (main).
> *
> * @param args parameters (not used)
> * @throws NamingException Something is wrong
> */
> public static void main(String[] args) throws NamingException {
>
> RemoteCalc remoteCalc = getRemoteCalc();
> System.out.println("Remote calc 95 + 76: " + remoteCalc.add(95, 76));
> }
> }
> {code}
> Exception:
> Exception in thread "main" javax.naming.InvalidNameException: WFNAM00007: Invalid URL scheme name "http"
> at org.wildfly.naming.client.WildFlyRootContext.getProviderContext(WildFlyRootContext.java:808)
> at org.wildfly.naming.client.WildFlyRootContext.lookup(WildFlyRootContext.java:140)
> at javax.naming.InitialContext.lookup(Unknown Source)
> at com.bosch.emea.bpart.remoteejbclient.Application.getRemoteCalc(Application.java:34)
> at com.bosch.emea.bpart.remoteejbclient.Application.main(Application.java:47)
> Lib:
> {code:java}
> @Remote
> public interface RemoteCalc {
> /**
> * Add two integer.
> *
> * @param a an integer
> * @param b an integer
> * @return a + b
> */
> public int add(int a, int b);
>
> }
> {code}
> Config:
> {code:xml}
> <?xml version="1.0" encoding="UTF-8"?>
> <configuration>
> <authentication-client xmlns="urn:elytron:1.0">
> <authentication-rules>
> <rule use-configuration="default" />
> </authentication-rules>
> <authentication-configurations>
> <configuration name="default">
> <sasl-mechanism-selector selector="#ALL" />
> <set-mechanism-properties>
> <property key="wildfly.sasl.local-user.quiet-auth" value="true" />
> </set-mechanism-properties>
> <providers>
> <use-service-loader/>
> </providers>
> </configuration>
> </authentication-configurations>
> </authentication-client>
> </configuration>
> {code}
> Maven dependency:
> {code:xml}
> <dependency>
> <groupId>org.wildfly</groupId>
> <artifactId>wildfly-ejb-client-bom</artifactId>
> <version>20.0.0.Final</version>
> <type>pom</type>
> </dependency>
> {code}
>
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
5 years, 12 months
[JBoss JIRA] (WFLY-13575) Remove all hard coded references to Artemis default values
by Michal Petrov (Jira)
[ https://issues.redhat.com/browse/WFLY-13575?page=com.atlassian.jira.plugi... ]
Michal Petrov commented on WFLY-13575:
--------------------------------------
[~ehugonnet] as far as I can see there was only one hard-coded reference and that's being fixed in WFLY-13063. I wrote a test for the attributes that had a reference to Artemis and there are a few mismatches:
* CommonAttributes.BRIDGE_CONFIRMATION_WINDOW_SIZE (this one is being fixed)
* ServerDefinition.GLOBAL_MAX_DISK_USAGE (100 vs 90)
* ServerDefinition.GLOBAL_MAX_MEMORY_SIZE (-1 vs "Runtime.getRuntime().maxMemory() / 2")
* ServerDefinition.JOURNAL_POOL_FILES (10 vs -1)
then there are a few such as {{ServerDefinition.JOURNAL_JDBC_LOCK_EXPIRATION}} where the value is technically the same but in different units (seconds/milliseconds)
> Remove all hard coded references to Artemis default values
> ----------------------------------------------------------
>
> Key: WFLY-13575
> URL: https://issues.redhat.com/browse/WFLY-13575
> Project: WildFly
> Issue Type: Enhancement
> Components: JMS
> Affects Versions: 20.0.0.Final
> Reporter: Emmanuel Hugonnet
> Assignee: Michal Petrov
> Priority: Major
>
> There are still attributes that use Artemis default configuration valuues from FileConfiguration for example.
> Remove those values so that they are not updated behind the scene and add a test to know when our default values don't align with Artemis ones.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
5 years, 12 months
[JBoss JIRA] (WFLY-13679) Make legacy security optional for "org.wildfly.iiop-openjdk"
by Darran Lofthouse (Jira)
Darran Lofthouse created WFLY-13679:
---------------------------------------
Summary: Make legacy security optional for "org.wildfly.iiop-openjdk"
Key: WFLY-13679
URL: https://issues.redhat.com/browse/WFLY-13679
Project: WildFly
Issue Type: Sub-task
Components: IIOP, Security
Reporter: Darran Lofthouse
Assignee: Darran Lofthouse
Fix For: 21.0.0.Beta1
The dependency needs to optional so provisioning a layer with batch does not automatically pull in legacy security.
This is not just about making the module dependency optional, this is about understanding why it is not optional and identifying the steps required to make it optional.
This needs to consider:
* Default Configuration
* User Defined Configuration
Both of these can have different consequences depending on of they are used for:
* Resource defined services
* DeploymentUnitProcessor processing
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
5 years, 12 months
[JBoss JIRA] (WFLY-13659) Fix modules with dependency on Legacy Security Subsystem or PicketBox
by Darran Lofthouse (Jira)
[ https://issues.redhat.com/browse/WFLY-13659?page=com.atlassian.jira.plugi... ]
Darran Lofthouse updated WFLY-13659:
------------------------------------
Description:
Various subsystems have dependencies on the legacy security subsystem, these need to be verified to make sure they are really required or adjusted to make optional.
*org.jboss.as.security*
{code}
./system/layers/base/org/wildfly/extension/request-controller/main/module.xml: <module name="org.jboss.as.security" optional="true"/>
./system/layers/base/org/wildfly/extension/io/main/module.xml: <module name="org.jboss.as.security" optional="true"/>
./system/layers/base/org/wildfly/extension/elytron/main/module.xml: <module name="org.jboss.as.security-integration" optional="true" services="import"/>
./system/layers/base/org/wildfly/extension/undertow/main/module.xml: <module name="org.jboss.as.security" optional="true"/>
./system/layers/base/org/wildfly/extension/picketlink/main/module.xml: <module name="org.jboss.as.security"/>
./system/layers/base/org/wildfly/extension/messaging-activemq/main/module.xml: <module name="org.jboss.as.security"/>
./system/layers/base/org/apache/activemq/artemis/main/module.xml: <module name="org.jboss.as.security"/>
./system/layers/base/org/jboss/as/vault-tool/main/module.xml: <main-class name="org.jboss.as.security.vault.VaultTool"/>
./system/layers/base/org/jboss/as/vault-tool/main/module.xml: <module name="org.jboss.as.security"/>
./system/layers/base/org/jboss/as/webservices/main/module.xml: <module name="org.jboss.as.security"/>
./system/layers/base/org/jboss/as/connector/main/module.xml: <module name="org.jboss.as.security"/>
./system/layers/base/org/jboss/as/ejb3/main/module.xml: <module name="org.jboss.as.security"/>
./system/layers/base/org/jboss/as/remoting/main/module.xml: <module name="org.jboss.as.security" optional="true"/>
./system/layers/base/org/jboss/as/appclient/main/module.xml: <module name="org.jboss.as.security"/>
./system/layers/base/org/jboss/as/server/main/module.xml: <module name="org.jboss.as.security" optional="true" services="import"/>
./system/layers/base/org/jboss/as/weld/common/main/module.xml: <module name="org.jboss.as.security" optional="true"/>
{code}
*org.picketbox*
{code}
./system/layers/base/org/wildfly/extension/io/main/module.xml: <module name="org.picketbox" optional="true"/>
./system/layers/base/org/wildfly/extension/batch/jberet/main/module.xml: <module name="org.picketbox"/>
./system/layers/base/org/wildfly/extension/undertow/main/module.xml: <module name="org.picketbox" optional="true"/>
./system/layers/base/org/wildfly/extension/picketlink/main/module.xml: <module name="org.picketbox"/>
./system/layers/base/org/wildfly/extension/messaging-activemq/main/module.xml: <module name="org.picketbox"/>
./system/layers/base/org/wildfly/iiop-openjdk/main/module.xml: <module name="org.picketbox"/>
./system/layers/base/org/apache/activemq/artemis/main/module.xml: <module name="org.picketbox"/>
./system/layers/base/org/picketlink/federation/bindings/main/module.xml: <module name="org.picketbox"/>
./system/layers/base/org/picketlink/federation/main/module.xml: <module name="org.picketbox"/>
./system/layers/base/org/jboss/as/webservices/main/module.xml: <module name="org.picketbox"/>
./system/layers/base/org/jboss/as/connector/main/module.xml: <module name="org.picketbox"/>
./system/layers/base/org/jboss/as/ejb3/main/module.xml: <module name="org.picketbox"/>
./system/layers/base/org/jboss/as/remoting/main/module.xml: <module name="org.picketbox" optional="true"/>
./system/layers/base/org/jboss/as/appclient/main/module.xml: <module name="org.picketbox"/>
./system/layers/base/org/jboss/as/security-api/main/module.xml: <module name="org.picketbox"/>
./system/layers/base/org/jboss/as/server/main/module.xml: <module name="org.picketbox" optional="true"/>
./system/layers/base/org/jboss/as/weld/main/module.xml: <module name="org.picketbox"/>
./system/layers/base/org/jboss/as/domain-management/main/module.xml: <module name="org.picketbox" optional="true"/>
./system/layers/base/org/jboss/as/cli/main/module.xml: <module name="org.picketbox" optional="true"/>
./system/layers/base/org/jboss/as/security/main/module.xml: <module name="org.picketbox"/>
./system/layers/base/org/jboss/as/security-integration/main/module.xml: <module name="org.picketbox">
./system/layers/base/org/jboss/ws/cxf/jbossws-cxf-client/main/module.xml: <module name="org.picketbox" export="true"/>
./system/layers/base/org/jboss/ws/cxf/jbossws-cxf-server/main/module.xml: <module name="org.picketbox"/>
./system/layers/base/org/jboss/ws/jaxws-client/main/module.xml: <module name="org.picketbox"/>
./system/layers/base/org/jboss/ironjacamar/impl/main/module.xml: <module name="org.picketbox"/>
./system/layers/base/org/jboss/security/negotiation/main/module.xml: <module name="org.picketbox"/>
{code}
The optional dependencies are probably Ok but the non-optional dependencies mean these will pull in the modules we do not want when these subsystems are provisioned.
As there are quite a few affected modules I will likely group these into related areas and create sub tasks to track the individual problems to be addressed.
Ignoring the optional dependencies the list of modules to target becomes:
* org.apache.activemq.artemis
* org.jboss.as.appclient
* org.jboss.as.connector
* org.jboss.as.ejb3
* org.jboss.as.webservices
* -org.jboss.as.weld-
* org.jboss.ironjacamar.impl
* org.jboss.ws.cxf.jbossws-cxf-client
* org.jboss.ws.cxf.jbossws-cxf-server
* org.jboss.ws.jaxws-client
* -org.wildfly.extension.batch.jberet-
* org.wildfly.extension.messaging-activemq
* org.wildfly.iiop-openjdk
was:
Various subsystems have dependencies on the legacy security subsystem, these need to be verified to make sure they are really required or adjusted to make optional.
*org.jboss.as.security*
{code}
./system/layers/base/org/wildfly/extension/request-controller/main/module.xml: <module name="org.jboss.as.security" optional="true"/>
./system/layers/base/org/wildfly/extension/io/main/module.xml: <module name="org.jboss.as.security" optional="true"/>
./system/layers/base/org/wildfly/extension/elytron/main/module.xml: <module name="org.jboss.as.security-integration" optional="true" services="import"/>
./system/layers/base/org/wildfly/extension/undertow/main/module.xml: <module name="org.jboss.as.security" optional="true"/>
./system/layers/base/org/wildfly/extension/picketlink/main/module.xml: <module name="org.jboss.as.security"/>
./system/layers/base/org/wildfly/extension/messaging-activemq/main/module.xml: <module name="org.jboss.as.security"/>
./system/layers/base/org/apache/activemq/artemis/main/module.xml: <module name="org.jboss.as.security"/>
./system/layers/base/org/jboss/as/vault-tool/main/module.xml: <main-class name="org.jboss.as.security.vault.VaultTool"/>
./system/layers/base/org/jboss/as/vault-tool/main/module.xml: <module name="org.jboss.as.security"/>
./system/layers/base/org/jboss/as/webservices/main/module.xml: <module name="org.jboss.as.security"/>
./system/layers/base/org/jboss/as/connector/main/module.xml: <module name="org.jboss.as.security"/>
./system/layers/base/org/jboss/as/ejb3/main/module.xml: <module name="org.jboss.as.security"/>
./system/layers/base/org/jboss/as/remoting/main/module.xml: <module name="org.jboss.as.security" optional="true"/>
./system/layers/base/org/jboss/as/appclient/main/module.xml: <module name="org.jboss.as.security"/>
./system/layers/base/org/jboss/as/server/main/module.xml: <module name="org.jboss.as.security" optional="true" services="import"/>
./system/layers/base/org/jboss/as/weld/common/main/module.xml: <module name="org.jboss.as.security" optional="true"/>
{code}
*org.picketbox*
{code}
./system/layers/base/org/wildfly/extension/io/main/module.xml: <module name="org.picketbox" optional="true"/>
./system/layers/base/org/wildfly/extension/batch/jberet/main/module.xml: <module name="org.picketbox"/>
./system/layers/base/org/wildfly/extension/undertow/main/module.xml: <module name="org.picketbox" optional="true"/>
./system/layers/base/org/wildfly/extension/picketlink/main/module.xml: <module name="org.picketbox"/>
./system/layers/base/org/wildfly/extension/messaging-activemq/main/module.xml: <module name="org.picketbox"/>
./system/layers/base/org/wildfly/iiop-openjdk/main/module.xml: <module name="org.picketbox"/>
./system/layers/base/org/apache/activemq/artemis/main/module.xml: <module name="org.picketbox"/>
./system/layers/base/org/picketlink/federation/bindings/main/module.xml: <module name="org.picketbox"/>
./system/layers/base/org/picketlink/federation/main/module.xml: <module name="org.picketbox"/>
./system/layers/base/org/jboss/as/webservices/main/module.xml: <module name="org.picketbox"/>
./system/layers/base/org/jboss/as/connector/main/module.xml: <module name="org.picketbox"/>
./system/layers/base/org/jboss/as/ejb3/main/module.xml: <module name="org.picketbox"/>
./system/layers/base/org/jboss/as/remoting/main/module.xml: <module name="org.picketbox" optional="true"/>
./system/layers/base/org/jboss/as/appclient/main/module.xml: <module name="org.picketbox"/>
./system/layers/base/org/jboss/as/security-api/main/module.xml: <module name="org.picketbox"/>
./system/layers/base/org/jboss/as/server/main/module.xml: <module name="org.picketbox" optional="true"/>
./system/layers/base/org/jboss/as/weld/main/module.xml: <module name="org.picketbox"/>
./system/layers/base/org/jboss/as/domain-management/main/module.xml: <module name="org.picketbox" optional="true"/>
./system/layers/base/org/jboss/as/cli/main/module.xml: <module name="org.picketbox" optional="true"/>
./system/layers/base/org/jboss/as/security/main/module.xml: <module name="org.picketbox"/>
./system/layers/base/org/jboss/as/security-integration/main/module.xml: <module name="org.picketbox">
./system/layers/base/org/jboss/ws/cxf/jbossws-cxf-client/main/module.xml: <module name="org.picketbox" export="true"/>
./system/layers/base/org/jboss/ws/cxf/jbossws-cxf-server/main/module.xml: <module name="org.picketbox"/>
./system/layers/base/org/jboss/ws/jaxws-client/main/module.xml: <module name="org.picketbox"/>
./system/layers/base/org/jboss/ironjacamar/impl/main/module.xml: <module name="org.picketbox"/>
./system/layers/base/org/jboss/security/negotiation/main/module.xml: <module name="org.picketbox"/>
{code}
The optional dependencies are probably Ok but the non-optional dependencies mean these will pull in the modules we do not want when these subsystems are provisioned.
As there are quite a few affected modules I will likely group these into related areas and create sub tasks to track the individual problems to be addressed.
Ignoring the optional dependencies the list of modules to target becomes:
* org.apache.activemq.artemis
* org.jboss.as.appclient
* org.jboss.as.connector
* org.jboss.as.ejb3
* org.jboss.as.webservices
* org.jboss.as.weld
* org.jboss.ironjacamar.impl
* org.jboss.ws.cxf.jbossws-cxf-client
* org.jboss.ws.cxf.jbossws-cxf-server
* org.jboss.ws.jaxws-client
* -org.wildfly.extension.batch.jberet-
* org.wildfly.extension.messaging-activemq
* org.wildfly.iiop-openjdk
> Fix modules with dependency on Legacy Security Subsystem or PicketBox
> ---------------------------------------------------------------------
>
> Key: WFLY-13659
> URL: https://issues.redhat.com/browse/WFLY-13659
> Project: WildFly
> Issue Type: Task
> Components: Security
> Reporter: Darran Lofthouse
> Assignee: Darran Lofthouse
> Priority: Critical
> Labels: EE9
> Fix For: 21.0.0.Beta1
>
>
> Various subsystems have dependencies on the legacy security subsystem, these need to be verified to make sure they are really required or adjusted to make optional.
> *org.jboss.as.security*
> {code}
> ./system/layers/base/org/wildfly/extension/request-controller/main/module.xml: <module name="org.jboss.as.security" optional="true"/>
> ./system/layers/base/org/wildfly/extension/io/main/module.xml: <module name="org.jboss.as.security" optional="true"/>
> ./system/layers/base/org/wildfly/extension/elytron/main/module.xml: <module name="org.jboss.as.security-integration" optional="true" services="import"/>
> ./system/layers/base/org/wildfly/extension/undertow/main/module.xml: <module name="org.jboss.as.security" optional="true"/>
> ./system/layers/base/org/wildfly/extension/picketlink/main/module.xml: <module name="org.jboss.as.security"/>
> ./system/layers/base/org/wildfly/extension/messaging-activemq/main/module.xml: <module name="org.jboss.as.security"/>
> ./system/layers/base/org/apache/activemq/artemis/main/module.xml: <module name="org.jboss.as.security"/>
> ./system/layers/base/org/jboss/as/vault-tool/main/module.xml: <main-class name="org.jboss.as.security.vault.VaultTool"/>
> ./system/layers/base/org/jboss/as/vault-tool/main/module.xml: <module name="org.jboss.as.security"/>
> ./system/layers/base/org/jboss/as/webservices/main/module.xml: <module name="org.jboss.as.security"/>
> ./system/layers/base/org/jboss/as/connector/main/module.xml: <module name="org.jboss.as.security"/>
> ./system/layers/base/org/jboss/as/ejb3/main/module.xml: <module name="org.jboss.as.security"/>
> ./system/layers/base/org/jboss/as/remoting/main/module.xml: <module name="org.jboss.as.security" optional="true"/>
> ./system/layers/base/org/jboss/as/appclient/main/module.xml: <module name="org.jboss.as.security"/>
> ./system/layers/base/org/jboss/as/server/main/module.xml: <module name="org.jboss.as.security" optional="true" services="import"/>
> ./system/layers/base/org/jboss/as/weld/common/main/module.xml: <module name="org.jboss.as.security" optional="true"/>
> {code}
> *org.picketbox*
> {code}
> ./system/layers/base/org/wildfly/extension/io/main/module.xml: <module name="org.picketbox" optional="true"/>
> ./system/layers/base/org/wildfly/extension/batch/jberet/main/module.xml: <module name="org.picketbox"/>
> ./system/layers/base/org/wildfly/extension/undertow/main/module.xml: <module name="org.picketbox" optional="true"/>
> ./system/layers/base/org/wildfly/extension/picketlink/main/module.xml: <module name="org.picketbox"/>
> ./system/layers/base/org/wildfly/extension/messaging-activemq/main/module.xml: <module name="org.picketbox"/>
> ./system/layers/base/org/wildfly/iiop-openjdk/main/module.xml: <module name="org.picketbox"/>
> ./system/layers/base/org/apache/activemq/artemis/main/module.xml: <module name="org.picketbox"/>
> ./system/layers/base/org/picketlink/federation/bindings/main/module.xml: <module name="org.picketbox"/>
> ./system/layers/base/org/picketlink/federation/main/module.xml: <module name="org.picketbox"/>
> ./system/layers/base/org/jboss/as/webservices/main/module.xml: <module name="org.picketbox"/>
> ./system/layers/base/org/jboss/as/connector/main/module.xml: <module name="org.picketbox"/>
> ./system/layers/base/org/jboss/as/ejb3/main/module.xml: <module name="org.picketbox"/>
> ./system/layers/base/org/jboss/as/remoting/main/module.xml: <module name="org.picketbox" optional="true"/>
> ./system/layers/base/org/jboss/as/appclient/main/module.xml: <module name="org.picketbox"/>
> ./system/layers/base/org/jboss/as/security-api/main/module.xml: <module name="org.picketbox"/>
> ./system/layers/base/org/jboss/as/server/main/module.xml: <module name="org.picketbox" optional="true"/>
> ./system/layers/base/org/jboss/as/weld/main/module.xml: <module name="org.picketbox"/>
> ./system/layers/base/org/jboss/as/domain-management/main/module.xml: <module name="org.picketbox" optional="true"/>
> ./system/layers/base/org/jboss/as/cli/main/module.xml: <module name="org.picketbox" optional="true"/>
> ./system/layers/base/org/jboss/as/security/main/module.xml: <module name="org.picketbox"/>
> ./system/layers/base/org/jboss/as/security-integration/main/module.xml: <module name="org.picketbox">
> ./system/layers/base/org/jboss/ws/cxf/jbossws-cxf-client/main/module.xml: <module name="org.picketbox" export="true"/>
> ./system/layers/base/org/jboss/ws/cxf/jbossws-cxf-server/main/module.xml: <module name="org.picketbox"/>
> ./system/layers/base/org/jboss/ws/jaxws-client/main/module.xml: <module name="org.picketbox"/>
> ./system/layers/base/org/jboss/ironjacamar/impl/main/module.xml: <module name="org.picketbox"/>
> ./system/layers/base/org/jboss/security/negotiation/main/module.xml: <module name="org.picketbox"/>
> {code}
> The optional dependencies are probably Ok but the non-optional dependencies mean these will pull in the modules we do not want when these subsystems are provisioned.
> As there are quite a few affected modules I will likely group these into related areas and create sub tasks to track the individual problems to be addressed.
> Ignoring the optional dependencies the list of modules to target becomes:
> * org.apache.activemq.artemis
> * org.jboss.as.appclient
> * org.jboss.as.connector
> * org.jboss.as.ejb3
> * org.jboss.as.webservices
> * -org.jboss.as.weld-
> * org.jboss.ironjacamar.impl
> * org.jboss.ws.cxf.jbossws-cxf-client
> * org.jboss.ws.cxf.jbossws-cxf-server
> * org.jboss.ws.jaxws-client
> * -org.wildfly.extension.batch.jberet-
> * org.wildfly.extension.messaging-activemq
> * org.wildfly.iiop-openjdk
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
5 years, 12 months