Invalid connector configuration (RelationalDatabase) when database is unavailable
Joseph.Fischetti at marist.edu
Wed Oct 11 08:38:11 EDT 2017
We're working with a new SP that requires attributes from a database that our IDP isn't already configured to link to. I've followed the instructions in the wiki and my RelationalDatabase connector is working with a test database.
I noticed that if the database is offline while reloading the resolver configuration, I receive an error (below). The idp webapp also fails to start entirely if the database if offline when trying to start it (Could not create connection to database server. Attempted reconnect 3 times. Giving up.) Finally, if the database is online when the webapp has started or the resolver is reloaded, authentication hangs at attribute resolution if the database has gone offline.
Is there any way to set the 'priority' of this data connector lower, so that a failed connection doesn't stop the entire process?
- This wouldn't solve the problem entirely, but I've tried adding an activationCondition to the attribute that relies on the database.
The logs still show the process stopping there when the database is offline.
- I've also tried setting the database connector to failover to my ldap connector (So it would just fail to resolve the attribute) but it doesn't work.
Does the failover connector needs to be the same type? The wiki doesn't explicitly state that, but I was hopeful that it doesn't.
Since Shibboleth is integral to a number of different campus services, I don't want the entire system to be down simply because of this one SP's requirement. Again, my connector/configuration works, but everything fails if the database is offline.
Error creating bean with name 'myDatabase': Invocation of init method failed; nested exception is net.shibboleth.utilities.java.support.component.ComponentInitializationException: Data Connector 'myDatabase': Invalid connector configuration
Linux System Administrator
More information about the users