1. 10 Sep, 2001 1 commit
  2. 02 Sep, 2001 1 commit
  3. 08 Jun, 2001 1 commit
  4. 02 Jun, 2001 1 commit
    • Peter Eisentraut's avatar
      Native Language Support (NLS) · e5420364
      Peter Eisentraut authored
      Use --enable-nls to turn it on; see installation instructions for details.
      See developer's guide how to make use of it in programs and how to add
      translations.
      
      psql sources have been almost fully prepared and an incomplete German
      translation has been provided.  In the backend, only elog() calls are
      currently translatable, and the provided German translation file is more
      of a placeholder.
      e5420364
  5. 12 May, 2001 2 commits
  6. 09 May, 2001 1 commit
    • Bruce Momjian's avatar
      · a79b698a
      Bruce Momjian authored
      Here's a version of my suggested diffs transplanted to 7.1 beta 5.  I'm
      still looking at the best way to integrate Tom Vijlbrief's fixes
      (insofar as they're still needed); would 7.2 be a suitable time for
      incompatible API changes?
      
      
      Jeroen
      
      
      Changes:
      
      (*) Introduced bool, true, false (replacing some int, 1, 0)
      (*) Made some member functions const
      (*) Documented GetIsNull()
      (*) Marked DisplayTuples() and PrintTuples() as obsolescent; fixed possible
          portability problem (assumed that NULL pointer equals all-zero bit pattern)
      (*) PrintTuples(): renamed width parameter to fillAlign to conform with other
          usage; fixed memory leak and compile issue w.r.t. field separator (should
          also slightly improve performance)
      (*) Fixed some minor compilation issues
      (*) Moved "using namespace std;" out of headers, where they didn't belong; used
          new (temporary) preprocessor macro PGSTD to do this
      (*) Made ToString() static, removed unneeded memset(), made buffer size adapt
          to sizeof(int)
      (*) Made some constructors explicit
      (*) Changed some const std::string & parameters to plain std::string
      (*) Marked PgCursor::Cursor(std::string) as obsolescent (setter with same name
          as getter--bad style)
      (*) Renamed some paramaters previously named "string"
      (*) Introduced size_type typedef for number of tuples in result set
      (*) PgTransaction now supports re-opening after closing, and aborts if not
          explicitly committed prior to destruction
      
      J. T. Vermeulen
      a79b698a
  7. 07 May, 2001 1 commit
  8. 06 May, 2001 1 commit
  9. 18 Apr, 2001 1 commit
  10. 22 Mar, 2001 1 commit
  11. 17 Feb, 2001 1 commit
  12. 10 Feb, 2001 1 commit
    • Tom Lane's avatar
      Restructure the key include files per recent pghackers discussion: there · d08741ea
      Tom Lane authored
      are now separate files "postgres.h" and "postgres_fe.h", which are meant
      to be the primary include files for backend .c files and frontend .c files
      respectively.  By default, only include files meant for frontend use are
      installed into the installation include directory.  There is a new make
      target 'make install-all-headers' that adds the whole content of the
      src/include tree to the installed fileset, for use by people who want to
      develop server-side code without keeping the complete source tree on hand.
      Cleaned up a whole lot of crufty and inconsistent header inclusions.
      d08741ea
  13. 27 Jan, 2001 1 commit
    • Bruce Momjian's avatar
      Here is an update on the Win32 patch. Modified files are 'config.h.win32' · d7f0b7ef
      Bruce Momjian authored
      and two 'win32.mak'. Addresses the following:
      
      1) Oops. Spelled fcntl.h wrong in the last one. D'uh.
      2) PG_VERSION changed to be defined with " around it. psql/command.c failed
      to compile without that.
      3) Changed makefiles to use "/MD" and link both psql and libpq.dll against
      MSVCRT.DLL instead of a static library. This takes care of the
      crash-upon-free in psql.
      
      I *think* this is what is on the "Open 7.1 Items" list as "Magnus Hagander
      ODBC Issues?". It has nothing to do with ODBC, but it's the only issue I've
      been involved with...
      
      Magnus Hagander
      d7f0b7ef
  14. 24 Jan, 2001 1 commit
    • Bruce Momjian's avatar
      Here is a patch to make the current snapshot compile on Win32 (native, libpq · bd0a767e
      Bruce Momjian authored
      and psql) again. Changes are:
      1) psql requires the includes of "io.h" and "fcntl.h" in command.c in order
      to make a call to open() work (io.h for _open(), fcntl.h for the O_xxx)
      2) PG_VERSION is no longer defined in version.h[.in], but in configure.in.
      Since we don't do configure on native win32, we need to put it in
      config.h.win32 :-(
      3) Added define of SYSCONFDIR to config.h.win32 - libpq won't compile
      without it. This functionality is *NOT* tested - it's just defined as "" for
      now. May work, may not.
      4) DEF_PGPORT renamed to DEF_PGPORT_STR
      
      I have done the "basic tests" on it - it connects to a database, and I can
      run queries. Haven't tested any of the fancier functions (yet).
      
      However, I stepped on a much bigger problem when fixing psql to work. It no
      longer works when linked against the .DLL version of libpq (which the
      Makefile does for it). I have left it linked against this version anyway,
      pending the comments I get on this mail :-)
      The problem is that there are strings being allocated from libpq.dll using
      PQExpBuffers (for example, initPQExpBuffer() on line 92 of input.c). These
      are being allocated using the malloc function used by libpq.dll. This
      function *may* be different from the malloc function used by psql.exe - only
      the resulting pointer must be valid. And with the default linking methods,
      it *WILL* be different. Later, psql.exe tries to free() this string, at
      which point it crashes because the free() function can't find the allocated
      block (it's on the allocated blocks list used by the runtime lib of
      libpq.dll).
      
      Shouldn't the right thing to do be to have psql call termPQExpBuffer() on
      the data instead? As it is now, gets_fromFile() will just return the pointer
      received from the PQExpBuffer.data (this may well be present at several
      places - this is the one I was bitten by so far). Isn't that kind of
      "accessing the internals of the PQExpBuffer structure" wrong? Instead,
      perhaps it shuold make a copy of the string, adn then termPQExpBuffer() it?
      In that case, the string will have been allocated from within the same
      library as the free() is called.
      
      I can get it to work just fine by doing this - changing from (around line
      100 of input.c):
      and the same a bit further down in the same function.
      
      But, as I said above, this may be at more places in the code? Perhaps
      someone more familiar to it could comment on that?
      
      
      What do you think shuld be done about this? Personally, I go by the "If you
      allocate a piece of memory using an interface, use the same interface to
      free it", but the question is how to make it work :-)
      
      
      Also, AFAIK this only affects psql.exe, so the changes made to the libpq
      this patch are required no matter how the other issue is handled.
      
      Regards,
       Magnus
      bd0a767e
  15. 30 Dec, 2000 1 commit
  16. 03 Dec, 2000 1 commit
  17. 27 Nov, 2000 1 commit
  18. 26 Nov, 2000 1 commit
  19. 25 Nov, 2000 1 commit
  20. 13 Nov, 2000 2 commits
    • Bruce Momjian's avatar
      Remove -k unix socketpath option from client side, allow hostname with · ebd61ac0
      Bruce Momjian authored
      leading slash to behave as a unix socket path.
      ebd61ac0
    • Bruce Momjian's avatar
      UUNET is looking into offering PostgreSQL as a part of a managed web · 2150c2ed
      Bruce Momjian authored
      hosting product, on both shared and dedicated machines.  We currently
      offer Oracle and MySQL, and it would be a nice middle-ground.
      However, as shipped, PostgreSQL lacks the following features we need
      that MySQL has:
      
      1. The ability to listen only on a particular IP address.  Each
         hosting customer has their own IP address, on which all of their
         servers (http, ftp, real media, etc.) run.
      2. The ability to place the Unix-domain socket in a mode 700 directory.
         This allows us to automatically create an empty database, with an
         empty DBA password, for new or upgrading customers without having
         to interactively set a DBA password and communicate it to (or from)
         the customer.  This in turn cuts down our install and upgrade times.
      3. The ability to connect to the Unix-domain socket from within a
         change-rooted environment.  We run CGI programs chrooted to the
         user's home directory, which is another reason why we need to be
         able to specify where the Unix-domain socket is, instead of /tmp.
      4. The ability to, if run as root, open a pid file in /var/run as
         root, and then setuid to the desired user.  (mysqld -u can almost
         do this; I had to patch it, too).
      
      The patch below fixes problem 1-3.  I plan to address #4, also, but
      haven't done so yet.  These diffs are big enough that they should give
      the PG development team something to think about in the meantime :-)
      Also, I'm about to leave for 2 weeks' vacation, so I thought I'd get
      out what I have, which works (for the problems it tackles), now.
      
      With these changes, we can set up and run PostgreSQL with scripts the
      same way we can with apache or proftpd or mysql.
      
      In summary, this patch makes the following enhancements:
      
      1. Adds an environment variable PGUNIXSOCKET, analogous to MYSQL_UNIX_PORT,
         and command line options -k --unix-socket to the relevant programs.
      2. Adds a -h option to postmaster to set the hostname or IP address to
         listen on instead of the default INADDR_ANY.
      3. Extends some library interfaces to support the above.
      4. Fixes a few memory leaks in PQconnectdb().
      
      The default behavior is unchanged from stock 7.0.2; if you don't use
      any of these new features, they don't change the operation.
      
      David J. MacKenzie
      2150c2ed
  21. 17 Sep, 2000 1 commit
  22. 17 Jul, 2000 1 commit
  23. 26 Jun, 2000 1 commit
  24. 12 May, 2000 1 commit
  25. 05 May, 2000 1 commit
  26. 16 Apr, 2000 2 commits
  27. 14 Apr, 2000 1 commit
  28. 12 Apr, 2000 1 commit
  29. 11 Apr, 2000 1 commit
  30. 27 Mar, 2000 1 commit
  31. 18 Mar, 2000 1 commit
  32. 01 Mar, 2000 1 commit
  33. 21 Feb, 2000 1 commit
  34. 20 Feb, 2000 2 commits
  35. 19 Feb, 2000 1 commit
  36. 16 Feb, 2000 1 commit