When using the REST API to get the attributes of models, the result is error "NoAvailableDomains".
This happens intermittently after upgrade from 20.2.x to 21.2.x or later
DX NetOps Spectrum Release : 21.2.10 or later
From the OneClick log, the following errors are observed repeatedly:
Mar 14, 2023 10:44:40.547 - Error reading attributes for models in domain 0x1d00000 : exception com.aprisma.spectrum.core.idl.CsCException.CsCSpectrumException {
com.aprisma.spectrum.core.idl.CsCError.CsCError_e error=NO_USER,
java.lang.String messageFormatID="CsCModelDomain.readAttrValListOfModelsByIDs.user.domain.NO_USER",
com.aprisma.spectrum.core.idl.CsCAttribute.CsCValue[] messageValueList={union com.aprisma.spectrum.core.idl.CsCAttribute.CsCValue {
java.lang.String textString="CsModelDomSrvc.cc"
},union com.aprisma.spectrum.core.idl.CsCAttribute.CsCValue {
java.lang.String textString="%I% %G% %U%"
},union com.aprisma.spectrum.core.idl.CsCAttribute.CsCValue {
int intValue=3934
},union com.aprisma.spectrum.core.idl.CsCAttribute.CsCValue {
java.lang.String textString="SS"
},union com.aprisma.spectrum.core.idl.CsCAttribute.CsCValue {
int intValue=13
},union com.aprisma.spectrum.core.idl.CsCAttribute.CsCValue {
java.lang.String textString="SS"
},union com.aprisma.spectrum.core.idl.CsCAttribute.CsCValue {
java.lang.String textString="(unknown_user)"
},union com.aprisma.spectrum.core.idl.CsCAttribute.CsCValue {
java.lang.String textString="SS"
}}
}
at com.aprisma.spectrum.core.idl.CsCException.CsCSpectrumExceptionHelper.read(CsCSpectrumExceptionHelper.java:40)
at com.aprisma.spectrum.core.idl._CsCModelDomainStub.readAttrValListOfModelsByIDs(_CsCModelDomainStub.java:4066)
at com.aprisma.spectrum.app.topo.web.repository.ModelRepository.updateAttributes(ModelRepository.java:1461)
at com.aprisma.spectrum.app.topo.web.repository.ModelRepository.updateAttributes(ModelRepository.java:1671)
at com.aprisma.spectrum.app.topo.web.repository.ModelRepository.updateAttributes(ModelRepository.java:1824)
at com.aprisma.spectrum.app.topo.web.repository.ModelRepository.doThrottledAttrUpdate(ModelRepository.java:1880)
at com.aprisma.spectrum.app.topo.web.repository.ModelRepository.updateAttributes(ModelRepository.java:1984)
at com.aprisma.spectrum.app.topo.web.repository.ModelRepository.updateModels(ModelRepository.java:2523)
at com.aprisma.spectrum.app.topo.web.repository.ModelRepository.updateModels(ModelRepository.java:2395)
at com.aprisma.spectrum.app.topo.common.repository.AbstractModelRepository.getModels(AbstractModelRepository.java:1657)
at com.aprisma.spectrum.app.topo.web.repository.ModelRepository.getModels(ModelRepository.java:3499)
at com.aprisma.spectrum.app.repmgr.dc.asset.DevicePollerTask.checkDeviceInterfaces(DevicePollerTask.java:137)
at com.aprisma.spectrum.app.repmgr.dc.asset.DevicePollerTask.updateDevice(DevicePollerTask.java:97)
at com.aprisma.spectrum.app.repmgr.dc.asset.DevicePollerTask.run(DevicePollerTask.java:63)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
What's happening is that the user account being used to run the RESTful command is not consistent across all landscapes in the DSS.
If on Spectrum 21.2.10, either upgrade to 21.2.12 or later releases where this fix is incorporated or ensure that the following two patches required to fix this issue on 21.2.10 are installed:
For the OneClick server -
21.02.10.PTF_21.2.1008a
and on the SpectroSERVER:
Spectrum_21.02.10.D72
Also, sync across all users from the MLS to the other SpectroSERVERs in a DSS environment. On the MLS, under:
OneClick -> Users tab -> User -> Component Detail
click on the Synchronize Now
button:
This will sync the users across all landscapes and update their user models to make them consistent regardless of which landscape the OneClick server is communicating with.