This project has moved and is read-only. For the latest updates, please go here.
1

Closed

Issues with admin suite

description

I have installed postgreSQL 9.6.1 and I am able to connect to the database via psql and pgAdmin but I have no luck with admin suite.

I am getting the error message: Failed to connect to database!
MLifter.Generics.ServerOfflineException: Eine Ausnahme vom Typ "´MLifter.Generics.ServerOfflineException" wurde ausgelöst.
bei MLifter.BusinessLayer.FolderIndexEntry.Login(IUser user)
bei MLifter.BusinessLayer.LearningModulesIndex.GetFolderOfConnection(IConnectionString connection)
be SecurityAdminSuite.Facade.ctor()

In DebugView of sysinternal I am getting this message if I start admin suite:

[2216] ds\security\smartscreen\common\core\src\script_host.cpp(51)\smartscreen.exe!00007FF7030C5697: (caller: 00007FF7030C5DD8) Exception(1) tid(1c04) 80070001 Unzulässige Funktion.
[2216] Msg:[Unable to get property 'substr' of undefined or null reference - TypeError: Unable to get property 'substr' of undefined or null reference
[2216] at ShellCallbacks.isFileSupported (Unknown script code:1:2413)
[2216] at ShellCallbacks.prototype.getSamplingRate (Unknown script code:1:2988)
[2216] at Anonymous function (Unknown script code:1:925)
[2216] at Array.prototype.reduce (native code)
[2216] at CallbacksBase.prototype.getSamplingRates (Unknown script code:1:900)
[2216] at CallbacksBase.prototype.filterEvents (Unknown script code:1:2036)
[2216] at filterEvents (Unknown script code:1:43)
[2216] at _dispatch (Unknown script code:13:21)]
[4388] shell\explorer\taskband2\taskband2.cpp(4148)\Explorer.EXE!00007FF74C07792A: (caller: 00007FFEC99B7DE3) ReturnHr(350) tid(21c4) 80004005 Unbekannter Fehler
[932] onecore\base\appmodel\resourcepolicy\gameconfigstore\server\gameconfigstoreserver.cpp(535)\resourcepolicyserver.dll!00007FFEC66065EB: (caller: 00007FFEC6609C7B) LogHr(303) tid(1620) 80070002 Das System kann die angegebene Datei nicht finden.
[932] onecore\base\appmodel\resourcepolicy\gameconfigstore\server\gameconfigstoreserver.cpp(1999)\resourcepolicyserver.dll!00007FFEC6609C9D: (caller: 00007FFEC66092AC) LogHr(304) tid(1620) 80070002 Das System kann die angegebene Datei nicht finden.
[932] onecore\base\appmodel\resourcepolicy\gameconfigstore\server\gameconfigstoreserver.cpp(2147)\resourcepolicyserver.dll!00007FFEC660A246: (caller: 00007FFEC66092BD) LogHr(305) tid(1620) 80070490 Element nicht gefunden.
[932] onecore\base\appmodel\resourcepolicy\gameconfigstore\server\gameconfigstorerpcserver.cpp(437)\resourcepolicyserver.dll!00007FFEC66045AC: (caller: 00007FFEC99B7DE3) LogHr(306) tid(1620) 80070490 Element nicht gefunden.
[4388] onecore\base\appmodel\resourcepolicy\gameconfigstore\client\gameconfigstoreclient.cpp(104)\resourcepolicyclient.dll!00007FFEC6AC976C: (caller: 00007FFEB33986C3) LogHr(46) tid(1e24) 80070490 Element nicht gefunden.
[4388] shell\explorer\taskband2\taskband2.cpp(4148)\Explorer.EXE!00007FF74C07792A: (caller: 00007FFEC99B7DE3) ReturnHr(351) tid(21c4) 80004005 Unbekannter Fehler

My gp_hga.conf contains:

TYPE DATABASE USER CIDR-ADDRESS METHOD

IPv4 local & remote connections:

host all all 127.0.0.1/32 trust
host all all 0.0.0.0/0 trust

IPv6 local connections:

host all all ::1/128 trust
host all all ::0/0 trust

This should allow alle connections from ip v4 and ip v6.

What can be the reason that admin suite cannot connect to the database?
Closed Jan 24 at 5:49 PM by CFI

comments

rupp0000 wrote Dec 13, 2016 at 10:18 PM

I have an additional information for this issue.

