Tom Ivar Helbekkmo <[email protected]> writes:
> I'm seeing occasional occurrences of 'Malformed "D" message received.",
> and I don't think it's an actual database problem, because it seems to
> be related to system load and query complexity. (I'm running PostgreSQL
> and Archiveopteryx on an old Dell 2850.)
Reading the code, I'm afraid I eventually gave up on understanding the
details of how Archiveopteryx actually talks to PostgreSQL, but I did
find one place where a timeout *seemed* to be set by giving the RDBMS an
extra five seconds every time a (possibly partial) response was
received.
On a hunch, I made the following change, and, so far, it seems to work:
diff --git a/db/postgres.cpp b/db/postgres.cpp
index 2809c440..139a53f3 100644
--- a/db/postgres.cpp
+++ b/db/postgres.cpp
@@ -503,7 +503,7 @@ void Postgres::process( char type )
if ( q && q->log() )
x.setLog( q->log() );
- extendTimeout( 5 );
+ extendTimeout( 30 );
switch ( type ) {
case '1':
-tih
--
Most people who graduate with CS degrees don't understand the significance
of Lisp. Lisp is the most important idea in computer science. --Alan Kay