Error occurring during verify process: "Failed to verify document: Object reference not set to an instance of an object."

Hi,

I've just finished translating a rather large document in SDL Trados 2017 and clicked on 'verify' to review the document. This worked fine but I then amended some of the verifcatoon settings and when I tried to run a second verification I got the following error message: "Failed to verify document: Object reference not set to an instance of an object."

Does anyone know why this is happening and if there is anything I can do?

 

Here is the error report of this helps. Thanks i advance!

Failed to verify document: Object reference not set to an instance of an object.

 

System.NullReferenceException, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089

 

Sdl.Verification.TermVerifier

-2147467261

at Sdl.Verification.TermVerifier.TermVerifierProcessing.HasTargetEntry(ITermRecognitionHit sourceHit)    at Sdl.Verification.TermVerifier.TermVerifierProcessing.CheckTermUsage(ISegment target)    at Sdl.Verification.TermVerifier.TermVerifierProcessing.Verify(ISegment Source, ISegment Target, Boolean sourceHasRevisions, Boolean targetHasRevisions)    at Sdl.Verification.TermVerifier.TermVerifierMain.ProcessParagraphUnit(IParagraphUnit paragraphUnit)    at Sdl.FileTypeSupport.Framework.Core.Utilities.BilingualApi.BilingualContentHandlerAdapter.ProcessParagraphUnit(IParagraphUnit paragraphUnit)    at Sdl.FileTypeSupport.Framework.Core.Utilities.BilingualApi.BilingualContentHandlerAdapter.ProcessParagraphUnit(IParagraphUnit paragraphUnit)    at Sdl.FileTypeSupport.Framework.Core.Utilities.BilingualApi.BilingualContentHandlerAdapter.ProcessParagraphUnit(IParagraphUnit paragraphUnit)    at Sdl.FileTypeSupport.Framework.Integration.AbstractBilingualProcessorContainer.ProcessParagraphUnit(IParagraphUnit paragraphUnit)    at Sdl.FileTypeSupport.Framework.BilingualApi.AbstractBilingualContentProcessor.ProcessParagraphUnit(IParagraphUnit paragraphUnit)    at Sdl.FileTypeSupport.Framework.Integration.LocationMarkerLocator.ProcessParagraphUnit(IParagraphUnit paragraphUnit)    at Sdl.FileTypeSupport.Framework.Integration.AbstractBilingualProcessorContainer.ProcessParagraphUnit(IParagraphUnit paragraphUnit)    at Sdl.FileTypeSupport.Framework.Integration.FileExtractor.ProcessParagraphUnit(IParagraphUnit paragraphUnit)    at Sdl.FileTypeSupport.Bilingual.Tmfc.TmfcReaderImpl.vv_Visit(TmfcReaderImpl* , FrameworkParagraphContainerField* field)    at FrameworkParagraphContainerField.vv_AcceptFrameworkVisitor(FrameworkParagraphContainerField* , FrameworkFieldVisitor* visitor)    at Sdl.FileTypeSupport.Bilingual.Tmfc.TmfcReaderImpl.vv_VisitStartEndField(TmfcReaderImpl* , StartEndField* startEnd)    at Sdl.FileTypeSupport.Bilingual.Tmfc.TmfcReaderImpl.b_VisitNext(TmfcReaderImpl* )    at Sdl.FileTypeSupport.Bilingual.Tmfc.TmfcReader.ParseNext()    at Sdl.FileTypeSupport.Framework.Integration.FileExtractor.ParseNext()    at Sdl.FileTypeSupport.Framework.Integration.MultiFileConverter.ParseNext()    at Sdl.FileTypeSupport.Framework.Integration.MultiFileConverter.Parse()    at Sdl.TranslationStudio.Editor.Verification.VerifyDocumentJobRequest.PerformBilingualVerification()    at Sdl.TranslationStudio.Editor.Verification.VerifyDocumentJobRequest.Execute(IJobExecutionContext context)    at Sdl.Desktop.Platform.Implementation.Services.Job.<_worker_DoWork>b__3()    at Sdl.Desktop.Platform.Implementation.Services.Log.Resources(Object message, Action action)    at Sdl.Desktop.Platform.Implementation.Services.Job._worker_DoWork(Object sender, DoWorkEventArgs e)    at System.ComponentModel.BackgroundWorker.OnDoWork(DoWorkEventArgs e)    at System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)