I have given the user access rights to the memoryLifter program folder.
After I have started the admin suite with this user a file with name: AdminSuiteTrace.log was generated.

In this file had following content::

Npgsql.NpgsqlException:
function GetUserList() does not exist
Severity: ERROR
Code: 42883
Hint: No function matches the given name and argument types. You might need to add explicit type casts.
bei Npgsql.NpgsqlState.<ProcessBackendResponses_Ver_3>d__a.MoveNext()
bei Npgsql.ForwardsOnlyDataReader.GetNextResponseObject()
bei Npgsql.ForwardsOnlyDataReader.GetNextRowDescription()
bei Npgsql.ForwardsOnlyDataReader.NextResult()
bei Npgsql.ForwardsOnlyDataReader..ctor(IEnumerable`1 dataEnumeration, CommandBehavior behavior, NpgsqlCommand command, NotificationThreadBlock threadBlock, Boolean synchOnReadError)
bei Npgsql.NpgsqlCommand.GetReader(CommandBehavior cb)
bei Npgsql.NpgsqlCommand.ExecuteReader(CommandBehavior cb)
bei MLifter.DAL.DB.PostgreSQL.PgSqlUserConnector.GetUserList()
bei MLifter.DAL.UserFactory.GetUserList(ConnectionStringStruct connectionString)
bei MLifter.Controls.UserAuthControl.SetListItems()
bei MLifter.Controls.UserAuthControl.Initialize(ConnectionStringStruct connection, UserStruct lastUser)
bei MLifter.Controls.LoginForm.OpenLoginForm(UserStruct userStruct, ConnectionStringStruct connection)
bei SecurityAdminSuite.Facade.GetUser(UserStruct user, ConnectionStringStruct connection)
bei MLifter.DAL.User.GetDbUser(ConnectionStringStruct connection, DataAccessErrorDelegate errorMessageDelegate, Boolean standAlone)
bei MLifter.DAL.User..ctor(GetLoginInformation getLoginInformation, ConnectionStringStruct connectionString, DataAccessErrorDelegate errorMessageDelegate, Boolean standAlone)
bei MLifter.DAL.UserFactory.Create(GetLoginInformation loginMethodDelegate, ConnectionStringStruct connectionString, DataAccessErrorDelegate errorMessageDelegate, Object userContext, Boolean standAlone)
bei MLifter.BusinessLayer.FolderIndexEntry.Login(IUser user)

It seems that MemoryLIfter is not compatible to PostgreSQL 9.6.1.

rupp0000 wrote Dec 13, 2016 at 10:49 PM

I have now uninstalled the postgreSQL 9.6.1 and have installed the older version postgreSQL 9.2.19.
Unfortunately I get now the same error.

CFI wrote Dec 14, 2016 at 6:03 AM

Hi,

did you execute the "MemoryLifterServerDatabaseScript.sql" script in your DB?

regards
Christoph

rupp0000 wrote Dec 14, 2016 at 8:30 AM

Yes, I have executed the script. But the function GetUserList is not in the memoryLifter database.

I have repeated the execution of the script and there was an error message during creating of the function GetUserList:

[WARNING ] CREATE OR REPLACE FUNCTION "GetUserList"() RETURNS SETOF "UserStruct" AS $$
                SELECT username, user_type FROM "UserProfiles" WHERE user_type != 'LocalDirectoryAuthentication';
        $$ LANGUAGE 'SQL' SECURITY DEFINER
        ERROR:  language "SQL" does not exist

rupp0000 wrote Dec 14, 2016 at 8:36 AM

I changed no the 'SQL' into 'sql' and I was able to create the function.

Then I was able to start the admin suite.

Thank you for the hint to the script.

Please adapt the SQL script and change the 'SQL' into 'sql'.

Here is the whole part for the GetUserList function which works:
CREATE OR REPLACE FUNCTION "GetUserList"() RETURNS SETOF "UserStruct" AS $$
        SELECT username, user_type FROM "UserProfiles" WHERE user_type != 'LocalDirectoryAuthentication';
$$ LANGUAGE 'sql' SECURITY DEFINER;

CFI wrote Dec 14, 2016 at 10:26 AM

Ah, thanks for the info. Will change that for the future...

wrote Jan 24 at 5:49 PM

Resolved with changeset 35664: fix SQL script

wrote Jan 24 at 5:50 PM

Associated with changeset 35665: MERGE to MAIN