System Information
Field | Value |
---|---|
Operating System | Linux - Ubuntu 24.04.1 on x86_64 |
Product | AMP ‘Phobos’ v2.6.0.4 (Mainline) |
Virtualization | QEMU_KVM |
Application | Application Deployment |
Module | ADSModule |
Running in Container | No |
Current State | Indeterminate |
Problem Description
Issue
For some reason, the AMP is set to Recovery mode. When i do restart the Virtual Machine. It shows up like this image: https://i.imgur.com/ramRGZ5.png
I just ran a repair and started it and then it seems to work as usual.
But this is not something i should have to deal with, i feel bad for those thats not comfortable with ssh…
When i ssh into the machine and use the appropriate user (amp) and run:
ampinstmgr -l
Output:
amp@ampvm:~/.ampdata/instances/ADS01$ ampinstmgr -l
[Info/1] AMP Instance Manager v2.5.1.8 built 17/09/2024 12:32
[Info/1] Stream: Mainline / Release - built by CUBECODERS/buildbot on CCL-DEV
[Error/1] Failed to read instance data
[Error/1] JsonReaderException
[Error/1] [0] (JsonReaderException) : Error reading JObject from JsonReader. Current JsonReader item is not an object: String. Path ‘[0].AMPVersion’, line 144, position 27.
[Error/1] at Newtonsoft.Json.Linq.JObject.Load (Newtonsoft.Json.JsonReader reader, Newtonsoft.Json.Linq.JsonLoadSettings settings)
at Newtonsoft.Json.Linq.JObject.Load (Newtonsoft.Json.JsonReader reader)
at InstanceManagerPlugin.LocalInstanceManager+VersionObjectConverter.ReadJson (Newtonsoft.Json.JsonReader reader, Type objectType, Object existingValue, Newtonsoft.Json.JsonSerializer serializer)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.DeserializeConvertable (Newtonsoft.Json.JsonConverter converter, Newtonsoft.Json.JsonReader reader, Type objectType, Object existingValue)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.SetPropertyValue (Newtonsoft.Json.Serialization.JsonProperty property, Newtonsoft.Json.JsonConverter propertyConverter, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerProperty, Newtonsoft.Json.JsonReader reader, Object target)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject (Object newObject, Newtonsoft.Json.JsonReader reader, Newtonsoft.Json.Serialization.JsonObjectContract contract, Newtonsoft.Json.Serialization.JsonProperty member, String id)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject (Newtonsoft.Json.JsonReader reader, Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerMember, Object existingValue)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal (Newtonsoft.Json.JsonReader reader, Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerMember, Object existingValue)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateList (Collections.IList list, Newtonsoft.Json.JsonReader reader, Newtonsoft.Json.Serialization.JsonArrayContract contract, Newtonsoft.Json.Serialization.JsonProperty containerProperty, String id)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateList (Newtonsoft.Json.JsonReader reader, Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Object existingValue, String id)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal (Newtonsoft.Json.JsonReader reader, Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerMember, Object existingValue)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize (Newtonsoft.Json.JsonReader reader, Type objectType, Boolean checkAdditionalContent)
at Newtonsoft.Json.JsonSerializer.DeserializeInternal (Newtonsoft.Json.JsonReader reader, Type objectType)
at Newtonsoft.Json.JsonSerializer.Deserialize (Newtonsoft.Json.JsonReader reader, Type objectType)
at Newtonsoft.Json.JsonConvert.DeserializeObject (String value, Type type, Newtonsoft.Json.JsonSerializerSettings settings)
at Newtonsoft.Json.JsonConvert.DeserializeObject[T] (String value, Newtonsoft.Json.JsonSerializerSettings settings)
at InstanceManagerPlugin.LocalInstanceManager.GetLocalInstances (String AlternateDefsPath)
amp@ampvm:~/.ampdata/instances/ADS01$
Reproduction Steps
- Restart the virtual machine where AMP is hosted
- Open the web interface for AMP, and it will display “AMP Recovery Mode” in the title of the webpage
- that is all