EntityFieldQuery in a loop
It may be because you are doing this:

-&gt;fieldCondition("field_ann_type", "value", array($type));


try just check it against $type like this:

-&gt;fieldCondition("field_ann_type", "value", $type);