It looks like it is stuck when trying to allocate additional TLA (thread local area) space. The thread local area (TLA) is a chunk of free space reserved on the heap or the nursery and given to a thread for its exclusive use. A thread can allocate small objects in its own TLA without synchronizing with other threads. When the TLA gets full the thread simply requests a new TLA. The thread get stuck because jrockit fails to allocate memory.
From the stacktrace this happens when you are reading data from the database, so it probably means that there was not enough TLA space for the read objects. Is this query reading a lot of records from the database?
You can try solving this issue by tuning the TLA size