You are not logged in.
Das habe ich gemacht:
Jetzt kommt diese Meldung:
Caused by: org.postgresql.util.PSQLException: ERROR: update or delete on table "rs_user" violates foreign key constraint "fk_ag4u7ntsj4k38buq7apbp2ew4" on table "rs_sched_execute_script_job"
Gruß
Christoph
Offline
kompletter Output:
11-Jan-2022 16:18:19.493 SEVERE [scriptExec-84] org.hibernate.engine.jdbc.spi.SqlExceptionHelper.logExceptions ERROR: update or delete on table "rs_user" violates foreign key constraint "fk_ag4u7ntsj4k38buq7apbp2ew4" on table "rs_sched_execute_script_job"
Detail: Key (id)=(1565503) is still referenced from table "rs_sched_execute_script_job".
11-Jan-2022 16:18:19.528 SEVERE [scriptExec-84] org.hibernate.engine.jdbc.spi.SqlExceptionHelper.logExceptions ERROR: current transaction is aborted, commands ignored until end of transaction block
11-Jan-2022 16:18:19.530 WARNING [scriptExec-84] net.datenwerke.rs.scripting.service.scripting.terminal.commands.ExecScriptCommand$1$1.doFilter Unable to provision, see the following errors:
1) Error injecting method, javax.persistence.PersistenceException: org.hibernate.exception.GenericJDBCException: could not execute statement
at net.datenwerke.security.service.eventlogger.DwLoggedEvent.setAuthenticatorServiceProvider(DwLoggedEvent.java:40)
while locating net.datenwerke.rs.scripting.service.scripting.events.ScriptExecutionFailedEvent
1 error
com.google.inject.ProvisionException: Unable to provision, see the following errors:
1) Error injecting method, javax.persistence.PersistenceException: org.hibernate.exception.GenericJDBCException: could not execute statement
at net.datenwerke.security.service.eventlogger.DwLoggedEvent.setAuthenticatorServiceProvider(DwLoggedEvent.java:40)
while locating net.datenwerke.rs.scripting.service.scripting.events.ScriptExecutionFailedEvent
1 error
at com.google.inject.internal.InternalProvisionException.toProvisionException(InternalProvisionException.java:226)
at com.google.inject.internal.MembersInjectorImpl.injectMembers(MembersInjectorImpl.java:73)
at com.google.inject.internal.InjectorImpl.injectMembers(InjectorImpl.java:1055)
at net.datenwerke.rs.utils.eventbus.EventBusImpl.fireEvent(EventBusImpl.java:74)
at net.datenwerke.rs.scripting.service.scripting.ScriptingServiceImpl.executeScript(ScriptingServiceImpl.java:265)
at net.datenwerke.rsenterprise.license.service.EnterpriseCheckInterceptor.invoke(EnterpriseCheckInterceptor.java:35)
at net.datenwerke.rs.scripting.service.scripting.ScriptingServiceImpl.executeScript(ScriptingServiceImpl.java:317)
at net.datenwerke.rsenterprise.license.service.EnterpriseCheckInterceptor.invoke(EnterpriseCheckInterceptor.java:35)
at net.datenwerke.rs.scripting.service.scripting.ScriptingServiceImpl.executeScript(ScriptingServiceImpl.java:288)
at net.datenwerke.rsenterprise.license.service.EnterpriseCheckInterceptor.invoke(EnterpriseCheckInterceptor.java:35)
at net.datenwerke.rs.scripting.service.scripting.terminal.commands.ExecScriptCommand.doTransactionExecute(ExecScriptCommand.java:345)
at com.google.inject.persist.jpa.JpaLocalTxnInterceptor.invoke(JpaLocalTxnInterceptor.java:64)
at net.datenwerke.rs.scripting.service.scripting.terminal.commands.ExecScriptCommand$1$1.doFilter(ExecScriptCommand.java:269)
at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:89)
at com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:121)
at com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:133)
at net.datenwerke.rs.scripting.service.scripting.terminal.commands.ExecScriptCommand$1.call(ExecScriptCommand.java:263)
at net.datenwerke.rs.scripting.service.scripting.terminal.commands.ExecScriptCommand$1.call(ExecScriptCommand.java:1)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.lang.Thread.run(Thread.java:830)
Caused by: javax.persistence.PersistenceException: org.hibernate.exception.GenericJDBCException: could not execute statement
at org.hibernate.jpa.spi.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1692)
at org.hibernate.jpa.spi.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1602)
at org.hibernate.jpa.internal.QueryImpl.getSingleResult(QueryImpl.java:513)
at org.hibernate.jpa.criteria.compile.CriteriaQueryTypeQueryAdapter.getSingleResult(CriteriaQueryTypeQueryAdapter.java:54)
at net.datenwerke.rs.utils.simplequery.byid.QueryByIdProcessor.process(QueryByIdProcessor.java:69)
at net.datenwerke.rs.utils.simplequery.byid.QueryByIdInterceptor.invoke(QueryByIdInterceptor.java:24)
at net.datenwerke.security.service.authenticator.RequestUserCacheImpl.getUser(RequestUserCacheImpl.java:30)
at net.datenwerke.security.service.authenticator.AuthenticatorServiceImpl.getCurrentUser(AuthenticatorServiceImpl.java:183)
at net.datenwerke.security.service.eventlogger.DwLoggedEvent.setAuthenticatorServiceProvider(DwLoggedEvent.java:41)
at net.datenwerke.security.service.eventlogger.DwLoggedEvent$$FastClassByGuice$$fa3a5d39.invoke(<generated>)
at com.google.inject.internal.SingleMethodInjector$1.invoke(SingleMethodInjector.java:51)
at com.google.inject.internal.SingleMethodInjector.inject(SingleMethodInjector.java:85)
at com.google.inject.internal.MembersInjectorImpl.injectMembers(MembersInjectorImpl.java:147)
at com.google.inject.internal.MembersInjectorImpl.injectAndNotify(MembersInjectorImpl.java:101)
at com.google.inject.internal.MembersInjectorImpl.injectMembers(MembersInjectorImpl.java:71)
... 18 more
Caused by: org.hibernate.exception.GenericJDBCException: could not execute statement
at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:47)
at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:109)
at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:95)
at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:207)
at org.hibernate.persister.entity.AbstractEntityPersister.delete(AbstractEntityPersister.java:3200)
at org.hibernate.persister.entity.AbstractEntityPersister.delete(AbstractEntityPersister.java:3433)
at org.hibernate.action.internal.EntityDeleteAction.execute(EntityDeleteAction.java:98)
at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:451)
at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:336)
at org.hibernate.event.internal.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:335)
at org.hibernate.event.internal.DefaultAutoFlushEventListener.onAutoFlush(DefaultAutoFlushEventListener.java:50)
at org.hibernate.internal.SessionImpl.autoFlushIfRequired(SessionImpl.java:1193)
at org.hibernate.internal.SessionImpl.list(SessionImpl.java:1261)
at org.hibernate.internal.QueryImpl.list(QueryImpl.java:87)
at org.hibernate.jpa.internal.QueryImpl.list(QueryImpl.java:567)
at org.hibernate.jpa.internal.QueryImpl.getSingleResult(QueryImpl.java:482)
... 30 more
Caused by: org.postgresql.util.PSQLException: ERROR: current transaction is aborted, commands ignored until end of transaction block
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2533)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2268)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:313)
at org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:448)
at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:369)
at org.postgresql.jdbc.PgPreparedStatement.executeWithFlags(PgPreparedStatement.java:159)
at org.postgresql.jdbc.PgPreparedStatement.executeUpdate(PgPreparedStatement.java:125)
at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeUpdate(NewProxyPreparedStatement.java:1449)
at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:204)
... 42 more
Caused by: org.postgresql.util.PSQLException: ERROR: update or delete on table "rs_user" violates foreign key constraint "fk_ag4u7ntsj4k38buq7apbp2ew4" on table "rs_sched_execute_script_job"
Detail: Key (id)=(1565503) is still referenced from table "rs_sched_execute_script_job".
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2533)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2268)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:313)
at org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:448)
at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:369)
at org.postgresql.jdbc.PgPreparedStatement.executeWithFlags(PgPreparedStatement.java:159)
at org.postgresql.jdbc.PgPreparedStatement.executeUpdate(PgPreparedStatement.java:125)
at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeUpdate(NewProxyPreparedStatement.java:1449)
at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:204)
at org.hibernate.persister.entity.AbstractEntityPersister.delete(AbstractEntityPersister.java:3200)
at org.hibernate.persister.entity.AbstractEntityPersister.delete(AbstractEntityPersister.java:3433)
at org.hibernate.action.internal.EntityDeleteAction.execute(EntityDeleteAction.java:98)
at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:451)
at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:336)
at org.hibernate.event.internal.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:335)
at org.hibernate.event.internal.DefaultAutoFlushEventListener.onAutoFlush(DefaultAutoFlushEventListener.java:50)
at org.hibernate.internal.SessionImpl.autoFlushIfRequired(SessionImpl.java:1193)
at org.hibernate.internal.SessionImpl.list(SessionImpl.java:1261)
at org.hibernate.internal.QueryImpl.list(QueryImpl.java:87)
at org.hibernate.jpa.internal.QueryImpl.list(QueryImpl.java:567)
at org.hibernate.jpa.internal.QueryImpl.getSingleResult(QueryImpl.java:482)
at org.hibernate.jpa.criteria.compile.CriteriaQueryTypeQueryAdapter.getSingleResult(CriteriaQueryTypeQueryAdapter.java:54)
at net.datenwerke.rs.utils.simplequery.byid.QueryByIdProcessor.process(QueryByIdProcessor.java:69)
at net.datenwerke.rs.utils.simplequery.byid.QueryByIdInterceptor.invoke(QueryByIdInterceptor.java:24)
at net.datenwerke.security.service.authenticator.RequestUserCacheImpl.getUser(RequestUserCacheImpl.java:30)
at net.datenwerke.security.service.authenticator.AuthenticatorServiceImpl.getCurrentUser(AuthenticatorServiceImpl.java:183)
at net.datenwerke.security.service.eventlogger.DwLoggedEvent.setAuthenticatorServiceProvider(DwLoggedEvent.java:41)
at net.datenwerke.security.service.eventlogger.DwLoggedEvent$$FastClassByGuice$$fa3a5d39.invoke(<generated>)
at com.google.inject.internal.SingleMethodInjector$1.invoke(SingleMethodInjector.java:51)
at com.google.inject.internal.SingleMethodInjector.inject(SingleMethodInjector.java:85)
at com.google.inject.internal.MembersInjectorImpl.injectMembers(MembersInjectorImpl.java:147)
at com.google.inject.internal.MembersInjectorImpl.injectAndNotify(MembersInjectorImpl.java:101)
at com.google.inject.internal.MembersInjectorImpl.injectMembers(MembersInjectorImpl.java:71)
at com.google.inject.internal.InjectorImpl.injectMembers(InjectorImpl.java:1055)
at net.datenwerke.rs.utils.eventbus.EventBusImpl.fireEvent(EventBusImpl.java:74)
at net.datenwerke.security.service.eventlogger.aop.RemoveEntityEventInterceptor.invoke(RemoveEntityEventInterceptor.java:28)
at net.datenwerke.security.service.usermanager.UserManagerService$remove$0.call(Unknown Source)
at Script3.run(Script3.groovy:26)
at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.eval(GroovyScriptEngineImpl.java:344)
at org.codehaus.groovy.jsr223.GroovyCompiledScript.eval(GroovyCompiledScript.java:41)
at net.datenwerke.rs.scripting.service.scripting.engines.GroovyEngine.eval(GroovyEngine.java:74)
at net.datenwerke.rs.scripting.service.scripting.ScriptingServiceImpl.executeScript(ScriptingServiceImpl.java:217)
at net.datenwerke.rs.scripting.service.scripting.ScriptingServiceImpl.executeScript(ScriptingServiceImpl.java:263)
... 15 more
Offline
Hi Christoph,
dieser User hat wohl noch Scheduler Einträge. Er ist entweder Owner, Recipient oder Executor. Deswegen kannst Du ihn noch nicht löschen, bis der User (analog wie die Teamspaces) ersetzt sind.
Ich habe ein Ticket erstellt (RS-5114) um diese Infos irgendwie aufzulisten. Vlt. weisst Du aber wo dieser User alles vorhanden war ?
Gruss
Eduardo
Offline
Hallo Eduardo,
ich überprüfe das, wo der User vorhanden ist.
Danke.
Gruß
Christoph
Offline
Wir können leider den Benutzer nicht aus allen Bereichen löschen, das hat nicht funktioniert.
Im Archiv ist er auch noch vorhanden.
Ich wusste nicht, dass das so ein krasses Hindernis ist, wegen einem LDAP-User.
Gibt es eine andere Lösung?
Wir müssen den LDAP-Import starten, damit sich wieder Benutzer einloggen können.
Gruß
Christoph
Offline
Hallo Christoph,
du kannst einen force-remove machen per Skript:
https://forum.reportserver.net/viewtopi … 2601#p2601
Funktioniert analog mit den Users.
Gruss
Eduardo
Offline
Hallo Eduardo,
userService.forceRemove hat leider den gleichen Effekt.
Gruß
Christoph
Offline
Hallo Eduardo,
userService.forceRemove hat leider den gleichen Effekt.
.. welchen genau?
Offline
Caused by: org.postgresql.util.PSQLException: ERROR: current transaction is aborted, commands ignored until end of transaction block
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2533)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2268)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:313)
at org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:448)
at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:369)
at org.postgresql.jdbc.PgPreparedStatement.executeWithFlags(PgPreparedStatement.java:159)
at org.postgresql.jdbc.PgPreparedStatement.executeUpdate(PgPreparedStatement.java:125)
at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeUpdate(NewProxyPreparedStatement.java:1449)
at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:204)
... 43 more
Caused by: org.postgresql.util.PSQLException: ERROR: update or delete on table "rs_user" violates foreign key constraint "fk_ag4u7ntsj4k38buq7apbp2ew4" on table "rs_sched_execute_script_job"
Detail: Key (id)=(1565503) is still referenced from table "rs_sched_execute_script_job".
Offline
Aktuell können sich bereits importierte Benutzer nicht mehr einloggen.
Offline
Hi Christoph,
das listet die Scheduler Jobs auf die der Benutzer hat:
select * from RS_SCHED_EXECUTE_SCRIPT_JOB where scheduled_by_id = id deines Benutzers
diese Jobs kannst du dann löschen bzw. neu schedulen: https://reportserver.net/en/guides/admi … uleScript/
Gruss
Eduardo
Offline
Hi Christoph,
aber zurück zum eigentlichen Problem: Du kannst das LDAP Skript nicht ausführen, weil sich Users irrtümlicherweise im Root Verzeichnis des RS befinden.
Du kannst die OUs dieser Users per Skript anpassen:
z.b. mit newParentOu.addChild(user)
https://reportserver.net/api/current/ja … addChild-N-
"Add a new childnode to this node. Childnode will become detached from old parent node if necessary"
So wäre das Problem wohl weg (es gäbe keine Users mehr direkt unter Root), und so könnten sich deine Users wieder anmelden. Danach kannst du diese Users archivieren/ändern/etc.
Gruss
Eduardo
Offline