R1D45 Queueable Apex

| programming | salesforce |

I am pretty sure that by the third week of any budding Apex developers journey they run into the following error in their code.

Error: 'You have uncommitted work pending. Please commit or rollback before calling out.'

The help documentation does a decent job explaining what is happening. It turns out that if you have any DML in your code,  you cannot make a "callout" (HTTP call) in the same method.

Unfortunately, there is no way to “commit” in Apex. What they really mean, is you need to do this step asynchronously. There are two ways of doing this. Using the @future annotation (I still have no idea how this works) or using Queueable Apex.

This allows you to essentially schedule jobs on a separate “thread” and not block the other parts of salesforce while your code runs.

The thing that threw me off was that I was not actually doing any DML in my code. My code is triggered with a DB trigger when a record is inserted or updated. I assumed that since the record was already inserted or updated then it would also already be “committed”, but this turns out to not be the case and I suppose this rule applies to anything that has to do with the Salesforce database.

Thank you for reading! Share your thoughts with me on bluesky, mastodon, or via email.

Check out some more stuff to read down below.

Most popular posts this month

Recent Favorite Blog Posts

This is a collection of the last 8 posts that I bookmarked.

Articles from blogs I follow around the net

Happy Holidays 2025

It wasn't the best of times or the worst of times. Well, it might be the worst of times.

via ODonnellWeb December 25, 2025

Clear your calendar, pour a favorite beverage, and immerse yourself into the year in music with reports from Simon Collison and Jon Hicks. Fantastic every year.

via Colin Devroe December 24, 2025

On Friday Deploys: Sometimes that Puppy Needs Murdering

It's the most wonderful time of the year: the pie, the eggnog, the eternal debates over whether deploy freezes cause more harm than good. 🤶🌲

via charity.wtf December 24, 2025

Generated by openring