5

I am getting the following WARN message while I start my host which is one of the Host Controller (HC) that is attached to the Domain Controller(DC).

[Server:server-two] 14:06:13,822 WARN [org.jboss.as.txn] (ServerService Thread Pool -- 33) JBAS010153: Node identifier property is set to the default value. Please make sure it is unique.

And my host-slave.xml has the following config...

        <server-identities>
             <!-- Replace this with either a base64 password of your own, or use a vault with a vault expression -->
             <secret value="c2xhdmVfdXNlcl9wYXNzd29yZA=="/>
        </server-identities>

I hope this config is the reason...... maybe I didn't understand..... but I couldn't find node identifier property rather this is the default secret value which I hope could be the cause of this WARN message.

However, I didn't mention HC to lookup host-slave.xml..... the command which I ran to start my HC is.....

[host-~-\-\-\bin]$./domain.sh -Djboss.domain.master.address=nnn.nn.nn.88 -b nnn.nn.nn.89 -bmanagement nnn.nn.nn.89 &

nnn.nn.nn.88 is my DC

Else please advise what's cause of the WARN message.

And please let me know the implication of this WARN message and advise us on the required config to overcome and sort out any consecutive consequences that would've been bound for this WARN.

Federico Navarrete
  • 3,069
  • 5
  • 41
  • 76
Dev Anand Sadasivam
  • 699
  • 7
  • 21
  • 49
  • In JBoss EAP 7 the same warning appears with a different ID: WFLYTX0013 instead of JBAS010153. – Pino Apr 10 '18 at 10:14

5 Answers5

17

I'm new to wildfly, and noticed this warning when I started it standalone from eclipse (I'm doing the following tutorial: https://wwu-pi.github.io/tutorials/lectures/eai/020_tutorial_jboss_project.html)

The fix was to add a node-identifier to the core-environment in the subsystem:

<subsystem xmlns="urn:jboss:domain:transactions:2.0">
        <core-environment node-identifier="meindertwillemhoving">
            <process-id>
                <uuid/>
            </process-id>
        </core-environment>
        <recovery-environment socket-binding="txn-recovery-environment" status-socket-binding="txn-status-manager"/>
</subsystem>

This is in file [wildfly]\standalone\configuration\standalone.xml. This is the same answer as https://developer.jboss.org/message/880136#880136

Meindert
  • 384
  • 2
  • 9
  • 1
    The answer is correct. I just want to add that the CLI command for setting the node identifier is `/subsystem=transactions:write-attribute(name=node-identifier,value=someuniquevalue)`. And I am using Red Hat JBoss EAP 7, where the error code is `WFLYTX0013` (everything else seems to be identical). – jschreiner Sep 26 '17 at 15:11
  • is meindertwillemhoving mean something or any unique name – Mina Fawzy Dec 11 '20 at 16:27
2

According to WFLY-10541 if you are using WildFly v14.0.0 or newer you can pass the following to the startup script to set the transaction node identifier:

-Djboss.tx.node.id=<some-unique-id>
kaptan
  • 3,060
  • 5
  • 34
  • 46
  • Thanks! _for_ the `java property` - probably the specific one, but, however,- very specific one,- is that the Spec. is clear **WFLY-10541**. Maybe I am sustaining the Question! as other irrelevance popped in my Technicality! Apologize. – Dev Anand Sadasivam Feb 20 '19 at 04:26
  • @DevAnandSadasivam I just thought I drop this here for anyone who ends up with the similar issue and visits this page. It might help them :) I am not after upvotes or accepted answer :D – kaptan Feb 20 '19 at 20:48
  • I used this to get rid of the warning. But then the logging stopped. I'm running Wildfly 25.0.1 version. When I remove the property, the logging starts again. – codyLine Nov 15 '21 at 11:49
2

Setting the node identifier to an unique value is only required for proper handling of XA Transactions. You can set it as follows in your XML configuration:

<subsystem xmlns="urn:jboss:domain:transactions:6.0">
    <core-environment node-identifier="${jboss.tx.node.id}">

It needs to be a unique value up to 23 bytes long. More about this here: http://www.mastertheboss.com/jboss-server/jboss-configuration/configuring-transactions-jta-using-jboss-as7-wildfly

Francesco Marchioni
  • 4,091
  • 1
  • 25
  • 40
0

For this <server-identities> is not the issue. In fact, it shouldn't be touched at all.

When JBoss is started in domain mode by domain.sh, by default there will be three servers server-one server-two server-three. When you are running one more HC attached to the DC.... the defaulted server which is in auto-start mode will get clash when we start HC attaching to DC,- by the following command.

[host-~-\-\-\bin]$./domain.sh -Djboss.domain.master.address=nnn.nn.nn.88 -b nnn.nn.nn.89 -bmanagement nnn.nn.nn.89 &

Or by having the host configuration at HC (default host.xml... until unless we choose a different one....).

<domain-controller>
      <remote host="${jboss.domain.master.address:nnn.nn.nn.88}" port="${jboss.domain.master.port:9999}" security-realm="ManagementRealm"/>
<domain-controller>

In order to solve this, we need to turn auto-start to false..... And we need to create a new server-group...... To that group we need to add dc-created-server and hc-created-server..... we can choose the appropriate same profile either full-ha or full for both created servers across DC and HC.

SO when we start the group by configuring the required HEAP size including permgen space... You could start both DC and HC.... and in DC you could see both of your-created-servers are started in the created server-group.

DC- Domain Controller
HC- Host Controller

To deploy you need to upload .ear or web-archive in the Application Console. You cannot place it in the deployments folder as how you do in standalone mode with .dodeploy file.

If you upload the same .ear next version do the Replace option instead of the Remove & Add option in the upload process.

Federico Navarrete
  • 3,069
  • 5
  • 41
  • 76
Dev Anand Sadasivam
  • 699
  • 7
  • 21
  • 49
0

Building on @kaptan's answer I added the following to the bottom of bin/standalone.conf:

JAVA_OPTS="$JAVA_OPTS -Djboss.tx.node.id=`hostname -f`

This way I don't have to remember to add the "-Djboss.tx.node.id=" when running up wildfly by hand.

Federico Navarrete
  • 3,069
  • 5
  • 41
  • 76
Dobbo
  • 1,188
  • 3
  • 16
  • 27