SDL Trados Studio

14.0.0.0

14.1.6329.7

Microsoft Windows 10 Home

NULL

1033

1252

MARKLEACHB63B\markleach

4.0.30319.42000

MARKLEACHB63B

True

2096676 M

Parents Reply
  • Unknown said:
    The 'Object reference...' message means, very basically, that something isn't where it should be (or something is where it shouldn't be ;-) and is a Windows error message rather than a Studio one so the trigger could be anything, anywhere.

    Nope, not true.
    It's a .NET Framework message and indeed comes from Studio. And it definitely doesn't always mean that "something is where it shouldn't be"... it just means that something went wrong and has absolutely nothing in common with WHY.
    Often is this caused by Studio seeing something unexpected not because it shouldn't be there, but because the developer did not know it can be there... which is a big difference.

Children
  • Hi ,

    Thank you for your very useful and clear explanation, it makes much better sense than how I tried to describe this ;-))

    I guess I was trying to say that it is an error that could be triggered by any software in a given environment so not a specifically Studio-programmed error and that it meant 'the object reference isn't set to something that is there' but that was more of a grammatical interpretation of the phrase than a technical one, based only on what I'd read others explaining online.

    I do like your explanation 'seeing something unexpected not because it shouldn't be there, but because the developer did not know it can be there.' That is as clear as anything could be and makes perfect sense to me. I have observed how electronic impulses can combine to produce unexpected results, from something as simple as accidentally clicking multiple keys triggering the production of a strange symbol/function/window, right through to the programming involved in a random selection of different software producing unexpected results that would not have been anticipated by the programmers of each individual piece of software. 

    I think you can probably guess I know nothing about programming!

    All the best,

    Ali :)

  • Hi ,
    it doesn't always have to be something really unexpected, but often it's just something what the developer simply forgot about that it CAN happen...
    Coincidentally I experienced that situation yesterday - my script for converting analysis logs to other format, which I'm happily using for like a year or so, suddenly failed... And the problem was that my percentage calculation (number_of_words_in_certain_category / total_words) was not ready for cases when "total_words" is zero... (which is easy to get - have a completely PerfectMatched file with all content locked and analyze it using "exclude locked content" option...).
    So the resulting analysis was perfectly legit, it was my script's fault that it wasn't able to handle such legitimate situation.
  • Hi ,

    I realise it doesn't always have to be unexpected but I do find it very interesting when the unexpected does happen. For example the subject covered by your exchange with Paul, here:

    Adding extra italic formatting...

    At least this shows that things that may not have been intended to happen can sometimes be very useful... 

    Anyway, thank you for helping me understand better something I was only really guessing about before...

    All the best,

    Ali :)

  • This problem occurs frequently for me (Trados Studio 2019) and caused me to suggest an Idea a couple of months ago to make Verify more "tolerant" of such errors that apply to a single object (which is not even mentioned in the error log). Verify should be able to continue processing with the next segment,

    <SDLErrorDetails time="15/07/2022 09:57:59">
      <ErrorMessage>Failed to verify document: Object reference not set to an instance of an object.</ErrorMessage>
      <Exception>
        <Type>System.NullReferenceException, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</Type>
        <HelpLink />
        <Source>Sdl.Verification.TermVerifier</Source>
        <HResult>-2147467261</HResult>
        <StackTrace><![CDATA[   at Sdl.Verification.TermVerifier.TermVerifierProcessing.HasTargetEntry(ITermRecognitionHit sourceHit)
       at Sdl.Verification.TermVerifier.TermVerifierProcessing.CheckTermUsage(ISegment target)
       at Sdl.Verification.TermVerifier.TermVerifierProcessing.Verify(ISegment Source, ISegment Target, Boolean sourceHasRevisions, Boolean targetHasRevisions)
       at Sdl.Verification.TermVerifier.TermVerifierMain.ProcessParagraphUnit(IParagraphUnit paragraphUnit)
       at Sdl.FileTypeSupport.Framework.Core.Utilities.BilingualApi.BilingualContentHandlerAdapter.ProcessParagraphUnit(IParagraphUnit paragraphUnit)
       at Sdl.FileTypeSupport.Framework.Core.Utilities.BilingualApi.BilingualContentHandlerAdapter.ProcessParagraphUnit(IParagraphUnit paragraphUnit)
       at Sdl.FileTypeSupport.Framework.Core.Utilities.BilingualApi.BilingualContentHandlerAdapter.ProcessParagraphUnit(IParagraphUnit paragraphUnit)
       at Sdl.FileTypeSupport.Framework.Integration.AbstractBilingualProcessorContainer.ProcessParagraphUnit(IParagraphUnit paragraphUnit)
       at Sdl.FileTypeSupport.Framework.BilingualApi.AbstractBilingualContentProcessor.ProcessParagraphUnit(IParagraphUnit paragraphUnit)
       at Sdl.FileTypeSupport.Framework.Integration.LocationMarkerLocator.ProcessParagraphUnit(IParagraphUnit paragraphUnit)
       at Sdl.FileTypeSupport.Framework.Integration.AbstractBilingualProcessorContainer.ProcessParagraphUnit(IParagraphUnit paragraphUnit)
       at Sdl.FileTypeSupport.Framework.Integration.FileExtractor.ProcessParagraphUnit(IParagraphUnit paragraphUnit)
       at Sdl.FileTypeSupport.Bilingual.Tmfc.TmfcReaderImpl.vv_Visit(TmfcReaderImpl* , FrameworkParagraphContainerField* field)
       at FrameworkParagraphContainerField.vv_AcceptFrameworkVisitor(FrameworkParagraphContainerField* , FrameworkFieldVisitor* visitor)
       at Sdl.FileTypeSupport.Bilingual.Tmfc.TmfcReaderImpl.vv_VisitStartEndField(TmfcReaderImpl* , StartEndField* startEnd)
       at Sdl.FileTypeSupport.Bilingual.Tmfc.TmfcReaderImpl.b_VisitNext(TmfcReaderImpl* )
       at Sdl.FileTypeSupport.Bilingual.Tmfc.TmfcReader.ParseNext()
       at Sdl.FileTypeSupport.Framework.Integration.FileExtractor.ParseNext()
       at Sdl.FileTypeSupport.Framework.Integration.MultiFileConverter.ParseNext()
       at Sdl.FileTypeSupport.Framework.Integration.MultiFileConverter.Parse()
       at Sdl.TranslationStudio.Editor.Verification.VerifyDocumentJobRequest.PerformBilingualVerification()
       at Sdl.TranslationStudio.Editor.Verification.VerifyDocumentJobRequest.Execute(IJobExecutionContext context)
       at Sdl.Desktop.Platform.Implementation.Services.Job.<_worker_DoWork>b__47_0()
       at Sdl.Desktop.Logger.Log.Resources(Object message, Action action)
       at Sdl.Desktop.Platform.Implementation.Services.Job._worker_DoWork(Object sender, DoWorkEventArgs e)
       at System.ComponentModel.BackgroundWorker.OnDoWork(DoWorkEventArgs e)
       at System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)]]></StackTrace>
      </Exception>
      <Environment>
        <ProductName>SDL Trados Studio</ProductName>
        <ProductVersion>15.0.0.0</ProductVersion>
        <EntryAssemblyFileVersion>15.2.8.3007</EntryAssemblyFileVersion>
        <OperatingSystem>Microsoft Windows 10 Pro</OperatingSystem>
        <ServicePack>NULL</ServicePack>
        <OperatingSystemLanguage>2057</OperatingSystemLanguage>
        <CodePage>1252</CodePage>
        <LoggedOnUser>DESKTOP-ASJBLNL\Rudd</LoggedOnUser>
        <DotNetFrameWork>4.0.30319.42000</DotNetFrameWork>
        <ComputerName>DESKTOP-ASJBLNL</ComputerName>
        <ConnectedToNetwork>True</ConnectedToNetwork>
        <PhysicalMemory>8315872 MB</PhysicalMemory>
      </Environment>
    </SDLErrorDetails>
     

    emoji