This happened: We have a site with millions of products. The product pages can be filtered by color, size, gender, category, brand, etc. Each of these variations has its own unique url. The number of variations are infinite. The bad advise we got from the SEO company led to hundreds of thousands of these pages beeing crawled by google. The internal links were DOFOLLOW but the target page (the product page) were marked as NOINDEX. So we were passing link value to pages that were NOINDEX. This has all been fixed today so that Google bot can not see the links to the URLs that we do not want them to index.
But there is still a huge problem. Google bot/crawler/indexer does not seem to forget all the hundreds of thousands of NOINDEX URLs it previously visited. Weeks ago we decided to open up another 7000 product urls for indexation (from 5000 to 12000). So we removed the NOINDEX on those pages, added links to them from other pages on the site and also added them to the sitemap. Google has visited/seen the new sitemap several times since then. So we assumed this would mean that Google bot would visit these urls, see that the NOINDEX directive is removed, and decide to index them. But no!
What happened was that we got warnings in Search Console: "Submitted URL marked noindex". But that was not true - sure they hade NOINDEX previously, but not today. So how do we get Google bot to actually go and look and see that the NOINDEX directive is gone? By starting the verification process in Search Console for this specific error? No that did not work. The verification process failed. It seems as if Google just relies on the old data they have for these 7000 URLS but cant bother to go and check to see if it has been changed. How can we make them go and see?