Kbase P125455: gethostname return code causes prodb and procopy to fail on Linux when creating .lk file
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  27/08/2009 |
|
Status: Verified
SYMPTOM(s):
gethostname return code causes prodb and procopy to fail on Linux when creating .lk file
prodb fails with error The file dbname.lk exists.
The file DBname exists. This indicates one of: (528)
The database is in use by another user. (529)
The last session terminated abnormally. (530)
If you are CERTAIN the database is not in use by any user or server, (531)
simply erase DBname.lk and try again. (532)
Create a new database using the prodb fails
Create a new database using the procopy fails
prostrct repair of database on Linux fails with error (6928)
Unable to create lock file. (6928)
Database fails to start on Linux with error (8619)
This process terminated with exit code <number>. (8619)
This process terminated with exit code 2. (8619)
Database lg file is not created.
Database lk file still exists after the failure.
FACT(s) (Environment):
Linux Intel
OpenEdge 10.1x
CAUSE:
Hostname is set to > 30 characters. The hostname on Linux is limited to 255 bytes. The gethostname function returns the correct hostname value, however the return code is a -1 which means that the gethostname function failed. The -1 return code results in Progress setting the hostname in the .lk file to nulls rather than the value returned by the gethostname function.
FIX:
A workaround for this issue is to set the hostname to < = 30 characters.
To determine the length of your hostname issue the following command:
hostname | wc -c (the wc -c is the wc command which can be used to count lines, characters etc.)
To change the hostname, login as root and then issue the following command:
hostname <newhostname>