Server ID Shows as $action.serverId, $action.sid or n.v.
Symptoms
- When looking at the Server ID field in
Administration >> License Details
, the value$action.serverId
appears. This may result in an upgrade problem documented at CONFSERVER-10576 - Upgrade fails due to NullPointerException in ConfluenceTrustedApplicationsManager. - When looking at the Server ID field in
Administration >> License Details
, the value$action.sid
appears. Or when looking at the Server-ID field inAdministration >> System Information
, the valuen.v.
appears.
Cause
- There is no Server ID on the database.
- There is a Server ID on the database, but it's somehow malformed and hence Confluence couldn't pick it up.
Resolution
Always back up your data before performing any modifications to the database. If possible, test any alter, insert, update, or delete SQL commands on a staging server first.
Always back up your data before performing any modifications to the database. If possible, test any alter, insert, update, or delete SQL commands on a staging server first.
Cause #1
- If you are using Confluence 3.x and above, to find your Server ID:
- Open <your-confluence-home-folder>/confluence.cfg.xml
Find the confluence.setup.server.id property:
<property name="confluence.setup.server.id">XXXX-XXXX-XXXX-XXXX</property>
Note the Server ID
- Proceed to Step 3
Check the Server ID in the database:
select * from BANDANA where bandanakey = 'confluence.server.id';
It should return an empty result. If so, proceed with the next step. Otherwise, it should be the cause #2.
Insert the correct Server ID by running the following SQL query against Confluence database:
INSERT INTO BANDANA VALUES (FREE-BANDANAID-VALUE, '_GLOBAL', 'confluence.server.id', '<string>Your-Server-ID</string>');
Please remember to change Your-Server-ID to your server ID value.
Please remember to change FREE-BANDANAID-VALUE to a free ID value. The BANDANAID value for the serverID is one of the earliest entries in the bandana table (less then 20) so if it is missing there will be a gap in the sequence. Use the value of the missing entry for FREE-BANDANAID-VALUE in the above insert statement. If there is no gap, increment the highest value that is two digits or less by one and use that.
- Restart Confluence
Cause #2
Ensure that the Server ID in the database is in correct format. It should look something like this in
BANDANA
table, otherwise, Confluence won't be able to understand it.BANDANAID BANDANACONTEXT BANDANAKEY BANDANAVALUE 6 _GLOBAL confluence.server.id <string>XXXX-XXXX-XXXX-XXXX</string> Note the
string
tag.If it is not correct, modify it by running the following SQL query:
update BANDANA set bandanavalue = '<string>XXXX-XXXX-XXXX-XXXX</string>' where bandanakey = 'confluence.server.id';
- Restart Confluence