working out error checking, queue-consumer operations