Apex error : You have uncommitted work pending. Please commit or rollback before calling out
What can cause "System.CalloutException: You have uncommitted work pending. Please commit or rollback before calling out"?