0
Completed

IDB - Saved empty config on write error

Richard Green 5 years ago updated by anonymous 5 years ago 2

On saving configuration when there is no disk space, the following exception is thrown: System.IO.IOException: There is not enough space on the disk. The saved configuration file is then empty. As there is nothing that can be done at this point to save the file (it's gone and the OS is refusing writes), explore whether the file can be renamed before writing out the new file, then delete the renamed file. The thing stopping this from being viable it will require further permissions for the service account (may be okay, as it already does for the logs).

HI Gents,

Encountered a concerning issue with Identity Broker in the TAFE Dev environment this afternoon. On creating and saving a new connector, the following error was thrown due to a disk space issue on the drive: System.IO.IOException: There is not enough space on the disk.

A little investigation revealed that someone had left WCF tracing running on the service, and it had built up a considerable file. Needless to say, I stopped the service, disabled the tracing and cleared away the log file.

On attempting to restart the service, the following error was thrown:

Service cannot be started. Unify.Framework.UnifyServiceInitializeException: Root element is missing. ---> System.Xml.XmlException: Root element is missing.

Investigation revealed that the ConnectorEngine extensibility file was empty/blank. It appears that when it failed to add the connector, it actually saved a blank config. I imagine the same would have happened had I attempted to add an agent or adapter.

I was able to restore the configuration from a backup, but thought this should be raised with your team

Cheers
Richard

Affected Versions:
Fixed by Version:

Thanks Richard Green, I suspect there are few options available to us with this as the write call unfortunately, but I'll take a look into it.