Hmmm.... the subselect is invalid, but not rejected. The outer select returns every row in the customer_order_matches table. This seems pretty wrong. This is PG 9.2.1 running on Ubuntu.
db=> select count(1) from customer_order_matches where customer_order_item_id in (select customer_order_item_id from customer_order where customer_order_id = 105862140);
count
-------
36180
(1 row)
db=> select customer_order_item_id from customer_order where customer_order_id = 105862140;
ERROR: column "customer_order_item_id" does not exist
LINE 1: select customer_order_item_id from customer_order where cust...
^
Craig