When directly loading a Commerce 2 Order Item, why is the entity cached for anonymous users? I'm using the following to load a Commerce 2 Order Item:

    $order_item = \Drupal\commerce_order\Entity\OrderItem::load($order_item_id);


If I empty the cart for an anonymous user (thereby removing the Order Item), using the above code still loads the item as if it still exists.

The caching issue does not exist when logged in.

Why is the Order Item caches when loaded directly like I'm doing above?

How can I load a refresh version?
The issue was due to the fact that the entity logic was running in a custom form and the form was caching the entity.

Simply setting:

   $form['#cache'] = ['max-age' =&gt; 0];


Resolved the issue.