Thread

  1. Patches for libpq++ docs and backend/command/copy.c

    Tom Vijlbrief <tom.vijlbrief@knoware.nl> — 2000-04-19T09:36:32Z

    
    ============================================================================
                            POSTGRESQL BUG REPORT TEMPLATE
    ============================================================================
     
     
    Your name               :       Tom Vijlbrief
    Your email address      :       tom.vijlbrief@knoware.nl
     
     
    System Configuration
    ---------------------
      Architecture (example: Intel Pentium)         : Intel PII
     
      Operating System (example: Linux 2.0.26 ELF)  : Linux 2.3.51
     
      PostgreSQL version (example: PostgreSQL-6.5.3):   PostgreSQL-6.5.3
     
      Compiler used (example:  gcc 2.8.0)           : egcs-2.91.66
     
     
    Please enter a FULL description of your problem:          
    ------------------------------------------------
     
    There are a few bugs in the doc for libpq++.
     
    Incorrect use of lowercase methods (putline should be PutLine)
    \et should be \t
    \en should be \n
    data.putline(".\en") should be data.PutLine("\\.\n")
    ...
     
    I added a patch as attachment to this mail
     
    I also found that there is a problem when a client
    exits when "copy from stdin" is active. Postgres does
    not detect that the connection is broken, the postmaster generates
    many kilobytes (thousands of lines) of errors:
     
    ...
    pq_recvbuf: unexpected EOF on client connection
    pq_recvbuf: unexpected EOF on client connection            
    pq_recvbuf: unexpected EOF on client connection
    pq_recvbuf: unexpected EOF on client connection
    pq_recvbuf: unexpected EOF on client connection
    pq_recvbuf: unexpected EOF on client connection
    pq_recvbuf: unexpected EOF on client connection
    pq_recvbuf: unexpected EOF on client connection
    pq_recvbuf: unexpected EOF on client connection
    pq_recvbuf: unexpected EOF on client connection
    ERROR:  CopyReadAttribute - attribute length too long. line: 4
    pq_flush: send() failed: Broken pipe
    pq_flush: send() failed: Broken pipe
    pq_recvbuf: unexpected EOF on client connection
     
     
    I added a patch for this problem also.
     
    Note that I'm working on a C++ class derived from PgDatabase
    that signals errors by throwing exceptions. I'll submit it when it's
    finished...                             
     
    Please describe a way to repeat the problem.   Please try to provide a
    concise reproducible example, if at all possible:
    ----------------------------------------------------------------------
     
     
    It can be reproduced by compiling and running the attached program
    testbad.cxx
    The program wil hang, exiting by hitting ^C (interrupt) wil produce
    the error messages
     
    The patched postgres will produce:
     
    pq_recvbuf: unexpected EOF on client connection
    pq_flush: send() failed: Broken pipe
    pq_recvbuf: unexpected EOF on client connection
      
     
    If you know how this problem might be fixed, list the solution below:
    ---------------------------------------------------------------------
     
    two patches attached to mail
  2. Re: Patches for libpq++ docs and backend/command/copy.c

    Bruce Momjian <pgman@candle.pha.pa.us> — 2000-04-19T21:19:03Z

    > There are a few bugs in the doc for libpq++.
    >  
    > Incorrect use of lowercase methods (putline should be PutLine)
    > \et should be \t
    > \en should be \n
    > data.putline(".\en") should be data.PutLine("\\.\n")
    > ...
    >  
    > I added a patch as attachment to this mail
    
    Thanks. I have applied your docs patch.
    
    I think you will find the EOF problem is fixed in 7.0.  If not, please
    let us know.
    
    -- 
      Bruce Momjian                        |  http://www.op.net/~candle
      pgman@candle.pha.pa.us               |  (610) 853-3000
      +  If your life is a hard drive,     |  830 Blythe Avenue
      +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026