When we try to do a recover of our running instance on AWS from Hana Studio, we get the hint that the instance must be offline to recover. When we confirm changing the database to offline, we are asked for the system user to be used, but afterwards the recover stops with the following error:
com.sap.ndb.studio.sapcontrol.SAPControlException: SAPControl request failed
at com.sap.ndb.studio.sapcontrol.operations.SAPControlOperation.execute(SAPControlOperation.java:118)
at com.sap.ndb.studio.sapcontrol.SAPControl.getInstanceProperties(SAPControl.java:495)
at com.sap.ndb.studio.sapcontrol.SAPControl.collectProperties(SAPControl.java:522)
at com.sap.ndb.studio.sapcontrol.SAPControl.open(SAPControl.java:333)
at com.sap.ndb.studio.sapcontrol.SAPControlManager.getSAPControl(SAPControlManager.java:121)
at com.sap.ndb.studio.sapcontrol.SAPControlManager.getSAPControl(SAPControlManager.java:86)
at com.sap.ndb.studio.navigator.operations.ControlSAPSystemOperation.execute(ControlSAPSystemOperation.java:69)
at com.sap.ndb.studio.admin.commands.recovery.RecoveryCommandHandler$ShutdownCallable.call(RecoveryCommandHandler.java:264)
at com.sap.ndb.studio.admin.commands.recovery.RecoveryCommandHandler$ShutdownCallable.call(RecoveryCommandHandler.java:1)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: com.sun.xml.internal.messaging.saaj.SOAPExceptionImpl: com.sun.xml.internal.messaging.saaj.SOAPExceptionImpl: Message send failed
at com.sun.xml.internal.messaging.saaj.client.p2p.HttpSOAPConnection.call(Unknown Source)
at com.sap.ndb.studio.sapcontrol.operations.SAPControlOperation.execute(SAPControlOperation.java:94)
... 13 more
Caused by: com.sun.xml.internal.messaging.saaj.SOAPExceptionImpl: Message send failed
at com.sun.xml.internal.messaging.saaj.client.p2p.HttpSOAPConnection.post(Unknown Source)
... 15 more
Caused by: java.net.UnknownHostException: hanaserver.eu-west-1.compute.amazonaws.com
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at sun.net.NetworkClient.doConnect(Unknown Source)
at sun.net.www.http.HttpClient.openServer(Unknown Source)
at sun.net.www.http.HttpClient.openServer(Unknown Source)
at sun.net.www.http.HttpClient.<init>(Unknown Source)
at sun.net.www.http.HttpClient.New(Unknown Source)
at sun.net.www.http.HttpClient.New(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.connect(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(Unknown Source)
... 16 more
If I look at the java exception, it looks like the public DNS we are using is modified replacing the first part by "hanaserver", this seems to cause the problem.
Does anyone know:
- Is it possible to do a recover on the AWS instance using Hana Studio?
- Is there an equivalent method using hdbsql?
- Do we need an elastic IP-address?