Domino on Linux/Unix, Troubleshooting, Best Practices, Tips and more ...

Odd hex code instead of log messages when using my Domino Start Script

Daniel Nashed  12 March 2010 16:21:45


The most common question I get about my start script is about an issue with missing or wrong setup res files causing hex number output instead of the log messages.
I am still not sure why the res directory is created in the wrong way but I want to raise the awareness for this issue and try to explain the background.
I will also document in in the next version of my start script in the troubleshooting section.

In some cases when you start the Domino server with my start script you see hex codes instead of log message.

The output looks similar to this instead of real log messages.

12.03.2010 13:59:31 07:92: 0A:0A
12.03.2010 13:59:31 03:51: 07:92

Here is the background about what happens:

Domino uses string resources for error messages on Windows which are linked into the binary.
On Unix there are normally no string resources and IBM/Lotus uses the res files created on Windows in combination which code that reads those string resources for error output.
In theory there could be separate version of res files for each language and there used to be res files which have been language dependent.
So there is code in place in Domino to check for the locale and find the right language for error message.

But there are no localized resources for the error codes any more since Domino ships as English version with localized language packs (not containing res files any more).
This means there is only one set of res Files in English containing all the error text for the core code (a file called strings.res) and one per server tasks using string resources.
Most business partner applications do not leverage string resources and use other log calls. One of my application used a res files (nshdbcat) but it was always complicate to also write the nshdbcat.res into the right directory and to explain what it does.

So string resources contain all the error texts and if Domino does not found the res files the server will only log the error codes instead.

By default the res files should be installed into the standard local of the server called "C".
In some cases the installer does copy the res files into a locale specific directory. For example ../res/de_DE for German.
I personally never had any case but I get a mail at least once per month from somone installing my start script who is running into this issue.

My start script sets the locale of the server. For example to LANG=de_DE or LANG=en_US.
If this locale is different than the locale you installed the server with, the Domino server will not find the res files in those cases.

The right location for the res files would be for example on Linux:

/opt/lotus/notes/latest/linux/res/C/strings.res

But in some cases it looks like this

/opt/lotus/notes/latest/linux/res/de_DE/strings.res

The solution for this issue is to move the de_DE directory to C (e.g. mv de_DE C) and your server will find the res files independent of the locale configured on the server.

It's not an issue my start script could handle directly. I could put in a sanity check if at least the strings.res can be found and give out an error message.
Do you think a check in the script logic would make sense? Or would an info in the troubleshooting section of my start script be sufficient?

-- Daniel

Comments

1Henning Heinz  12.03.2010 18:44:17  Odd hex code instead of log messages when using my Domino Start Script

I think I only symlink the missing directories and it seems to work fine. I am not sure but if you move directories can't this cause some trouble if you upgrade your release and forget to move again!?

A check would be great as long as you don't do it like for example vsftpd which just checks if the conf file contains a "service=yes" option and if not just exists the script ;-)

Your script really is awesome..

2Daniel Nashed  18.03.2010 0:15:30  Odd hex code instead of log messages when using my Domino Start Script

A sym link would be also a good workaround. I still have no idea why this is happening in the installer.

It's a good point that an update could cause further problems because you might end up having an old and new directory.

But I still think it would be important to correct it and in future check each time you do an install.

I will put both work-arounds into the readme for the next version. There are currently no pending changes in the script.

And I don't want to release a new version just for the doc update. But I will put it on the list for the new version.

Thanks for your feedback!

-- Daniel

3Joxy  06.07.2010 15:56:11  Odd hex code instead of log messages when using my Domino Start Script

First of all... sorry for my English.

I'm trying to install 8.5.1 on CentOs 5.5

My problem is that my directory is

/opt/ibm/lotus/notes/latest/linux/res/it_IT.UTF-8

Another thing, I'm very very new in "linux"

Tks in advance

4Daniel Nashed  12.07.2010 9:25:46  Odd hex code instead of log messages when using my Domino Start Script

@Joxy, you need to rename the directory /opt/ibm/lotus/notes/latest/linux/res/it_IT.UTF-8 to /opt/ibm/lotus/notes/latest/linux/res/C

the C is the standard locale. please let me know if this works for you by mail

-- Daniel

5Joxy  20.07.2010 9:30:56  Odd hex code instead of log messages when using my Domino Start Script

Dear Daniel,

sorry for late replay, but last week I was out of office (for job).

As I say you on my last message, I'm new on Linux .... is it possible (as in Windows) start server in a console?

This morning I try your suggestion, and works well.