Welcome To Support Community

Pipeline Pilot and BIOVIA Foundation

Advanced Search
Ask Search:
HumbeckHumbeck 

How to recover "state.xml"?

Hi
Suddenly, we weren't able to use a Pipeline Pilot user. We recognized that at the same time an error occurred "Pilot Error: CXMLReaderFunctions::ReadXMLFromFile(Object): failed reading state.xml: Pipeline Pilot exception rethrown". So we looked into state.xml and there is a huge part missing. How can we recover the state.xml file and save the user and its protocols?
Kind regards,
Lina
Phil CochranePhil Cochrane

Hi,

I believe what you'll need to do is rebuild the state.xml using the DBUtil tool found on the server; it's in the bin directory on Windows servers; not sure about the location for Linux. That rebuilds the state.xml according to the XML files it finds and the XMLDB.

dbutil -s 

will rebuild the whole thing - it takes a while, depending on your server.

dbutil -s Protocols

will just rebuild the protocols tab. So if you know which state.xml is corrupt, you can rebuild just that one. It can still take a while of course. If it's the Components tab, then replace Protocols in the above command with Components.

But, I think this will sort your problem out.

Regards,
 

Phil.

HumbeckHumbeck
Hi Phil
Thank you very munch for your answer. On Linux the DbUtil tool is in the directory linux_bin. Unfortunately, I get an error: "DbUtil: error while loading shared libraries: libpilotcore.so: cannot open shared object file: No such file or directory". The library is in the linux_bin directory, too. I have added the path to the linux_bin directory to the PATH variable, but the error remains. Do you have any suggestions?
Kind regards,
Lina
 
Phil CochranePhil Cochrane

Hi Lina,

Apologies, I forgot that there's another step you need to do when using DBUtil (and other tools in the bin directory I believe), which is to set up variables. I found this in the help:

On Linux servers, first execute the command "source ppvars.sh" (if using the bash shell), or "source ppvars.csh" (if using the C shell). This sets environment variables required for successful execution of DbUtil (see below).


Hopefully that helps you.
 

Regards,
 

Phil.

HumbeckHumbeck
Hi Phil
now everything seems to work again. Thank you very much indeed! Great help!
Kind regards,
Lina
Phil CochranePhil Cochrane

Hi Lina,
 

That's my pleasure. I had the same thing happen to me a few weeks back (for completely unknown reasons) and this command saved me - so I know how you feel!

Regards,

Phil.