We were able to import our products from Sitecore Commerce to the Sitecore CMS (saved as virtual items), and I would like to search for these products using the Sitecore Search. So I rebuild the Sitecore_master_index using the "indexing manager" in the control panel, unfortunately the rebuild stopped after processing the 20000 items and showed me the below error

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

    Job started: Index_Update_IndexName=sitecore_master_index|#Exception: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.ArgumentNullException: Value cannot be null.
    Parameter name: item
       at Sitecore.Diagnostics.Assert.ArgumentNotNull(Object argument, String argumentName)
       at Sitecore.Commerce.Engine.Connect.Search.Crawlers.CatalogCrawlerBase`1.GetCatalogEntityLanguages(Item item)
       at Sitecore.Commerce.Engine.Connect.Search.Crawlers.CatalogCrawlerBase`1.GetItem(TEntity catalogEntity)
       at Sitecore.Commerce.Engine.Connect.Search.Crawlers.CatalogCrawlerBase`1.Add(IProviderUpdateContext context, CancellationToken cancellationToken)
       at Sitecore.ContentSearch.FlatDataCrawler`1.RebuildFromRoot(IProviderUpdateContext context, IndexingOptions indexingOptions, CancellationToken cancellationToken)
       at Sitecore.ContentSearch.SolrProvider.SolrSearchIndex.PerformRebuild(Boolean resetIndex, Boolean optimizeOnComplete, IndexingOptions indexingOptions, CancellationToken cancellationToken)
       at Sitecore.ContentSearch.SolrProvider.SolrSearchIndex.Rebuild(Boolean resetIndex, Boolean optimizeOnComplete)
       --- End of inner exception stack trace ---
       at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
       at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments)
       at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
       at Sitecore.Reflection.ReflectionUtil.InvokeMethod(MethodInfo method, Object[] parameters, Object obj)
       at Sitecore.Jobs.JobRunner.RunMethod(JobArgs args)
       at (Object , Object[] )
       at Sitecore.Pipelines.CorePipeline.Run(PipelineArgs args)
       at Sitecore.Pipelines.DefaultCorePipelineManager.Run(String pipelineName, PipelineArgs args, String pipelineDomain)
       at Sitecore.Jobs.Job.DoExecute()
       at Sitecore.Jobs.Job.ThreadEntry(Object state)

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

I assume that the index was crawling all the items until it started to crawl the commerce products and some items are maybe null or something like that.

I hope that someone could help me.

Thanks in advance