I've just read article about bulk operations -
http://blog.hibernate.org/cgi-bin/blosxom.cgi/2005/07/20
I mean that temporary tables are not nesceseary when:
(a) delete by primary key
(b) delete by condition from that you can derive set of primary keys to delete without data in delete table
Examples:
(a) delete from Human where id=10
(b) delete from Human as human where exists(select * from Order as order where order.status='archived' and human=order.customer)
Would it be hard to have these deletes without temporary tables - there is only primary key in where condition.