openlink / virtuoso-opensource

Virtuoso is a high-performance and scalable Multi-Model RDBMS, Data Integration Middleware, Linked Data Deployment, and HTTP Application Server Platform
http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/
Other
848 stars 214 forks source link

User Accounts page broken in Conductor (OS Virtuoso 7.x Docker image) #1304

Open namedgraph opened 1 week ago

namedgraph commented 1 week ago

When I try to navigate to the User Accounts page in conductor, I get this error:

An error has occurred when processing "/conductor/accounts_page.vspx" page.
SQL State   42000
SQL Message 
U0002: The object "  { " does not exist.
image
HughWilliams commented 1 week ago

I just instantiated the same gitid latest Virtuoso 7.2 open source docker image ie Version 7.2.13.3240-pthreads as of Jun 10 2024 (a1fd8195bf) from scratch and I am able to access the Conductor User Accounts tab and successfully create a new user account ...

Screenshot 2024-06-28 at 14 36 36

Is your docker a fresh installation or possibly applied to an existing database or something ? If you have an existing database what are the version details of your Conductor VAD in the System Admin -> Packages tab ?

TallTed commented 1 week ago

@namedgraph — Please always provide the actual version string for the instance in question, so we can tell what you mean by "OS Virtuoso 7.x Docker image" or similar, as these always change over time and sometimes change by different command options or other local configuration variables. You can easily get the full version details (always including the git_head value!) through the commandline (virtuoso-t -?) or SPARQL.

namedgraph commented 1 week ago

Version: 07.20.3240 Build: Jun 10 2024 git_head: a1fd8195bf

namedgraph commented 1 week ago

@HughWilliams it's a fresh install that I ingested some data into using the bulk loader.

image
namedgraph commented 1 week ago

BTW I managed to solve the auth problem using the command line:

docker-compose exec virtuoso isql exec='grant SPARQL_UPDATE to "SPARQL";'
HughWilliams commented 1 week ago

What is the auth problem you are referring to, as I don't see how running grant SPARQL_UPDATE to "SPARQL"; would resolve the problem reported in this git issue loading the Conductor User Accounts tab/page ?

namedgraph commented 1 week ago

What is the auth problem you are referring to, as I don't see how running grant SPARQL_UPDATE to "SPARQL"; would resolve the problem reported in this git issue loading the Conductor User Accounts tab/page ?

Sorry, the original problem was enabling updates for the Graph Store Protocol (sparql-graph-crud). Your documentation indicated it could be enabled through User Accounts. I assume the command does the same?

HughWilliams commented 1 week ago

OK, I see what you mean, you were seeking to set the SPARQL_UPDATE role to the SPARQL user via the Conductor.

Although still does not explain why you can't access the Conductor User Account page, as it works in multiple tests we have performed. You could try using the trace_on() function to log more information which might give more details on the cause of the error.

TallTed commented 1 week ago

The original problem reported here, i.e., the inability to get to the User Accounts page in the Conductor, may be a sign of other issues, or it may be a simple bug of its own. We'd like to properly fix whichever of these is the case.

The grant SPARQL_UPDATE statement does what the Conductor would do under the covers, so you should be able to use the sparql-graph-crud updates — but please be aware that granting the SPARQL_UPDATE role to the SPARQL user also means that the default /sparql endpoint can also perform updates, which may not be desirable.

We would appreciate getting the logs Hugh mentioned. It would be good to fix whatever is causing that Conductor issue.