Another idea about that insert job:
Are you performing this insert in paralell (paralell DML)? If so, is it possible that you don't have LARGE_POOL defined in your instance? If there is no large pool, parallel execution uses shared pool for IPC messages between coordinator and slave processes and this can consume *a lot* of shared pool, not to mention that it contributes extensively to shared pool fragmentation!
Jurij Modic
ASCII a stupid question, get a stupid ANSI
24 hours in a day .... 24 beer in a case .... coincidence?