Option 1: Uses UnionScan with two indexes
CREATE INDEX ix1 ON bucket(field.roleId) WHERE type = "instance";
CREATE INDEX ix2 ON bucket(queue) WHERE type = "instance";
CREATE INDEX ix1 ON bucket(type, field.roleId, queue) WHERE type = "instance";
If you think you have field.roleId in all documents or want queue matched want documents that have filed.roleId has value only try the following query.
SELECT * FROM bucket WHERE type = ‘instance’ and field.roleId IS NOT MISSING AND (field.roleId ==‘102419231’ or queue in [2,1,52]) limit 100;