That's how
transaction isolation works.
Django uses its own database connection and so it can read its own writes. On the other hand, Hibernate uses a separate database connection, and if Django has not got the chance to commit, Hibernate is not going to see any change that Django has issued. This is the expected behavior for
any isolation level that is greater or equal to READ COMMITTED).
The solution is simple. You just have to commit the transaction in Django. If the Hibernate Session has already cached the entity that you modify in Django, you'll have to use refresh.