i have a table **foo**

```
                            Table "public.foo"
      Column       |            Type             |              Modifiers              
-------------------+-----------------------------+-------------------------------------
 foo_id            | uuid                        | not null default uuid_generate_v1()
 col1              | uuid                        | 
 col2              | uuid                        | 
 col3              | uuid                        | not null

```

I have a view **goo\_view**, which selects primarily from foo, but also joins another table

```
SELECT * from foo LEFT JOIN foo_helper USING (foo_id);

```

I have the following CTE query in which i am attempting to insert into table **foo** whilst returning the appropriate **goo\_view** information

```
WITH ins AS (
    INSERT INTO foo (col1,col2, col3) VALUES (111,222,333) RETURNING foo_id
)                              
SELECT v.foo_id, v.col1, v.col2, v.fk1
FROM goo_view v 
JOIN ins 
USING (foo_id)   

```

however the result is empty.

If i run the insert and select separately it works, is there something about the timing that causes this to fail? 

what is the work around?