calvin's promises for upsert