1. 11 Nov, 2019 6 commits
  2. 09 Nov, 2019 6 commits
  3. 08 Nov, 2019 6 commits
  4. 07 Nov, 2019 9 commits
  5. 06 Nov, 2019 11 commits
  6. 05 Nov, 2019 2 commits
    • Andres Freund's avatar
      Make StringInfo available to frontend code. · 26aaf97b
      Andres Freund authored
      There's plenty places in frontend code that could benefit from a
      string buffer implementation. Some because it yields simpler and
      faster code, and some others because of the desire to share code
      between backend and frontend.
      
      While there is a string buffer implementation available to frontend
      code, libpq's PQExpBuffer, it is clunkier than stringinfo, it
      introduces a libpq dependency, doesn't allow for sharing between
      frontend and backend code, and has a higher API/ABI stability
      requirement due to being exposed via libpq.
      
      Therefore it seems best to just making StringInfo being usable by
      frontend code. There's not much to do for that, except for rewriting
      two subsequent elog/ereport calls into others types of error
      reporting, and deciding on a maximum string length.
      
      For the maximum string size I decided to privately define MaxAllocSize
      to the same value as used in the backend. It seems likely that we'll
      want to reconsider this for both backend and frontend code in the not
      too far away future.
      
      For now I've left stringinfo.h in lib/, rather than common/, to reduce
      the likelihood of unnecessary breakage. We could alternatively decide
      to provide a redirecting stringinfo.h in lib/, or just not provide
      compatibility.
      
      Author: Andres Freund
      Reviewed-By: Kyotaro Horiguchi, Daniel Gustafsson
      Discussion: https://postgr.es/m/20190920051857.2fhnvhvx4qdddviz@alap3.anarazel.de
      26aaf97b
    • Andres Freund's avatar
      Split all OBJS style lines in makefiles into one-line-per-entry style. · 01368e5d
      Andres Freund authored
      When maintaining or merging patches, one of the most common sources
      for conflicts are the list of objects in makefiles. Especially when
      the split across lines has been changed on both sides, which is
      somewhat common due to attempting to stay below 80 columns, those
      conflicts are unnecessarily laborious to resolve.
      
      By splitting, and alphabetically sorting, OBJS style lines into one
      object per line, conflicts should be less frequent, and easier to
      resolve when they still occur.
      
      Author: Andres Freund
      Discussion: https://postgr.es/m/20191029200901.vww4idgcxv74cwes@alap3.anarazel.de
      01368e5d