Uploaded image for project: 'Data Collection, Analytics, and Events'
  1. Data Collection, Analytics, and Events
  2. DCAEGEN2-3097

VESMapper relying on CBS interface

XMLWordPrintable

      VES-Mapper resolves to CBS lookup causing below exception in env without CBS/consul. These platform component will be deprecated with Jakarta hence these dependencies must be removed.

       
      02:05:43.652 [main] INFO  o.s.s.c.ThreadPoolTaskExecutor - Initializing ExecutorService 'applicationTaskExecutor'
      02:05:44.041 [main] INFO  o.a.coyote.http11.Http11NioProtocol - Starting ProtocolHandler ["http-nio-8085"]
      02:05:44.061 [main] INFO  o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port(s): 8085 (http) with context path ''
      02:05:44.065 [main] INFO  o.o.universalvesadapter.Application - Started Application in 2.816 seconds (JVM running for 3.484)
      02:05:44.067 [main] INFO  debugLogger - The Default Config file Location:kv.json
      02:05:44.068 [main] INFO  o.o.d.s.s.r.s.c.c.a.CbsClientFactory - Configuration used for CBS Client: CbsClientConfiguration{hostname=config-binding-service, port=10000, appName=dcae-ves-mapper, protocol=http, trustStoreKeys=null, consulHost=consul-server, consulPort=8500, cbsName=config-binding-service, configMapFilePath=/app-config-input/application_config.yaml, policySyncFilePath=/etc/policies/policies.json}
      02:05:44.181 [main] INFO  o.o.d.s.s.r.s.c.c.i.CbsClientConfigMap - Trying to load configuration from configMap file: /app-config-input/application_config.yaml
      02:05:49.278 [parallel-1] INFO  o.o.d.s.s.r.s.c.c.i.CbsClientConfigMap - Got successful output from ConfigMap file
      02:05:49.279 [parallel-1] INFO  debugLogger - >>>Dynamic configuration to be used
      02:05:49.290 [parallel-1] DEBUG debugLogger - FetchDynamicConfig : fetchResultFromDestination : START
      02:05:49.580 [parallel-1] DEBUG debugLogger - FetchDynamicConfig : fetchResultFromDestination : END
      02:05:49.581 [parallel-1] INFO  debugLogger - CBS details fetched from Consul
      02:05:49.588 [parallel-1] WARN  debugLogger - Cannot Connect
      org.json.JSONException: JSONArray[0] not found.
              at org.json.JSONArray.get(JSONArray.java:194)
              at org.onap.universalvesadapter.utils.FetchDynamicConfig.getCBS(FetchDynamicConfig.java:141)
              at org.onap.universalvesadapter.utils.FetchDynamicConfig.cbsCall(FetchDynamicConfig.java:81)
              at org.onap.universalvesadapter.service.VESAdapterInitializer.lambda$run$2(VESAdapterInitializer.java:102)
              at reactor.core.publisher.LambdaSubscriber.onNext(LambdaSubscriber.java:160)
              at reactor.core.publisher.MonoFlatMapMany$FlatMapManyInner.onNext(MonoFlatMapMany.java:242)
              at reactor.core.publisher.FluxDistinctUntilChanged$DistinctUntilChangedSubscriber.tryOnNext(FluxDistinctUntilChanged.java:121)
              at reactor.core.publisher.FluxDistinctUntilChanged$DistinctUntilChangedSubscriber.onNext(FluxDistinctUntilChanged.java:95)
              at reactor.core.publisher.FluxFlatMap$FlatMapMain.tryEmit(FluxFlatMap.java:535)
              at reactor.core.publisher.FluxFlatMap$FlatMapInner.onNext(FluxFlatMap.java:999)
              at reactor.core.publisher.FluxPeekFuseable$PeekFuseableSubscriber.onNext(FluxPeekFuseable.java:203)
              at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onNext(FluxMapFuseable.java:121)
              at reactor.core.publisher.Operators$ScalarSubscription.request(Operators.java:2344)
              at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.request(FluxMapFuseable.java:162)
              at reactor.core.publisher.FluxPeekFuseable$PeekFuseableSubscriber.request(FluxPeekFuseable.java:137)
              at reactor.core.publisher.FluxFlatMap$FlatMapInner.onSubscribe(FluxFlatMap.java:979)
              at reactor.core.publisher.FluxPeekFuseable$PeekFuseableSubscriber.onSubscribe(FluxPeekFuseable.java:171)
              at reactor.core.publisher.FluxMapFuseable$MapFuseableSubscriber.onSubscribe(FluxMapFuseable.java:90)
              at reactor.core.publisher.MonoJust.subscribe(MonoJust.java:54)
              at reactor.core.publisher.Mono.subscribe(Mono.java:4213)
              at reactor.core.publisher.FluxFlatMap$FlatMapMain.onNext(FluxFlatMap.java:418)
              at reactor.core.publisher.FluxMap$MapSubscriber.onNext(FluxMap.java:114)
              at reactor.core.publisher.FluxInterval$IntervalRunnable.run(FluxInterval.java:123)
              at reactor.core.scheduler.PeriodicWorkerTask.call(PeriodicWorkerTask.java:59)
              at reactor.core.scheduler.PeriodicWorkerTask.run(PeriodicWorkerTask.java:73)
              at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
              at java.base/java.util.concurrent.FutureTask.runAndReset(Unknown Source)
              at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source)
              at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
              at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
              at java.base/java.lang.Thread.run(Unknown Source)
      
      

       

      Though updated CBS client SDK is used, the underlying classes are resolving to old CBS api's after configmap is refreshed. 

      Fetch from CBS/Consul must ONLY be done if the Configmap lookup fails.

            mukesh.paliwal mukesh.paliwal
            vv770d vv770d
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: