NVIDIA / clara-dicom-adapter

DICOM Adapter is a component of the Clara Deploy SDK which facilitates integration with DICOM compliant systems, enables ingestion of imaging data, helps triggering of jobs with configurable rules and offers pushing the output of jobs to PACS systems.
https://nvidia.github.io/clara-dicom-adapter/
Apache License 2.0
37 stars 14 forks source link

Unable to create Clara AET with priority "higher" #9

Closed mocsharp closed 4 years ago

mocsharp commented 4 years ago

Description

Exception found in DICOM Adapter log when creating a new clara AE Title with priority set to "higher"

Steps to reproduce

Please share a clear and concise description of the problem.

  1. clara dicom create aet -a test pipeline-test=12345 priority=higher
  2. kubectl logs $(kubectl get po | grep dicom | awk '{print $1}') -f

Expected behavior

Clara AET added without error.

Actual behavior

2020-10-06 23:22:19.065 +00:00 [EROR] [clara-dicom-adapter-654bc8ffcd-plqm2] Nvidia.Clara.DicomAdapter.Services.K8s.CustomResourceWatcher[41] {} Error polling CRD of type dicom.clara.nvidia.com/v1beta2/ClaraAeTitle.
System.TypeLoadException: Could not load type 'Nvidia.Clara.DicomAdapter.Server.Processors.AeTitleJobProcessor' from assembly 'Nvidia.Clara.DicomAdapter, Version=0.7.2.13487, Culture=neutral, PublicKeyToken=null'.
   at System.Reflection.RuntimeAssembly.GetType(QCallAssembly assembly, String name, Boolean throwOnError, Boolean ignoreCase, ObjectHandleOnStack type, ObjectHandleOnStack keepAlive, ObjectHandleOnStack assemblyLoadContext)
   at System.Reflection.RuntimeAssembly.GetType(String name, Boolean throwOnError, Boolean ignoreCase)
   at System.TypeNameParser.ResolveType(Assembly assembly, String[] names, Func`4 typeResolver, Boolean throwOnError, Boolean ignoreCase, StackCrawlMark& stackMark)
   at System.TypeNameParser.ConstructType(Func`2 assemblyResolver, Func`4 typeResolver, Boolean throwOnError, Boolean ignoreCase, StackCrawlMark& stackMark)
   at System.TypeNameParser.GetType(String typeName, Func`2 assemblyResolver, Func`4 typeResolver, Boolean throwOnError, Boolean ignoreCase, StackCrawlMark& stackMark)
   at System.Type.GetType(String typeName, Func`2 assemblyResolver, Func`4 typeResolver, Boolean throwOnError)
   at Nvidia.Clara.DicomAdapter.Common.TypeExtensions.CreateInstance[T](Type interfaceType, IServiceProvider serviceProvider, String typeString, Object[] parameters) in /Clara/src/Services/DicomAdapter/src/Server/Common/TypeExtensions.cs:line 22
   at Nvidia.Clara.DicomAdapter.Services.Scp.ApplicationEntityHandler..ctor(IServiceProvider serviceProvider, ClaraApplicationEntity applicationEntity, String storageRootFullPath, CancellationToken cancellationToken, IFileSystem iFileSystem) in /Clara/src/Services/DicomAdapter/src/Server/Services/Scp/ApplicationEntityHandler.cs:line 77
   at Nvidia.Clara.DicomAdapter.Services.Scp.ApplicationEntityManager.NewHandler(IServiceProvider serviceProvider, ClaraApplicationEntity entity) in /Clara/src/Services/DicomAdapter/src/Server/Services/Scp/ApplicationEntityManager.cs:line 205
   at Nvidia.Clara.DicomAdapter.Services.Scp.ApplicationEntityManager.AddNewAeTitle(ClaraApplicationEntity entity) in /Clara/src/Services/DicomAdapter/src/Server/Services/Scp/ApplicationEntityManager.cs:line 190
   at Nvidia.Clara.DicomAdapter.Services.Scp.ApplicationEntityManager.HandleClaraAeTitleChanges(Object sender, AeTitleUpdatedEventArgs e) in /Clara/src/Services/DicomAdapter/src/Server/Services/Scp/ApplicationEntityManager.cs:line 226
   at Nvidia.Clara.DicomAdapter.Services.K8s.K8sCrdMonitorService.HandleClaraAeTitleEvents(WatchEventType eventType, ClaraApplicationEntityCustomResource item) in /Clara/src/Services/DicomAdapter/src/Server/Services/K8s/K8sCrdMonitorService.cs:line 233
   at Nvidia.Clara.DicomAdapter.Services.K8s.CustomResourceWatcher`2.Poll() in /Clara/src/Services/DicomAdapter/src/Server/Services/K8s/CustomResourceWatcher.cs:line 147

Configuration