Search Postgresql Archives

Re: Socket command type I unknown

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Tom (and others who may benefit from this),

I'm sorry for taking so long to reply to this. PostgreSQL administration is not my primary task. :) After a client noticed this error twice this morning, I spent several hours investigating our machine and researching on the web. This email led me in this direction

  http://archives.postgresql.org/pgsql-interfaces/2004-05/msg00011.php

and made me look further into what exactly was going on.

It turns out that we had two versions of libpq installed on the server. One was from Debian's package manager which was for version 7.4.7 and the other was my compiled version for 7.3.X. This weekend I upgraded us from 7.3 to 7.4 on both the server and the client. I've removed any instances of the 7.3 libraries.

So, now we have a different error happening about as often.

DBD::Pg::db selectrow_array failed: FATAL: invalid frontend message type 73

I read that 73 is an ASCII value. Surprise 73 is a capital letter I. Same error, different method of reporting. DBD::Pg is at version 1.41 and DBI is 1.46. I'm going to try to bring DBD::Pg up to 1.48 just to get on the latest version of everything I can find. At this point, I want to say that it's my code that's causing the problem. It's as if there's some perl code/query that's creating the error, but a subsequent query to the server is what's manifesting the problem and causing the entry in the error_log. Am I on the right track here?

I'm pretty sure the error can be traced back to my code. Therefore, I've started a global DBI->trace() on the postgres client server. I know that's going to be an inordinate amount of data (busy website), but sometimes the brute force method is what will work.

I can't have my clients losing faith in my ability to solve their problems, so I get to track this down. :)

Thanks,
--Joel


On Feb 4, 2006, at 1:16 AM, Tom Lane wrote:

Joel Richard <postgresql@xxxxxxxxxxxxxxx> writes:
... we occasionally get the following message in our apache log
file. I'm looking for information on what it means:

   DBD::Pg::db selectrow_array failed: FATAL:  Socket command type I
unknown

This looks to me like a protocol-level incompatibility: probably the
client code is sending data in a slightly different format than the
server is expecting, or one side or the other is off-by-one about
message lengths, or something like that.  One way or another the
server is receiving an 'I' when it wasn't expecting that.

I'm not aware of any such bugs on the server side in 7.3.4.  What I
suspect is a problem on the DBD::Pg side, where you did not specify
what version you are using ... but if it's recent, it probably thinks
that talking to 7.3.4 is a legacy problem ...

			regards, tom lane

Joel Richard
The Richard Group
joel@xxxxxxxxxxxxxxxxx
703-584-5802





[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux