Custom languages freeze the term search in Terminology Provider

Hi,

I am implementing a Terminology Provider plugin for Trados Studio 2021, 2022 SR2 and 2024.

I need to keep all three versions properly updated.

My problem is that when I am using custom languages (regional), I notice two problems:

#1. in Studio 2022 SR2 (only in this version) I get a constant 'Searching for terms..' and no results appear, even though I do search and return with results (an exception appears in the logs)

#2. in Studio 2022 SR2 and Studio 2024 the system does not ask for the descriptive fields and so it does not fill in the Hitlist fields.

-------------------------

PROBLEM #1: STEPS TO REPRODUCE

1. Use a custom terminology provider plugin

2. Create a project that translates from ENG-US to GER-DE

3. You need to map the ENG-US to a custom language, e.g. ENG-GB

Screenshot of Trados Studio Project Settings showing TermBases tab with 'TermWeb Studio plug-in' selected as default and language mapping from English (United States) to English (UK).

4. Open the project and try to search for terms using the custom terminology provider. You will see that the 'Searching for terms..' message stays forever

Screenshot of Trados Studio with a document open in the editor. A 'Searching for terms...' message is displayed in the Term Recognition pane, indicating a search is in progress.

At the same moment you get the following error in the logs:

ERROR [2024-07-11 19:17:58,201] Sdl.TranslationStudio.Editor.Terminology.SegmentTermRecognizer - Object reference not set to an instance of an object.
System.NullReferenceException: Object reference not set to an instance of an object.
at Sdl.MultiTerm.Client.TerminologyProvider.Search.TermbaseRecognitionEngine.CreateScoringObject()
at Sdl.MultiTerm.Client.TerminologyProvider.Search.TermbaseRecognitionEngine.FindTerms(String text, Int16 termbaseMaxHits, Boolean includeHomonyms, Boolean allowOverlappingTerms)
at Sdl.TranslationStudio.Editor.Terminology.SegmentTermRecognizer.RecogniseTerms(IList`1 termbaseContexts, IProjectTermbaseRecognitionOptions recognitionOptions, TermRecognitionSettings termRecognitionSettingsBundle, ITermbaseRecognitionEngine recognitionEngine, PlainTextMapper sourceTextMapper)
ERROR [2024-07-11 19:17:58,383] Sdl.TranslationStudio.Editor.Terminology.SegmentTermRecognizer - Object reference not set to an instance of an object.
System.NullReferenceException: Object reference not set to an instance of an object.
at Sdl.MultiTerm.Client.TerminologyProvider.Search.TermbaseRecognitionEngine.CreateScoringObject()
at Sdl.MultiTerm.Client.TerminologyProvider.Search.TermbaseRecognitionEngine.FindTerms(String text, Int16 termbaseMaxHits, Boolean includeHomonyms, Boolean allowOverlappingTerms)
at Sdl.TranslationStudio.Editor.Terminology.SegmentTermRecognizer.RecogniseTerms(IList`1 termbaseContexts, IProjectTermbaseRecognitionOptions recognitionOptions, TermRecognitionSettings termRecognitionSettingsBundle, ITermbaseRecognitionEngine recognitionEngine, PlainTextMapper sourceTextMapper)

I am attaching the full log

ERROR [2024-07-11 19:09:29,289] Sdl.Common.Licensing.Provider.SafeNetRMS.ProductLicense - Error at License CheckOut
Sdl.Common.Licensing.Provider.SafeNetRMS.SentinelProviderException: Failed to check out license feature ProfessionalEdition.
Error ID: 210037 ---> com.sntl.licensing.LicensingException: <?xml version="1.0" encoding="UTF-8" standalone="no"?>

<sentinelInfo>
  <status>
    <statusCode>210037</statusCode>
    <statusMessage>Duration of Trial License of ProfessionalEdition ver 2022 is exhausted.</statusMessage>
  </status>
</sentinelInfo>

   at com.sntl.licensing.LoginSession.login(ApplicationContext appCtx, String featureName, Attribute attribute)
   at Sdl.Common.Licensing.Provider.SafeNetRMS.UnifiedAPIProvider.CheckOutFeature(LicenseFeature feature)
   --- End of inner exception stack trace ---
   at Sdl.Common.Licensing.Provider.SafeNetRMS.UnifiedAPIProvider.CheckOutFeature(LicenseFeature feature)
   at Sdl.Common.Licensing.Provider.SafeNetRMS.ProductLicense.CheckOut()
ERROR [2024-07-11 19:09:29,308] Sdl.Desktop.Platform.Perpetual.PerpetualLicense - Error initializing perpetual license
Sdl.Common.Licensing.Provider.SafeNetRMS.SentinelProviderException: Failed to check out license feature ProfessionalEdition.
Error ID: 210037 ---> com.sntl.licensing.LicensingException: <?xml version="1.0" encoding="UTF-8" standalone="no"?>

<sentinelInfo>
  <status>
    <statusCode>210037</statusCode>
    <statusMessage>Duration of Trial License of ProfessionalEdition ver 2022 is exhausted.</statusMessage>
  </status>
</sentinelInfo>

   at com.sntl.licensing.LoginSession.login(ApplicationContext appCtx, String featureName, Attribute attribute)
   at Sdl.Common.Licensing.Provider.SafeNetRMS.UnifiedAPIProvider.CheckOutFeature(LicenseFeature feature)
   --- End of inner exception stack trace ---
   at Sdl.Common.Licensing.Provider.SafeNetRMS.UnifiedAPIProvider.CheckOutFeature(LicenseFeature feature)
   at Sdl.Common.Licensing.Provider.SafeNetRMS.ProductLicense.CheckOut()
   at Sdl.Desktop.Platform.Perpetual.PerpetualLicense.Initialize()
INFO [2024-07-11 19:09:29,314] TradosStudio.PushNotificationProvider.SignalRClient - Initializing client
INFO [2024-07-11 19:09:46,460] Sdl.Desktop.Platform.Implementation.Studio - Starting application service.
INFO [2024-07-11 19:09:46,589] Sdl.BestMatchServiceStudioIntegration.Common.DelegatingHandlers.ConnectivityHandler - Request with trace id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx for lc-api.sdl.com/.../sync-user-profile: 
INFO [2024-07-11 19:09:47,051] Sdl.BestMatchServiceStudioIntegration.Common.DelegatingHandlers.ConnectivityHandler - Request response: OK traceId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
INFO [2024-07-11 19:09:47,103] Sdl.BestMatchServiceStudioIntegration.Common.DelegatingHandlers.ConnectivityHandler - Request with trace id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx for lc-api.sdl.com/.../accountsAndSettings: 
INFO [2024-07-11 19:09:47,461] Sdl.BestMatchServiceStudioIntegration.Common.DelegatingHandlers.ConnectivityHandler - Request response: OK traceId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
INFO [2024-07-11 19:09:47,616] Sdl.BestMatchServiceStudioIntegration.Common.DelegatingHandlers.ConnectivityHandler - Request with trace id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx for lc-api.sdl.com/.../studioPackage: 
INFO [2024-07-11 19:09:48,149] Sdl.BestMatchServiceStudioIntegration.Common.DelegatingHandlers.ConnectivityHandler - Request response: OK traceId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
INFO [2024-07-11 19:09:48,158] Sdl.TranslationStudio.LanguageCloud.Startup.LanguageCloudLogin - Language Cloud login successful.
INFO [2024-07-11 19:09:48,233] Sdl.TranslationStudio.ProjectManagement.AutoDeleteOnStartup - Deleting temporary files
INFO [2024-07-11 19:09:50,071] Sdl.BestMatchServiceStudioIntegration.Common.DelegatingHandlers.ConnectivityHandler - Request with trace id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx for lc-api.sdl.com/.../projects: 
INFO [2024-07-11 19:09:50,430] Sdl.BestMatchServiceStudioIntegration.Common.DelegatingHandlers.ConnectivityHandler - Request response: OK traceId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
ERROR [2024-07-11 19:09:51,161] Sdl.TranslationStudio.LanguageCloud.Services.LanguageCloudProjectMigration - The given key was not present in the dictionary.
System.Collections.Generic.KeyNotFoundException: The given key was not present in the dictionary.
   at System.Collections.Generic.Dictionary`2.get_Item(TKey key)
   at Sdl.TranslationStudio.LanguageCloud.Services.LanguageCloudProjectMigration.CheckProjectsForMigration()
INFO [2024-07-11 19:09:51,237] Sdl.TranslationStudio.ProjectManagement.ProjectManagementService - ProjectManagementService started: 1393 ms
ERROR [2024-07-11 19:09:51,974] Sdl.Desktop.Platform.ServerConnectionPlugin.Client.IdentityModel.UserCredentialRepository - Error reading GS servers
System.IO.DirectoryNotFoundException: Could not find a part of the path 'C:\Users\tsous\AppData\Roaming\Trados\Platform\Identity\SDLTradosStudio.exe\Servers.bin'.
   at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
   at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
   at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
   at System.IO.StreamReader..ctor(String path, Encoding encoding, Boolean detectEncodingFromByteOrderMarks, Int32 bufferSize, Boolean checkHost)
   at System.IO.File.InternalReadAllText(String path, Encoding encoding, Boolean checkHost)
   at System.IO.File.ReadAllText(String path)
   at Sdl.Desktop.Platform.Implementation.SystemIO.FileWrapper.ReadAllText(String path)
   at Sdl.Desktop.Platform.ServerConnectionPlugin.Client.IdentityModel.UserCredentialRepository.Load()
INFO [2024-07-11 19:09:58,069] Sdl.WalkMe.Services.WalkMeContentProvider - Tips could not be found at location Tips.xml
INFO [2024-07-11 19:09:59,009] TradosStudio.PushNotificationProvider.SignalRClient - Configuring websocket connection
INFO [2024-07-11 19:09:59,009] TradosStudio.PushNotificationProvider.SignalRClient - TraceId for signalR connection: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
INFO [2024-07-11 19:09:59,079] TradosStudio.PushNotificationProvider.SignalRClient - Connection built has state Disconnected
INFO [2024-07-11 19:09:59,094] TradosStudio.PushNotificationProvider.SignalRClient - Connecting to push notification service
INFO [2024-07-11 19:09:59,129] Microsoft.AspNetCore.Http.Connections.Client.Internal.WebSocketsTransport - Starting transport. Transfer mode: Text. Url: 'wss://studio-push-notification.sdl.com/ProjectsHub'.
INFO [2024-07-11 19:09:59,864] Sdl.AppStoreIntegration.Service.OfflineConnectivityHandler - Request with trace id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx for studio-appstore-api.azurewebsites.net/plugins Studio&studioVersion=17.2.8.18668: 
INFO [2024-07-11 19:10:00,898] Sdl.TranslationStudio.LanguageCloud.Startup.LanguageCloudMappingStartup - Loading language code mapping cache
INFO [2024-07-11 19:10:01,003] Sdl.TranslationStudio.Plugins.CommunityInside.Notifications.Service.OfflineConnectivityHandler - Request with trace id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx for community.rws.com/.../login: 
INFO [2024-07-11 19:10:01,044] Sdl.Desktop.Platform.Implementation.ResourceLoggingInternalCommandExecuter - Start#Id=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx#Name=Connecting#ProcessName=SDLTradosStudio#PhysicalMemorySize=242962432#VirtualMemorySize=151695360#ThreadCount=36#HandleCount=1477#GdiHandleCount=1007#UserHandleCount=460#TotalProcessorTime=00:00:14.6562500
INFO [2024-07-11 19:10:01,046] Sdl.Desktop.Platform.Implementation.ResourceLoggingInternalCommandExecuter - Finish#Id=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx#Name=Connecting#ProcessName=SDLTradosStudio#PhysicalMemorySize=242962432#VirtualMemorySize=151695360#ThreadCount=36#HandleCount=1477#GdiHandleCount=1007#UserHandleCount=461#TotalProcessorTime=00:00:14.6562500
INFO [2024-07-11 19:10:01,497] Microsoft.AspNetCore.Http.Connections.Client.HttpConnection - HttpConnection Started.
INFO [2024-07-11 19:10:01,498] Sdl.AppStoreIntegration.Service.OfflineConnectivityHandler - Request response: OK
INFO [2024-07-11 19:10:01,504] Microsoft.AspNetCore.SignalR.Client.HubConnection - Using HubProtocol 'json v1'.
INFO [2024-07-11 19:10:02,003] Sdl.TranslationStudio.Plugins.CommunityInside.Notifications.Service.OfflineConnectivityHandler - Request response: OK
INFO [2024-07-11 19:10:02,139] Sdl.Desktop.Platform.Implementation.Services.Updater.UpdateClientCaller - Started TrueUpdate Process Id: 23916
INFO [2024-07-11 19:10:02,153] Sdl.TranslationStudio.Plugins.CommunityInside.Notifications.Service.OfflineConnectivityHandler - Request with trace id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx for community.rws.com/.../notifications.json: 
INFO [2024-07-11 19:10:02,216] Microsoft.AspNetCore.SignalR.Client.HubConnection - HubConnection started.
INFO [2024-07-11 19:10:02,228] Sdl.AppStoreIntegration.Service.OfflineConnectivityHandler - Request with trace id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx for studio-appstore-api.azurewebsites.net/mapNames 
INFO [2024-07-11 19:10:02,232] TradosStudio.PushNotificationProvider.SignalRClient - Subscribing to project changes
INFO [2024-07-11 19:10:02,512] Sdl.TranslationStudio.Plugins.CommunityInside.Notifications.Service.OfflineConnectivityHandler - Request response: OK
INFO [2024-07-11 19:10:02,550] Sdl.AppStoreIntegration.Service.OfflineConnectivityHandler - Request response: OK
INFO [2024-07-11 19:10:02,570] Sdl.AppStoreIntegration.Service.OfflineConnectivityHandler - Request with trace id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx for studio-appstore-api.azurewebsites.net/.../categories: 
INFO [2024-07-11 19:10:02,925] Sdl.AppStoreIntegration.Service.OfflineConnectivityHandler - Request response: OK
INFO [2024-07-11 19:10:04,080] Sdl.Desktop.Platform.Implementation.Services.Updater.UpdateClientCaller - TrueUpdate ProcessId=23916 has exited
INFO [2024-07-11 19:10:04,081] Sdl.Desktop.Platform.Implementation.Services.Updater.UpdateInfoReader - Trying to read file: C:\Users\tsous\AppData\Local\Temp\Studio17Updates\FilteredUpdates.xml
INFO [2024-07-11 19:11:02,976] Sdl.Desktop.Platform.Implementation.ResourceLoggingInternalCommandExecuter - Start#Id=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx#Name=Opening SamplePhotoPrinter.doc.sdlxliff#ProcessName=SDLTradosStudio#PhysicalMemorySize=286924800#VirtualMemorySize=184999936#ThreadCount=35#HandleCount=1606#GdiHandleCount=1406#UserHandleCount=744#TotalProcessorTime=00:00:20.3125000
INFO [2024-07-11 19:11:04,189] Sdl.Desktop.Platform.Implementation.ResourceLoggingInternalCommandExecuter - Finish#Id=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx#Name=Opening SamplePhotoPrinter.doc.sdlxliff#ProcessName=SDLTradosStudio#PhysicalMemorySize=286924800#VirtualMemorySize=184999936#ThreadCount=35#HandleCount=1606#GdiHandleCount=1384#UserHandleCount=739#TotalProcessorTime=00:00:21.7187500
INFO [2024-07-11 19:11:05,912] Sdl.TranslationStudio.Editor.Terminology.ProjectTermbasesLoader - begin async initializing for document SamplePhotoPrinter.doc.sdlxliff
INFO [2024-07-11 19:11:07,317] Sdl.TranslationStudio.Editor.Terminology.ProjectTermbasesLoader - GetTermbases, initialization event fired for SamplePhotoPrinter.doc.sdlxliff
INFO [2024-07-11 19:11:07,318] Sdl.TranslationStudio.Editor.Terminology.ProjectTermbasesLoader - GetTermbases end initialization for SamplePhotoPrinter.doc.sdlxliff
INFO [2024-07-11 19:11:08,280] Sdl.TranslationStudio.Editor.EditorService - Opened File xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx from Project xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
INFO [2024-07-11 19:12:50,826] Sdl.Desktop.Platform.Implementation.ResourceLoggingInternalCommandExecuter - Start#Id=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx#Name=MultiTermSettingsAction#ProcessName=SDLTradosStudio#PhysicalMemorySize=366788608#VirtualMemorySize=242401280#ThreadCount=53#HandleCount=1942#GdiHandleCount=1520#UserHandleCount=826#TotalProcessorTime=00:00:32.5625000
INFO [2024-07-11 19:13:43,884] Sdl.TranslationStudio.Editor.Terminology.ProjectTermbasesLoader - begin async initializing for document SamplePhotoPrinter.doc.sdlxliff
INFO [2024-07-11 19:13:43,886] Sdl.TranslationStudio.Editor.Terminology.ProjectTermbasesLoader - GetTermbases, initialization event fired for SamplePhotoPrinter.doc.sdlxliff
INFO [2024-07-11 19:13:43,915] Sdl.Desktop.Platform.Implementation.ResourceLoggingInternalCommandExecuter - Finish#Id=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx#Name=MultiTermSettingsAction#ProcessName=SDLTradosStudio#PhysicalMemorySize=366788608#VirtualMemorySize=242401280#ThreadCount=53#HandleCount=1942#GdiHandleCount=1577#UserHandleCount=835#TotalProcessorTime=00:00:34.4843750
INFO [2024-07-11 19:13:43,999] Sdl.TranslationStudio.Editor.Terminology.ProjectTermbasesLoader - GetTermbases end initialization for SamplePhotoPrinter.doc.sdlxliff
INFO [2024-07-11 19:14:02,921] Sdl.Desktop.Platform.Implementation.ResourceLoggingInternalCommandExecuter - Start#Id=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx#Name=MultiTermSettingsAction#ProcessName=SDLTradosStudio#PhysicalMemorySize=370372608#VirtualMemorySize=244551680#ThreadCount=59#HandleCount=2029#GdiHandleCount=1534#UserHandleCount=832#TotalProcessorTime=00:00:36.0937500
INFO [2024-07-11 19:14:19,757] Sdl.TranslationStudio.Editor.Terminology.ProjectTermbasesLoader - begin async initializing for document SamplePhotoPrinter.doc.sdlxliff
INFO [2024-07-11 19:14:19,759] Sdl.TranslationStudio.Editor.Terminology.ProjectTermbasesLoader - GetTermbases, initialization event fired for SamplePhotoPrinter.doc.sdlxliff
INFO [2024-07-11 19:14:19,766] Sdl.Desktop.Platform.Implementation.ResourceLoggingInternalCommandExecuter - Finish#Id=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx#Name=MultiTermSettingsAction#ProcessName=SDLTradosStudio#PhysicalMemorySize=370372608#VirtualMemorySize=244551680#ThreadCount=59#HandleCount=2029#GdiHandleCount=1583#UserHandleCount=841#TotalProcessorTime=00:00:37.2500000
INFO [2024-07-11 19:14:19,863] Sdl.TranslationStudio.Editor.Terminology.ProjectTermbasesLoader - GetTermbases end initialization for SamplePhotoPrinter.doc.sdlxliff
ERROR [2024-07-11 19:14:20,485] Sdl.TranslationStudio.Editor.Terminology.SegmentTermRecognizer - Object reference not set to an instance of an object.
System.NullReferenceException: Object reference not set to an instance of an object.
   at Sdl.MultiTerm.Client.TerminologyProvider.Search.TermbaseRecognitionEngine.CreateScoringObject()
   at Sdl.MultiTerm.Client.TerminologyProvider.Search.TermbaseRecognitionEngine.FindTerms(String text, Int16 termbaseMaxHits, Boolean includeHomonyms, Boolean allowOverlappingTerms)
   at Sdl.TranslationStudio.Editor.Terminology.SegmentTermRecognizer.RecogniseTerms(IList`1 termbaseContexts, IProjectTermbaseRecognitionOptions recognitionOptions, TermRecognitionSettings termRecognitionSettingsBundle, ITermbaseRecognitionEngine recognitionEngine, PlainTextMapper sourceTextMapper)
ERROR [2024-07-11 19:14:20,690] Sdl.TranslationStudio.Editor.Terminology.SegmentTermRecognizer - Object reference not set to an instance of an object.
System.NullReferenceException: Object reference not set to an instance of an object.
   at Sdl.MultiTerm.Client.TerminologyProvider.Search.TermbaseRecognitionEngine.CreateScoringObject()
   at Sdl.MultiTerm.Client.TerminologyProvider.Search.TermbaseRecognitionEngine.FindTerms(String text, Int16 termbaseMaxHits, Boolean includeHomonyms, Boolean allowOverlappingTerms)
   at Sdl.TranslationStudio.Editor.Terminology.SegmentTermRecognizer.RecogniseTerms(IList`1 termbaseContexts, IProjectTermbaseRecognitionOptions recognitionOptions, TermRecognitionSettings termRecognitionSettingsBundle, ITermbaseRecognitionEngine recognitionEngine, PlainTextMapper sourceTextMapper)
ERROR [2024-07-11 19:14:44,713] Sdl.TranslationStudio.Editor.Terminology.SegmentTermRecognizer - Object reference not set to an instance of an object.
System.NullReferenceException: Object reference not set to an instance of an object.
   at Sdl.MultiTerm.Client.TerminologyProvider.Search.TermbaseRecognitionEngine.CreateScoringObject()
   at Sdl.MultiTerm.Client.TerminologyProvider.Search.TermbaseRecognitionEngine.FindTerms(String text, Int16 termbaseMaxHits, Boolean includeHomonyms, Boolean allowOverlappingTerms)
   at Sdl.TranslationStudio.Editor.Terminology.SegmentTermRecognizer.RecogniseTerms(IList`1 termbaseContexts, IProjectTermbaseRecognitionOptions recognitionOptions, TermRecognitionSettings termRecognitionSettingsBundle, ITermbaseRecognitionEngine recognitionEngine, PlainTextMapper sourceTextMapper)
ERROR [2024-07-11 19:14:44,849] Sdl.TranslationStudio.Editor.Terminology.SegmentTermRecognizer - Object reference not set to an instance of an object.
System.NullReferenceException: Object reference not set to an instance of an object.
   at Sdl.MultiTerm.Client.TerminologyProvider.Search.TermbaseRecognitionEngine.CreateScoringObject()
   at Sdl.MultiTerm.Client.TerminologyProvider.Search.TermbaseRecognitionEngine.FindTerms(String text, Int16 termbaseMaxHits, Boolean includeHomonyms, Boolean allowOverlappingTerms)
   at Sdl.TranslationStudio.Editor.Terminology.SegmentTermRecognizer.RecogniseTerms(IList`1 termbaseContexts, IProjectTermbaseRecognitionOptions recognitionOptions, TermRecognitionSettings termRecognitionSettingsBundle, ITermbaseRecognitionEngine recognitionEngine, PlainTextMapper sourceTextMapper)
INFO [2024-07-11 19:15:02,159] Sdl.TranslationStudio.Plugins.CommunityInside.Notifications.Service.OfflineConnectivityHandler - Request with trace id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx for community.rws.com/.../notifications.json: 
INFO [2024-07-11 19:15:02,547] Sdl.TranslationStudio.Plugins.CommunityInside.Notifications.Service.OfflineConnectivityHandler - Request response: OK
ERROR [2024-07-11 19:17:58,201] Sdl.TranslationStudio.Editor.Terminology.SegmentTermRecognizer - Object reference not set to an instance of an object.
System.NullReferenceException: Object reference not set to an instance of an object.
   at Sdl.MultiTerm.Client.TerminologyProvider.Search.TermbaseRecognitionEngine.CreateScoringObject()
   at Sdl.MultiTerm.Client.TerminologyProvider.Search.TermbaseRecognitionEngine.FindTerms(String text, Int16 termbaseMaxHits, Boolean includeHomonyms, Boolean allowOverlappingTerms)
   at Sdl.TranslationStudio.Editor.Terminology.SegmentTermRecognizer.RecogniseTerms(IList`1 termbaseContexts, IProjectTermbaseRecognitionOptions recognitionOptions, TermRecognitionSettings termRecognitionSettingsBundle, ITermbaseRecognitionEngine recognitionEngine, PlainTextMapper sourceTextMapper)
