Consultor Eletrônico



Kbase 19796: User/password screen with no _User defined in the db
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   15/05/2000
Title: User/password screen with no _User defined in the Database


INTRODUCTION
============
When connecting to the database, you may get the user/password
screen, even if you did not define any users in the database.
This indicates an index corruption in the metaschema table _user.
This table keeps track of the users defined in the database through the Data Administration tool.
If you try to read the table through 4GL commands, you will notice
that the table is empty.
You may run the dbanalys report tool (proutil <db-name> -C dbanalys), and look at _user table. You will probably see that the table has 0 records but the index is greater than 3 bytes (when you haven't defined any user in the database, the index for the _user table has just 3 bytes).

DATABASE SUMMARY (2314)
Records Indexes
NAME Bytes Tot % Bytes Tot %
_User 0 0.0 17 0.0

So why does Progress show the user/password screen when connecting to the database? The reason is that the code uses 4GL function
CAN-FIND(first _user), which looks into the index (that seems to have
something in it, in this case), to find out if there are users defined
in the database.

SOLUTION
========

The solution for the index corruption is to rebuild the index for
_user table.
Run proutil <db-name> -C idxbuild. Choose "some", then type the table name "_user" and the index-name "_userid (index name).Type "!" to finish the index selection.

****BACKUP THE DATABASE BEFORE RUNNING INDEX REBUILD