Hi Yogi,
There could be 2 reasons:
1. chances that some of your connections are left open w/o closing.Which after number of access, the database would have reached the extent.
2. Your connection is getting cut when you leave your server idle for few hours. Try to write a
thread servlet that access any table every few interval.This can avoid broken pipe error.
Bhuvana