Below is the list of tables from the database along with their columns and datatype. Need to generate an accurate SQL query for the question.
Only use the columns present in the respective table. Only use the columns which are required to generate the SQL query. Only use table joins if required and not otherwise.

### Tables ###
TABLE: CREATE TABLE orders (customer_id VARCHAR, order_id VARCHAR)
TABLE: CREATE TABLE customers (customer_name VARCHAR, customer_id VARCHAR)
TABLE: CREATE TABLE products (product_id VARCHAR, product_name VARCHAR)
TABLE: CREATE TABLE order_items (product_id VARCHAR, order_item_status VARCHAR, order_id VARCHAR)

### Question ###
List the names of customers who have once canceled the purchase of the product "food" (the item status is "Cancel").

### Accurate SQL ###

SELECT T1.customer_name FROM customers AS T1 JOIN orders AS T2 JOIN order_items AS T3 JOIN products AS T4 ON T1.customer_id = T2.customer_id AND T2.order_id = T3.order_id AND T3.product_id = T4.product_id WHERE T3.order_item_status = "Cancel" AND T4.product_name = "food" GROUP BY T1.customer_id HAVING COUNT(*) >= 1