@ -99,10 +99,10 @@ public abstract class TbAbstractGetAttributesNode<C extends TbGetAttributesNodeC
private void safePutAttributes ( TbContext ctx , TbMsg msg , ObjectNode msgDataNode , T entityId ) {
Set < TbPair < String , List < String > > > failuresPairSet = ConcurrentHashMap . newKeySet ( ) ;
var getKvEntryPairFutures = Futures . allAsList (
getLatestTelemetry ( ctx , entityId , TbNodeUtils . processPatterns ( config . getLatestTsKeyNames ( ) , msg ) , failuresPairSet ) ,
getAttrAsync ( ctx , entityId , CLIENT_SCOPE , TbNodeUtils . processPatterns ( config . getClientAttributeNames ( ) , msg ) , failuresPairSet ) ,
getAttrAsync ( ctx , entityId , SHARED_SCOPE , TbNodeUtils . processPatterns ( config . getSharedAttributeNames ( ) , msg ) , failuresPairSet ) ,
getAttrAsync ( ctx , entityId , SERVER_SCOPE , TbNodeUtils . processPatterns ( config . getServerAttributeNames ( ) , msg ) , failuresPairSet )
getAttrAsync ( ctx , entityId , SERVER_SCOPE , TbNodeUtils . processPatterns ( config . getServerAttributeNames ( ) , msg ) , failuresPairSet ) ,
getLatestTelemetry ( ctx , entityId , TbNodeUtils . processPatterns ( config . getLatestTsKeyNames ( ) , msg ) , failuresPairSet )
) ;
withCallback ( getKvEntryPairFutures , futuresList - > {
var msgMetaData = msg . getMetaData ( ) . copy ( ) ;