in my application,i hava a bidirectional parent/child mapping( many end:inverse=true, cascade=all, lazy=true one end: inverse=false,cascade=update ). everything is ok except that cascade deleting is very slow:when i delete the parent,hibernate will cascade delete its children one by one. so i perform this deleting using JDBC.
because i am using jcs caching,so i think i must evict the parent and its children from the process level cache after the deleting(after commit),is that necessary?
if so: i find in the Hibernate doc==>(the javadoc of SessionFactory.evict()) [ This method occurs outside of any transaction; it performs an immediate "hard" remove, so does not respect any transaction isolation semantics of the usage strategy. Use with care. ] dose this mean that between the deleteing and the evicting,other threads may access the jcs cache and read some stale data?
thanks.
|
|