• Alvaro Herrera's avatar
    Remove setvbuf() call from PQtrace() · 6ec578e6
    Alvaro Herrera authored
    It's misplaced there -- it's not libpq's output stream to tweak in that
    way.  In particular, POSIX says that it has to be called before any
    other operation on the file, so if a stream previously used by the
    calling application, bad things may happen.
    
    Put setvbuf() in libpq_pipeline for good measure.
    
    Also, reduce fopen(..., "w+") to just fopen(..., "w") in
    libpq_pipeline.c.  It's not clear that this fixes anything, but we don't
    use w+ anywhere.
    
    Per complaints from Tom Lane.
    
    Discussion: https://postgr.es/m/3337422.1617229905@sss.pgh.pa.us
    6ec578e6
fe-trace.c 16.6 KB