One of our environments seems to sometimes struggle due to database errors:
Aug 29 11:41:39.762 - ERROR - ConnectionBus_Retrieve: (1/43) org.postgresql.util.PSQLException: An I/O error occurred while sending to the backend. Aug 29 11:41:39.762 - ERROR - ConnectionBus_Retrieve: (2/43) #011at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:318) Aug 29 11:41:39.762 - ERROR - ConnectionBus_Retrieve: (3/43) #011at org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:432) Aug 29 11:41:39.762 - ERROR - ConnectionBus_Retrieve: (4/43) #011at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:358) Aug 29 11:41:39.762 - ERROR - ConnectionBus_Retrieve: (5/43) #011at org.postgresql.jdbc.PgStatement.executeWithFlags(PgStatement.java:305) Aug 29 11:41:39.762 - ERROR - ConnectionBus_Retrieve: (6/43) #011at org.postgresql.jdbc.PgStatement.executeCachedSql(PgStatement.java:291) Aug 29 11:41:39.762 - ERROR - ConnectionBus_Retrieve: (7/43) #011at org.postgresql.jdbc.PgStatement.executeWithFlags(PgStatement.java:269) Aug 29 11:41:39.762 - ERROR - ConnectionBus_Retrieve: (8/43) #011at org.postgresql.jdbc.PgStatement.executeQuery(PgStatement.java:236) Aug 29 11:41:39.762 - ERROR - ConnectionBus_Retrieve: (9/43) #011at org.apache.commons.dbcp2.DelegatingStatement.executeQuery(DelegatingStatement.java:207) Aug 29 11:41:39.762 - ERROR - ConnectionBus_Retrieve: (10/43) #011at org.apache.commons.dbcp2.DelegatingStatement.executeQuery(DelegatingStatement.java:207) Aug 29 11:41:39.762 - ERROR - ConnectionBus_Retrieve: (11/43) #011at com.mendix.connectionbus.connections.jdbc.JDBCDataStore.execRetrieveQuery(JDBCDataStore.java:303) Aug 29 11:41:39.762 - ERROR - ConnectionBus_Retrieve: (12/43) #011at com.mendix.connectionbus.connections.jdbc.JDBCDataStore.execRetrieveQueries(JDBCDataStore.java:198) Aug 29 11:41:39.762 - ERROR - ConnectionBus_Retrieve: (13/43) #011at com.mendix.connectionbus.connections.jdbc.JDBCDataStore.retrieve(JDBCDataStore.java:163) Aug 29 11:41:39.762 - ERROR - ConnectionBus_Retrieve: (14/43) #011at com.mendix.connectionbus.connections.jdbc.JDBCDataStore.retrieve(JDBCDataStore.java:152) Aug 29 11:41:39.762 - ERROR - ConnectionBus_Retrieve: (15/43) #011at com.mendix.connectionbus.connections.DataStoreRetrieveAction.call(DataStoreRetrieveAction.java:29) Aug 29 11:41:39.762 - ERROR - ConnectionBus_Retrieve: (16/43) #011at com.mendix.connectionbus.connections.DataStoreRetrieveAction.call(DataStoreRetrieveAction.java:11) Aug 29 11:41:39.762 - ERROR - ConnectionBus_Retrieve: (17/43) #011at java.util.concurrent.FutureTask.run(FutureTask.java:266) Aug 29 11:41:39.762 - ERROR - ConnectionBus_Retrieve: (18/43) #011at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) Aug 29 11:41:39.762 - ERROR - ConnectionBus_Retrieve: (19/43) #011at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) Aug 29 11:41:39.762 - ERROR - ConnectionBus_Retrieve: (20/43) #011at java.lang.Thread.run(Thread.java:748) Aug 29 11:41:39.762 - ERROR - ConnectionBus_Retrieve: (21/43) Aug 29 11:41:39.762 - ERROR - ConnectionBus_Retrieve: (22/43) Caused by: java.io.EOFException: null Aug 29 11:41:39.762 - ERROR - ConnectionBus_Retrieve: (23/43) #011at org.postgresql.core.PGStream.receiveChar(PGStream.java:285) Aug 29 11:41:39.763 - ERROR - ConnectionBus_Retrieve: (24/43) #011at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1919) Aug 29 11:41:39.763 - ERROR - ConnectionBus_Retrieve: (25/43) #011at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:291) Aug 29 11:41:39.763 - ERROR - ConnectionBus_Retrieve: (26/43) #011at org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:432) Aug 29 11:41:39.763 - ERROR - ConnectionBus_Retrieve: (27/43) #011at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:358) Aug 29 11:41:39.763 - ERROR - ConnectionBus_Retrieve: (28/43) #011at org.postgresql.jdbc.PgStatement.executeWithFlags(PgStatement.java:305) Aug 29 11:41:39.763 - ERROR - ConnectionBus_Retrieve: (29/43) #011at org.postgresql.jdbc.PgStatement.executeCachedSql(PgStatement.java:291) Aug 29 11:41:39.763 - ERROR - ConnectionBus_Retrieve: (30/43) #011at org.postgresql.jdbc.PgStatement.executeWithFlags(PgStatement.java:269) Aug 29 11:41:39.763 - ERROR - ConnectionBus_Retrieve: (31/43) #011at org.postgresql.jdbc.PgStatement.executeQuery(PgStatement.java:236) Aug 29 11:41:39.763 - ERROR - ConnectionBus_Retrieve: (32/43) #011at org.apache.commons.dbcp2.DelegatingStatement.executeQuery(DelegatingStatement.java:207) Aug 29 11:41:39.763 - ERROR - ConnectionBus_Retrieve: (33/43) #011at org.apache.commons.dbcp2.DelegatingStatement.executeQuery(DelegatingStatement.java:207) Aug 29 11:41:39.763 - ERROR - ConnectionBus_Retrieve: (34/43) #011at com.mendix.connectionbus.connections.jdbc.JDBCDataStore.execRetrieveQuery(JDBCDataStore.java:303) Aug 29 11:41:39.763 - ERROR - ConnectionBus_Retrieve: (35/43) #011at com.mendix.connectionbus.connections.jdbc.JDBCDataStore.execRetrieveQueries(JDBCDataStore.java:198) Aug 29 11:41:39.763 - ERROR - ConnectionBus_Retrieve: (36/43) #011at com.mendix.connectionbus.connections.jdbc.JDBCDataStore.retrieve(JDBCDataStore.java:163) Aug 29 11:41:39.763 - ERROR - ConnectionBus_Retrieve: (37/43) #011at com.mendix.connectionbus.connections.jdbc.JDBCDataStore.retrieve(JDBCDataStore.java:152) Aug 29 11:41:39.763 - ERROR - ConnectionBus_Retrieve: (38/43) #011at com.mendix.connectionbus.connections.DataStoreRetrieveAction.call(DataStoreRetrieveAction.java:29) Aug 29 11:41:39.763 - ERROR - ConnectionBus_Retrieve: (39/43) #011at com.mendix.connectionbus.connections.DataStoreRetrieveAction.call(DataStoreRetrieveAction.java:11) Aug 29 11:41:39.763 - ERROR - ConnectionBus_Retrieve: (40/43) #011at java.util.concurrent.FutureTask.run(FutureTask.java:266) Aug 29 11:41:39.763 - ERROR - ConnectionBus_Retrieve: (41/43) #011at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) Aug 29 11:41:39.763 - ERROR - ConnectionBus_Retrieve: (42/43) #011at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) Aug 29 11:41:39.763 - ERROR - ConnectionBus_Retrieve: (43/43) #011at java.lang.Thread.run(Thread.java:748)
Doing a bit of searching there are a few times where this exception has come up and it has been due to an exception checking to see if a number of bytes is above 0, but then as there is a null being returned so the database is erroring.
The erroring continues and there are disconnections and finally the environment won't be able to take retrieves anymore.
Any insight would be brilliant!