1. 11 May, 2004 1 commit
    • Bruce Momjian's avatar
      As part of the work for making relocatable installs, I have re-factored · fda15b35
      Bruce Momjian authored
      all the code that looks for other binaries.  I move FindExec into
      port/exec.c (and renamed it to find_my_binary()).  I also added
      find_other_binary that looks for another binary in the same directory as
      the calling program, and checks the version string.
      
      The only behavior change was that initdb and pg_dump would look in the
      hard-coded bindir directory if it can't find the requested binary in the
      same directory as the caller.  The new code throws an error.  The old
      behavior seemed too error prone for version mismatches.
      fda15b35
  2. 07 May, 2004 1 commit
  3. 25 Apr, 2004 1 commit
  4. 19 Apr, 2004 1 commit
    • Bruce Momjian's avatar
      * Most changes are to fix warnings issued when compiling win32 · 31338352
      Bruce Momjian authored
      * removed a few redundant defines
      * get_user_name safe under win32
      * rationalized pipe read EOF for win32 (UPDATED PATCH USED)
      * changed all backend instances of sleep() to pg_usleep
      
          - except for the SLEEP_ON_ASSERT in assert.c, as it would exceed a
      32-bit long [Note to patcher: If a SLEEP_ON_ASSERT of 2000 seconds is
      acceptable, please replace with pg_usleep(2000000000L)]
      
      I added a comment to that part of the code:
      
          /*
           *  It would be nice to use pg_usleep() here, but only does 2000 sec
           *  or 33 minutes, which seems too short.
           */
          sleep(1000000);
      
      Claudio Natoli
      31338352
  5. 11 Apr, 2004 1 commit
  6. 07 Apr, 2004 1 commit
    • Bruce Momjian's avatar
      > >>1. change the type of "log_statement" option from boolean to string, · 6a25c6e1
      Bruce Momjian authored
      > >>with allowed values of "all, mod, ddl, none" with default "none".
      
      OK, here is a patch that implements #1.  Here is sample output:
      
              test=> set client_min_messages = 'log';
              SET
              test=> set log_statement = 'mod';
              SET
              test=> select 1;
               ?column?
              ----------
                      1
              (1 row)
      
              test=> update test set x=1;
              LOG:  statement: update test set x=1;
              ERROR:  relation "test" does not exist
              test=> update test set x=1;
              LOG:  statement: update test set x=1;
              ERROR:  relation "test" does not exist
              test=> copy test from '/tmp/x';
              LOG:  statement: copy test from '/tmp/x';
              ERROR:  relation "test" does not exist
              test=> copy test to  '/tmp/x';
              ERROR:  relation "test" does not exist
              test=> prepare xx as select 1;
              PREPARE
              test=> prepare xx as update x set y=1;
              LOG:  statement: prepare xx as update x set y=1;
              ERROR:  relation "x" does not exist
              test=> explain analyze select 1;;
                                                   QUERY PLAN
              ------------------------------------------------------------------------------------
               Result  (cost=0.00..0.01 rows=1 width=0) (actual time=0.006..0.007 rows=1 loops=1)
               Total runtime: 0.046 ms
              (2 rows)
      
              test=> explain analyze update test set x=1;
              LOG:  statement: explain analyze update test set x=1;
              ERROR:  relation "test" does not exist
              test=> explain update test set x=1;
              ERROR:  relation "test" does not exist
      
      It checks PREPARE and EXECUTE ANALYZE too.  The log_statement values are
      'none', 'mod', 'ddl', and 'all'.  For 'all', it prints before the query
      is parsed, and for ddl/mod, it does it right after parsing using the
      node tag (or command tag for CREATE/ALTER/DROP), so any non-parse errors
      will print after the log line.
      6a25c6e1
  7. 24 Mar, 2004 1 commit
  8. 21 Mar, 2004 1 commit
  9. 15 Mar, 2004 1 commit
  10. 09 Mar, 2004 1 commit
    • Bruce Momjian's avatar
      Add: · 2d3fe86b
      Bruce Momjian authored
      #log_line_prefix = ''         # e.g. '<%u%%%d> '
                                    # %u=user name %d=database name
                                    # %r=remote host and port
                                    # %p=PID %t=timestamp %i=command tag
                                    # %c=session id %l=session line number
                                    # %s=session start timestamp
                                    # %x=stop here in non-session processes
                                    # %%='%'
      
      Andrew Dunstan
      2d3fe86b
  11. 21 Feb, 2004 1 commit
  12. 17 Feb, 2004 3 commits
  13. 06 Feb, 2004 1 commit
  14. 03 Feb, 2004 1 commit
    • Tom Lane's avatar
      Rename SortMem and VacuumMem to work_mem and maintenance_work_mem. · 391c3811
      Tom Lane authored
      Make btree index creation and initial validation of foreign-key constraints
      use maintenance_work_mem rather than work_mem as their memory limit.
      Add some code to guc.c to allow these variables to be referenced by their
      old names in SHOW and SET commands, for backwards compatibility.
      391c3811
  15. 28 Jan, 2004 1 commit
    • Tom Lane's avatar
      Review uses of IsUnderPostmaster, change some tests to look at · 2f0d43b2
      Tom Lane authored
      whereToSendOutput instead because they are really inquiring about
      the correct client communication protocol.  Update some comments.
      This is pointing towards supporting regular FE/BE client protocol
      in a standalone backend, per discussion a month or so back.
      2f0d43b2
  16. 26 Jan, 2004 3 commits
    • Bruce Momjian's avatar
      [all] Removed call to getppid in SendPostmasterSignal, replacing with a · eec08b95
      Bruce Momjian authored
      PostmasterPid variable, which gets set (early) in PostmasterMain
      getppid would not be the postmaster?
      
      [fork/exec] Implements processCancelRequest by keeping an array of
      
      pid/cancel_key structs in shared mem
      
      [fork/exec] Moves AttachSharedMemoryAndSemaphores call for backends into
      SubPostmasterMain
      
      [win32] Implements reaper/waitpid by keeping an arrays of children
      pids,handles in postmaster local mem
            - this item is largely untested, for reasons which should be
      obvious, but appears sound
      
      [win32/all] Added extern for pgpipe in Win32 case, and changed the second
      pipe call (which seems to have been missed earlier) to pgpipe
      
      [win32] #define'd ftruncate to chsize in the Win32 case
      
      [win32] PG_USLEEP for Win32 has a misplaced paren. Fixed.
      
      [win32] DLLIMPORT handling for MingW case
      
      
      Claudio Natoli
      eec08b95
    • Bruce Momjian's avatar
      ede3b762
    • Bruce Momjian's avatar
      Attached is a patch that fixes some trivial typos and alignment. Please · f4921e5c
      Bruce Momjian authored
      apply.
      
      Alvaro Herrera
      f4921e5c
  17. 06 Jan, 2004 2 commits
  18. 25 Dec, 2003 1 commit
  19. 20 Dec, 2003 1 commit
  20. 01 Dec, 2003 1 commit
  21. 29 Nov, 2003 2 commits
  22. 24 Nov, 2003 1 commit
  23. 19 Oct, 2003 1 commit
  24. 18 Oct, 2003 1 commit
  25. 16 Oct, 2003 1 commit
    • Tom Lane's avatar
      Fix bad interaction between NOTIFY processing and V3 extended query · 90b22029
      Tom Lane authored
      protocol, per report from Igor Shevchenko.  NOTIFY thought it could
      do its thing if transaction blockState is TBLOCK_DEFAULT, but in
      reality it had better check the low-level transaction state is
      TRANS_DEFAULT as well.  Formerly it was not possible to wait for the
      client in a state where the first is true and the second is not ...
      but now we can have such a state.  Minor cleanup in StartTransaction()
      as well.
      90b22029
  26. 09 Oct, 2003 1 commit
  27. 08 Oct, 2003 1 commit
  28. 04 Oct, 2003 1 commit
  29. 02 Oct, 2003 1 commit
  30. 29 Sep, 2003 2 commits
  31. 27 Sep, 2003 1 commit
  32. 25 Sep, 2003 1 commit
  33. 24 Sep, 2003 1 commit
    • Tom Lane's avatar
      Repair some REINDEX problems per recent discussions. The relcache is · a56a016c
      Tom Lane authored
      now able to cope with assigning new relfilenode values to nailed-in-cache
      indexes, so they can be reindexed using the fully crash-safe method.  This
      leaves only shared system indexes as special cases.  Remove the 'index
      deactivation' code, since it provides no useful protection in the shared-
      index case.  Require reindexing of shared indexes to be done in standalone
      mode, but remove other restrictions on REINDEX.  -P (IgnoreSystemIndexes)
      now prevents using indexes for lookups, but does not disable index updates.
      It is therefore safe to allow from PGOPTIONS.  Upshot: reindexing system catalogs
      can be done without a standalone backend for all cases except
      shared catalogs.
      a56a016c