ERROR [2024-07-11 19:17:58,383] Sdl.TranslationStudio.Editor.Terminology.SegmentTermRecognizer - Object reference not set to an instance of an object.
System.NullReferenceException: Object reference not set to an instance of an object.
   at Sdl.MultiTerm.Client.TerminologyProvider.Search.TermbaseRecognitionEngine.CreateScoringObject()
   at Sdl.MultiTerm.Client.TerminologyProvider.Search.TermbaseRecognitionEngine.FindTerms(String text, Int16 termbaseMaxHits, Boolean includeHomonyms, Boolean allowOverlappingTerms)
   at Sdl.TranslationStudio.Editor.Terminology.SegmentTermRecognizer.RecogniseTerms(IList`1 termbaseContexts, IProjectTermbaseRecognitionOptions recognitionOptions, TermRecognitionSettings termRecognitionSettingsBundle, ITermbaseRecognitionEngine recognitionEngine, PlainTextMapper sourceTextMapper)
INFO [2024-07-11 19:19:49,740] Sdl.Desktop.Platform.Implementation.ResourceLoggingInternalCommandExecuter - Start#Id=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx#Name=MultiTermSettingsAction#ProcessName=SDLTradosStudio#PhysicalMemorySize=370360320#VirtualMemorySize=243572736#ThreadCount=42#HandleCount=2178#GdiHandleCount=1597#UserHandleCount=841#TotalProcessorTime=00:00:40.9062500
INFO [2024-07-11 19:19:52,014] Sdl.Desktop.Platform.Implementation.ResourceLoggingInternalCommandExecuter - Start#Id=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx#Name=Saving As ...#ProcessName=SDLTradosStudio#PhysicalMemorySize=370450432#VirtualMemorySize=243654656#ThreadCount=42#HandleCount=2064#GdiHandleCount=1657#UserHandleCount=885#TotalProcessorTime=00:00:41.2187500
INFO [2024-07-11 19:19:52,189] Sdl.Desktop.Platform.Implementation.ResourceLoggingInternalCommandExecuter - Finish#Id=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx#Name=Saving As ...#ProcessName=SDLTradosStudio#PhysicalMemorySize=370450432#VirtualMemorySize=243654656#ThreadCount=42#HandleCount=2064#GdiHandleCount=1593#UserHandleCount=872#TotalProcessorTime=00:00:41.4375000
INFO [2024-07-11 19:20:02,160] Sdl.TranslationStudio.Plugins.CommunityInside.Notifications.Service.OfflineConnectivityHandler - Request with trace id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx for community.rws.com/.../notifications.json: 
INFO [2024-07-11 19:20:02,479] Sdl.TranslationStudio.Plugins.CommunityInside.Notifications.Service.OfflineConnectivityHandler - Request response: OK
INFO [2024-07-11 19:24:09,589] Sdl.Desktop.Platform.Implementation.ResourceLoggingInternalCommandExecuter - Finish#Id=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx#Name=MultiTermSettingsAction#ProcessName=SDLTradosStudio#PhysicalMemorySize=370360320#VirtualMemorySize=243572736#ThreadCount=42#HandleCount=2178#GdiHandleCount=1584#UserHandleCount=838#TotalProcessorTime=00:00:42.6406250
ERROR [2024-07-11 19:24:11,906] Sdl.TranslationStudio.Editor.Terminology.SegmentTermRecognizer - Object reference not set to an instance of an object.
System.NullReferenceException: Object reference not set to an instance of an object.
   at Sdl.MultiTerm.Client.TerminologyProvider.Search.TermbaseRecognitionEngine.CreateScoringObject()
   at Sdl.MultiTerm.Client.TerminologyProvider.Search.TermbaseRecognitionEngine.FindTerms(String text, Int16 termbaseMaxHits, Boolean includeHomonyms, Boolean allowOverlappingTerms)
   at Sdl.TranslationStudio.Editor.Terminology.SegmentTermRecognizer.RecogniseTerms(IList`1 termbaseContexts, IProjectTermbaseRecognitionOptions recognitionOptions, TermRecognitionSettings termRecognitionSettingsBundle, ITermbaseRecognitionEngine recognitionEngine, PlainTextMapper sourceTextMapper)
