Hi everyone,
I am encountering a blocking issue with the Analytics Adoption Metadata managed package (Salesforce Labs) and wanted to report this bug to see if a workaround exists or if a patch is planned.
The Error:
The asynchronous process fails with an exception indicating that ApexPages.addMessage() is being invoked from a non-Visualforce context.
(Optional: Paste the exact stack trace line here if you have it, e.g., System.HandledException: ApexPages.addMessage can only be called from a Visualforce page context).Technical Breakdown:
- Root Cause: The exception is thrown by the WaveMetaDataQueueable job, which executes asynchronously.
- The Conflict: The code is attempting to use ApexPages.addMessage() to handle an error or status. While this works perfectly during a synchronous Visualforce page request, it is completely detached from a page context when running in a Queueable Apex process.
- The Result: Salesforce throws a runtime exception because there is no UI page to attach the message to.
The Roadblock:
Because this is part of the managed
Analytics Adoption Metadata package, the underlying source code of WaveMetaDataQueueable is hidden. I cannot manually wrap this in a conditional context check (like checking if ApexPages.currentPage() is null) or remove the line myself.Has anyone else run into this with the latest release, or does anyone know if the Salesforce Labs team is actively tracking a patch for this queueable class? Any advice or temporary workarounds would be greatly appreciated!
#Salesforce Labs #Adoption App #CRM Analytics #Apexexceptionemails
Hi there,
There is a tracked issue on
issues.salesforce.com: "Einstein Analytics - Adoption App - Apex Error Argument cannot be null," which describes the same WaveMetaDataQueueable class failing after installing the Analytics Adoption Metadata package. The exact error text differs slightly from yours (Argument cannot be null vs. the ApexPages.addMessage context error), but it's the same failing queueable class in the same managed package — worth checking that issue thread for current status/comments, since it confirms this isn't isolated to your org.
Since the package is managed and WaveMetaDataQueueable's source is hidden, you're right that you can't patch around it directly. Practical options in the meantime:
1. Disable the Adoption Metadata dataflow trigger. In Setup → Analytics Settings (or via the AnalyticsSettings metadata, analyticsAdoptionMetadata flag), you can turn off automatic Adoption Analytics metadata collection so the queueable stops firing and throwing the exception on schedule.
2. Check/upvote the existing issue on
issues.salesforce.comrather than filing a duplicate — that's the channel Salesforce Labs teams actually monitor for prioritization, and comments/votes there carry more weight toward getting a fix scheduled than a community thread.
3. If this isn't business-critical for you right now, uninstalling the package until a patch lands is the cleanest way to stop the recurring failed async job/error emails.
Since it's a Salesforce Labs (not core platform) managed package, there's no formal SLA on a fix — the
issues.salesforce.com thread is genuinely your best channel to track and push for resolution.