贴在hibernate forum上的问题,没人回答,555...,那位老大帮忙看看

03-08-18 yehs220
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.

猜你喜欢