Bug 1139102

Summary: The node-identifier default value uses invalid dash char '-'
Product: [JBoss] JBoss Enterprise Application Platform 6 Reporter: Takayoshi Kimura <tkimura>
Component: Transaction ManagerAssignee: tom.jenkinson
Status: CLOSED CURRENTRELEASE QA Contact: Hayk Hovsepyan <hhovsepy>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 6.3.0CC: hhovsepy, kkhan, ochaloup
Target Milestone: DR12   
Target Release: EAP 6.4.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-08-19 12:38:37 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1143956    
Bug Blocks:    

Description Takayoshi Kimura 2014-09-08 05:11:27 UTC
The node-identifier doesn't accept dash char '-' but generated default value contains that char becuase the Utility.getpid() returns signed int. See the following inconsistent error message.

> 11:40:01,575 WARN  [com.arjuna.ats.arjuna] (ajp-/0.0.0.0:8009-1) ARJUNA012132: Supplied name of node contains reserved character -. Using Arjuna:-2044534771

Workaround exists, set correct node-identifier value manually.

Comment 1 tom.jenkinson 2014-09-08 07:08:15 UTC
Hi Takayoshi,

In production we should always recommend setting the node-identifier manually. What configuration are you using? My gut reaction is to ask you to make this a docs bug to ensure it is made clear there. It would be useful to link to the section where it is suggested it is OK to not manually set the node-identifier.

Tom

Comment 2 Takayoshi Kimura 2014-09-08 07:46:56 UTC
Yes we always recommend to set it manually.

The story was, the customer assigned ${jboss.node.name} to the node-identifier, but the node name was like "jboss-node1" and got this WARN message. The customer fixed the name, so it's no longer a problem but wonders about this puzzling WARN message.

The config is pretty much EAP 6 default, uuid process id.

Comment 3 tom.jenkinson 2014-09-08 10:43:17 UTC
Hi Takayoshi,

I think the fix should be to fail to start up if an invalid node name is specified. TBH I thought it did that but it looks like that is just in master. If you are happy I will modify this Jira to address that.

Tom

Comment 4 Takayoshi Kimura 2014-09-09 00:50:55 UTC
Yes I agree with you, we need validation at boot time.

1. Invalid node-identifier specified it should fail at boot.
2. No node-identifier specified, warn it, generate default.

What do we do in #2 scenario? In some cases XA is not used at all so we may allow no node-identifier configuration but it would be a problem when XA is actually used.

Comment 5 tom.jenkinson 2014-09-09 09:19:32 UTC
Hi Takayoshi,

There is a default of "1" allocated in the integration code. The times to override that are if there are multiple servers accessing the same resource manager or they are using JTS. I guess one of these scenarios is true for your customer and hence they have overriden the default.

Thanks,
Tom

Comment 6 Takayoshi Kimura 2014-09-10 00:45:15 UTC
Ok, I'm fine as long as we WARN at boot time if the value remains the default "1".

Comment 7 JBoss JIRA Server 2014-09-16 14:55:10 UTC
Tom Jenkinson <tom.jenkinson> updated the status of jira JBTM-1341 to Closed

Comment 8 tom.jenkinson 2014-09-16 14:57:14 UTC
I have fixed this upstream, the validation about the "-" was not required anyway but I validate the length of the identifier at startup which is required

Comment 9 tom.jenkinson 2014-12-05 13:48:47 UTC
Fixed in 4.17.23

Comment 10 Hayk Hovsepyan 2014-12-08 10:10:01 UTC
Verified on revision EAP 6.4.0.DR12.

Now when node-identifier is not set, it shows warning message "Node identifier property is set to the default value. Please make sure it is unique." in startup.

It checks the length of node-identifier on startup. "Values must have a maximum length of 23 characters" error is shown.

It is possible to specify node-identifier with dash char '-' in the name.