ERROR [2024-07-11 19:24:12,054] Sdl.TranslationStudio.Editor.Terminology.SegmentTermRecognizer - Object reference not set to an instance of an object.
System.NullReferenceException: Object reference not set to an instance of an object.
   at Sdl.MultiTerm.Client.TerminologyProvider.Search.TermbaseRecognitionEngine.CreateScoringObject()
   at Sdl.MultiTerm.Client.TerminologyProvider.Search.TermbaseRecognitionEngine.FindTerms(String text, Int16 termbaseMaxHits, Boolean includeHomonyms, Boolean allowOverlappingTerms)
   at Sdl.TranslationStudio.Editor.Terminology.SegmentTermRecognizer.RecogniseTerms(IList`1 termbaseContexts, IProjectTermbaseRecognitionOptions recognitionOptions, TermRecognitionSettings termRecognitionSettingsBundle, ITermbaseRecognitionEngine recognitionEngine, PlainTextMapper sourceTextMapper)
INFO [2024-07-11 19:25:02,161] Sdl.TranslationStudio.Plugins.CommunityInside.Notifications.Service.OfflineConnectivityHandler - Request with trace id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx for community.rws.com/.../notifications.json: 
INFO [2024-07-11 19:25:02,513] Sdl.TranslationStudio.Plugins.CommunityInside.Notifications.Service.OfflineConnectivityHandler - Request response: OK
INFO [2024-07-11 19:26:36,957] Sdl.Desktop.Platform.Implementation.ResourceLoggingInternalCommandExecuter - Start#Id=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx#Name=options#ProcessName=SDLTradosStudio#PhysicalMemorySize=368410624#VirtualMemorySize=270041088#ThreadCount=42#HandleCount=2174#GdiHandleCount=1587#UserHandleCount=841#TotalProcessorTime=00:00:45.0312500
INFO [2024-07-11 19:26:39,106] Sdl.Desktop.Platform.Implementation.ResourceLoggingInternalCommandExecuter - Finish#Id=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx#Name=options#ProcessName=SDLTradosStudio#PhysicalMemorySize=368410624#VirtualMemorySize=270041088#ThreadCount=42#HandleCount=2174#GdiHandleCount=1657#UserHandleCount=863#TotalProcessorTime=00:00:45.6562500
INFO [2024-07-11 19:26:41,777] Sdl.Desktop.Platform.Implementation.ResourceLoggingInternalCommandExecuter - Start#Id=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx#Name=viewlogfileaction#ProcessName=SDLTradosStudio#PhysicalMemorySize=369139712#VirtualMemorySize=270471168#ThreadCount=42#HandleCount=2177#GdiHandleCount=1647#UserHandleCount=861#TotalProcessorTime=00:00:46.0312500
INFO [2024-07-11 19:26:41,885] Sdl.Desktop.Platform.Implementation.ResourceLoggingInternalCommandExecuter - Finish#Id=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx#Name=viewlogfileaction#ProcessName=SDLTradosStudio#PhysicalMemorySize=369139712#VirtualMemorySize=270471168#ThreadCount=42#HandleCount=2177#GdiHandleCount=1647#UserHandleCount=865#TotalProcessorTime=00:00:46.1406250


I noticed from my personal logs that the `ITerminologyProvider.Search` runs normally without issues and I return the search results properly, but the `ITerminologyProvider.GetEntry(int id)` does not run at all.

It is important to notice that the exact same code runs perfectly in Trados Studio 2024.

-------------------------

PROBLEM #2: STEPS TO REPRODUCE

Follow exactly the same steps 1-3 from problem #1

Now, open your project and notice that Trados does not ever run the `ITerminologyProvider.GetDescriptiveFields()` to fill in the Hitlist Fields

This problem exists in Studio 2022 SR2 and Studio 2024.

If I use no custom languages I get the descriptive fields to work fine.

Looking forward to your answer



Generated Image Alt-Text
[edited by: RWS Community AI at 6:00 PM (GMT 1) on 11 Jul 2024]
Parents Reply Children
  • Hi Emanuel,

    I just noticed. It seems that I have implemented the Definition property getter as well. In order to troubleshoot the issue I added some logs at the getter to see when it is invoked. I verified that it gets invoked only when a standard language is selected in the language mapping (see question step 3). If any of the source or destination languages of the project is a custom (regional) language selected manually at this step, then the Definition getter is not invoked at all during initialization of the project.

    If you want to test it you need to manually select a custom language at step 3 and then shut down Studio 2024, restart it and open your project. You will notice that because you selected a custom language, the Definition of the ITerminologyProvider is not invoked at all. Can you help me with this issue?

    Also Studio logs have no error in this case:

    INFO [2024-09-16 22:38:47,116] TradosStudio.PushNotificationProvider.SignalRClient - Initializing client
    ERROR [2024-09-16 22:38:48,271] Sdl.Desktop.Platform.ServerConnectionPlugin.Client.IdentityModel.UserCredentialRepository - Error reading GS servers
    System.IO.DirectoryNotFoundException: Could not find a part of the path 'C:\Users\tsous\AppData\Roaming\Trados\Platform\Identity\SDLTradosStudio.exe\Servers.bin'.
    at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
    at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
    at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options, String msgPath, Boolean bFromProxy, Boolean useLongPath, Boolean checkHost)
    at System.IO.StreamReader..ctor(String path, Encoding encoding, Boolean detectEncodingFromByteOrderMarks, Int32 bufferSize, Boolean checkHost)
    at System.IO.File.InternalReadAllText(String path, Encoding encoding, Boolean checkHost)
    at System.IO.File.ReadAllText(String path)
    at Sdl.Desktop.Platform.Implementation.SystemIO.FileWrapper.ReadAllText(String path)
    at Sdl.Desktop.Platform.ServerConnectionPlugin.Client.IdentityModel.UserCredentialRepository.Load()
    INFO [2024-09-16 22:38:50,099] Sdl.Desktop.Platform.Implementation.Studio - Starting application service.
    INFO [2024-09-16 22:38:50,228] Sdl.BestMatchServiceStudioIntegration.Common.DelegatingHandlers.ConnectivityHandler - Request with trace id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx for lc-api.sdl.com/.../sync-user-profile:
    INFO [2024-09-16 22:38:51,076] Sdl.BestMatchServiceStudioIntegration.Common.DelegatingHandlers.ConnectivityHandler - Request response: OK traceId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
    INFO [2024-09-16 22:38:51,132] Sdl.BestMatchServiceStudioIntegration.Common.DelegatingHandlers.ConnectivityHandler - Request with trace id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx for lc-api.sdl.com/.../accountsAndSettings:
    INFO [2024-09-16 22:38:51,690] Sdl.BestMatchServiceStudioIntegration.Common.DelegatingHandlers.ConnectivityHandler - Request response: OK traceId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
    INFO [2024-09-16 22:38:51,810] Sdl.BestMatchServiceStudioIntegration.Common.DelegatingHandlers.ConnectivityHandler - Request with trace id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx for lc-api.sdl.com/.../studioPackage:
    INFO [2024-09-16 22:38:52,309] Sdl.BestMatchServiceStudioIntegration.Common.DelegatingHandlers.ConnectivityHandler - Request response: OK traceId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
    INFO [2024-09-16 22:38:52,347] Sdl.TranslationStudio.LanguageCloud.Startup.LanguageCloudLogin - Language Cloud login successful.
    INFO [2024-09-16 22:38:52,413] Sdl.TranslationStudio.ProjectManagement.AutoDeleteOnStartup - Deleting temporary files
    INFO [2024-09-16 22:38:54,129] Sdl.BestMatchServiceStudioIntegration.Common.DelegatingHandlers.ConnectivityHandler - Request with trace id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx for lc-api.sdl.com/.../assigned:
    INFO [2024-09-16 22:38:54,763] Sdl.BestMatchServiceStudioIntegration.Common.DelegatingHandlers.ConnectivityHandler - Request response: OK traceId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
    INFO [2024-09-16 22:38:55,632] Sdl.TranslationStudio.ProjectManagement.ProjectManagementService - ProjectManagementService started: 1647 ms
    INFO [2024-09-16 22:39:01,573] TradosStudio.PushNotificationProvider.SignalRClient - Configuring websocket connection
    INFO [2024-09-16 22:39:01,573] TradosStudio.PushNotificationProvider.SignalRClient - TraceId for signalR connection: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
    INFO [2024-09-16 22:39:01,652] TradosStudio.PushNotificationProvider.SignalRClient - Connection built has state Disconnected
    INFO [2024-09-16 22:39:01,667] TradosStudio.PushNotificationProvider.SignalRClient - Connecting to push notification service
    INFO [2024-09-16 22:39:01,701] Microsoft.AspNetCore.Http.Connections.Client.Internal.WebSocketsTransport - Starting transport. Transfer mode: Text. Url: 'wss://studio-push-notification.sdl.com/ProjectsHub'.
    INFO [2024-09-16 22:39:02,431] Sdl.AppStoreIntegration.Service.OfflineConnectivityHandler - Request with trace id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx for studio-appstore-api.azurewebsites.net/plugins Studio&studioVersion=18.0.0.1013:
    INFO [2024-09-16 22:39:02,566] Microsoft.AspNetCore.Http.Connections.Client.HttpConnection - HttpConnection Started.
    INFO [2024-09-16 22:39:02,571] Microsoft.AspNetCore.SignalR.Client.HubConnection - Using HubProtocol 'json v1'.
    INFO [2024-09-16 22:39:02,739] Sdl.TranslationStudio.Plugins.CommunityInside.Notifications.Service.OfflineConnectivityHandler - Request with trace id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx for community.rws.com/.../login:
    INFO [2024-09-16 22:39:02,772] Microsoft.AspNetCore.SignalR.Client.HubConnection - HubConnection started.
    INFO [2024-09-16 22:39:02,778] Sdl.Desktop.Platform.Implementation.ResourceLoggingInternalCommandExecuter - Start#Id=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx#Name=Connecting#ProcessName=SDLTradosStudio#PhysicalMemorySize=268140544#VirtualMemorySize=170905600#ThreadCount=34#HandleCount=1301#GdiHandleCount=854#UserHandleCount=424#TotalProcessorTime=00:00:12.7968750
    INFO [2024-09-16 22:39:02,780] Sdl.Desktop.Platform.Implementation.ResourceLoggingInternalCommandExecuter - Finish#Id=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx#Name=Connecting#ProcessName=SDLTradosStudio#PhysicalMemorySize=268140544#VirtualMemorySize=170905600#ThreadCount=34#HandleCount=1301#GdiHandleCount=860#UserHandleCount=426#TotalProcessorTime=00:00:12.7968750
    INFO [2024-09-16 22:39:03,440] TradosStudio.PushNotificationProvider.SignalRClient - Subscribing to project changes
    INFO [2024-09-16 22:39:03,534] Sdl.AppStoreIntegration.Service.OfflineConnectivityHandler - Request response: OK
    INFO [2024-09-16 22:39:03,896] Sdl.Desktop.Platform.Implementation.Services.Updater.UpdateClientCaller - Started TrueUpdate Process Id: 21268
    INFO [2024-09-16 22:39:03,978] Sdl.TranslationStudio.Plugins.CommunityInside.Notifications.Service.OfflineConnectivityHandler - Request response: OK
    INFO [2024-09-16 22:39:03,989] Sdl.TranslationStudio.Plugins.CommunityInside.Notifications.Service.OfflineConnectivityHandler - Request with trace id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx for community.rws.com/.../notifications.json:
    INFO [2024-09-16 22:39:04,390] Sdl.TranslationStudio.Plugins.CommunityInside.Notifications.Service.OfflineConnectivityHandler - Request response: OK
    INFO [2024-09-16 22:39:04,856] Sdl.AppStoreIntegration.Service.OfflineConnectivityHandler - Request with trace id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx for studio-appstore-api.azurewebsites.net/mapNames
    INFO [2024-09-16 22:39:05,030] Sdl.AppStoreIntegration.Service.OfflineConnectivityHandler - Request response: OK
    INFO [2024-09-16 22:39:05,114] Sdl.AppStoreIntegration.Service.OfflineConnectivityHandler - Request with trace id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx for studio-appstore-api.azurewebsites.net/.../categories:
    INFO [2024-09-16 22:39:05,276] Sdl.AppStoreIntegration.Service.OfflineConnectivityHandler - Request response: OK
    INFO [2024-09-16 22:39:05,557] Sdl.Desktop.Platform.Implementation.Services.Updater.UpdateClientCaller - TrueUpdate ProcessId=21268 has exited
    INFO [2024-09-16 22:39:05,558] Sdl.Desktop.Platform.Implementation.Services.Updater.UpdateInfoReader - Trying to read file: C:\Users\tsous\AppData\Local\Temp\Studio18Updates\FilteredUpdates.xml
    INFO [2024-09-16 22:39:05,558] Sdl.Desktop.Platform.Implementation.Services.Updater.UpdateInfoReader - File not found
    INFO [2024-09-16 22:39:13,510] Sdl.Desktop.Platform.Implementation.ResourceLoggingInternalCommandExecuter - Start#Id=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx#Name=Opening SamplePhotoPrinter.doc.sdlxliff#ProcessName=SDLTradosStudio#PhysicalMemorySize=338927616#VirtualMemorySize=219996160#ThreadCount=38#HandleCount=1581#GdiHandleCount=1610#UserHandleCount=693#TotalProcessorTime=00:00:19.8750000
    INFO [2024-09-16 22:39:14,729] Sdl.Desktop.Platform.Implementation.ResourceLoggingInternalCommandExecuter - Finish#Id=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx#Name=Opening SamplePhotoPrinter.doc.sdlxliff#ProcessName=SDLTradosStudio#PhysicalMemorySize=338927616#VirtualMemorySize=219996160#ThreadCount=38#HandleCount=1581#GdiHandleCount=1468#UserHandleCount=652#TotalProcessorTime=00:00:21.4375000
    INFO [2024-09-16 22:39:19,691] Sdl.TranslationStudio.Editor.Terminology.ProjectTermbasesLoader - begin async initializing for document SamplePhotoPrinter.doc.sdlxliff
    INFO [2024-09-16 22:39:20,957] Sdl.TranslationStudio.Editor.Terminology.ProjectTermbasesLoader - GetTermbases, initialization event fired for SamplePhotoPrinter.doc.sdlxliff
    INFO [2024-09-16 22:39:20,958] Sdl.TranslationStudio.Editor.Terminology.ProjectTermbasesLoader - GetTermbases end initialization for SamplePhotoPrinter.doc.sdlxliff
    INFO [2024-09-16 22:39:21,578] Sdl.TranslationStudio.Editor.EditorService - Opened File xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx from Project xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
    INFO [2024-09-16 22:39:30,428] Sdl.Desktop.Platform.Implementation.ResourceLoggingInternalCommandExecuter - Start#Id=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx#Name=viewlogfileaction#ProcessName=SDLTradosStudio#PhysicalMemorySize=437796864#VirtualMemorySize=299646976#ThreadCount=46#HandleCount=1840#GdiHandleCount=1554#UserHandleCount=902#TotalProcessorTime=00:00:29.3125000
    INFO [2024-09-16 22:39:30,550] Sdl.Desktop.Platform.Implementation.ResourceLoggingInternalCommandExecuter - Finish#Id=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx#Name=viewlogfileaction#ProcessName=SDLTradosStudio#PhysicalMemorySize=437796864#VirtualMemorySize=299646976#ThreadCount=46#HandleCount=1840#GdiHandleCount=1554#UserHandleCount=902#TotalProcessorTime=00:00:29.4218750