Expire_fragment problem

Hello,
I am trying to invalidate a cached fragment.
My fragment looks like

<% cache (
:controller=>‘users’,:action=>‘additem_to_cart’,:action_suffix=>@user.id)
%>

At this point,rails has created 2 cache files correctly and everything
works
fine becuase I dont see rails making calls to the SQL db to get items
from
DB.Instead it uses cache.
Now in

def add_item_to_cart
expire_fragment (
:controller=>‘users’,:action=>‘additem_to_cart’,:action_suffix=>@user.id)
end

When I call expire_fragment,Rails creates a new directory ‘users’ and a
new
cache inside that directory but when rendering the view it still uses
the
old cache fragment.
Isnt expire_fragment supposed to delete the cache files? and why is a
new
directory being created.?
Any clues?
Vivek