1. 15 5月, 2008 1 次提交
    • T
      Move the "instr_time" typedef and associated macros into a new header · 3bc25384
      Tom Lane 提交于
      file portability/instr_time.h, and add a couple more macros to eliminate
      some abstraction leakage we formerly had.  Also update psql to use this
      header instead of its own copy of nearly the same code.
      
      This commit in itself is just code cleanup and shouldn't change anything.
      It lays some groundwork for the upcoming function-stats patch, though.
      3bc25384
  2. 02 1月, 2008 1 次提交
  3. 16 11月, 2007 1 次提交
  4. 14 10月, 2007 1 次提交
    • T
      Fix the inadvertent libpq ABI breakage discovered by Martin Pitt: the · 8468146b
      Tom Lane 提交于
      renumbering of encoding IDs done between 8.2 and 8.3 turns out to break 8.2
      initdb and psql if they are run with an 8.3beta1 libpq.so.  For the moment
      we can rearrange the order of enum pg_enc to keep the same number for
      everything except PG_JOHAB, which isn't a problem since there are no direct
      references to it in the 8.2 programs anyway.  (This does force initdb
      unfortunately.)
      
      Going forward, we want to fix things so that encoding IDs can be changed
      without an ABI break, and this commit includes the changes needed to allow
      libpq's encoding IDs to be treated as fully independent of the backend's.
      The main issue is that libpq clients should not include pg_wchar.h or
      otherwise assume they know the specific values of libpq's encoding IDs,
      since they might encounter version skew between pg_wchar.h and the libpq.so
      they are using.  To fix, have libpq officially export functions needed for
      encoding name<=>ID conversion and validity checking; it was doing this
      anyway unofficially.
      
      It's still the case that we can't renumber backend encoding IDs until the
      next bump in libpq's major version number, since doing so will break the
      8.2-era client programs.  However the code is now prepared to avoid this
      type of problem in future.
      
      Note that initdb is no longer a libpq client: we just pull in the two
      source files we need directly.  The patch also fixes a few places that
      were being sloppy about checking for an unrecognized encoding name.
      8468146b
  5. 22 6月, 2007 1 次提交
  6. 17 4月, 2007 1 次提交
  7. 08 2月, 2007 1 次提交
  8. 06 1月, 2007 1 次提交
  9. 16 12月, 2006 1 次提交
  10. 04 10月, 2006 1 次提交
  11. 27 9月, 2006 1 次提交
  12. 30 8月, 2006 2 次提交
  13. 29 8月, 2006 1 次提交
    • T
      Invent an assign-hook mechanism for psql variables similar to the one · 0434c46d
      Tom Lane 提交于
      existing for backend GUC variables, and use this to eliminate repeated
      fetching/parsing of psql variables in psql's inner loops.  In a trivial
      test with lots of 'select 1;' commands, psql's CPU time went down almost
      10%, although of course the effect on total elapsed time was much less.
      Per discussion about how to ensure the upcoming FETCH_COUNT patch doesn't
      cost any performance when not being used.
      0434c46d
  14. 25 8月, 2006 1 次提交
  15. 14 8月, 2006 1 次提交
  16. 12 8月, 2006 1 次提交
  17. 14 7月, 2006 1 次提交
  18. 01 7月, 2006 1 次提交
  19. 30 6月, 2006 1 次提交
  20. 15 6月, 2006 1 次提交
    • T
      Clean up psql's control-C handling to avoid longjmp'ing out of random · f3164c02
      Tom Lane 提交于
      places --- that risks corrupting data structures, losing sync with the
      backend, etc.  We now longjmp only from calls to readline, fgets, and
      fread, which we assume are coded to protect themselves against interrupts
      at undesirable times.  This requires adding explicit tests for
      cancel_pressed in long-running loops, but on the whole it's far cleaner.
      Martijn van Oosterhout and Tom Lane.
      f3164c02
  21. 27 5月, 2006 1 次提交
  22. 12 5月, 2006 1 次提交
  23. 15 3月, 2006 1 次提交
    • T
      Improve parser so that we can show an error cursor position for errors · 20ab467d
      Tom Lane 提交于
      during parse analysis, not only errors detected in the flex/bison stages.
      This is per my earlier proposal.  This commit includes all the basic
      infrastructure, but locations are only tracked and reported for errors
      involving column references, function calls, and operators.  More could
      be done later but this seems like a good set to start with.  I've also
      moved the ReportSyntaxErrorPosition logic out of psql and into libpq,
      which should make it available to more people --- even within psql this
      is an improvement because warnings weren't handled by ReportSyntaxErrorPosition.
      20ab467d
  24. 07 3月, 2006 1 次提交
  25. 05 3月, 2006 1 次提交
  26. 04 3月, 2006 1 次提交
  27. 12 2月, 2006 1 次提交
  28. 23 11月, 2005 1 次提交
  29. 05 11月, 2005 1 次提交
  30. 27 10月, 2005 1 次提交
  31. 15 10月, 2005 1 次提交
  32. 14 10月, 2005 1 次提交
    • B
      The patch updates the documentation to reflect the fact that higher values · 8ac38622
      Bruce Momjian 提交于
      of client_min_messages (fatal + panic) are valid and also fixes a slight
      issue with how psql tried to display error messages that aren't sent to
      the client.
      
      We often tell people to ignore errors in response to requests for things
      like "drop if exists", but there's no good way to completely hide this
      without upping client_min_messages past ERROR.  When running a file like
      
      SET client_min_messages TO 'FATAL';
      
      DROP TABLE doesntexist;
      
      with "psql -f filename" you get an error prefix of
      "psql:/home/username/filename:3" even though there is no error message to
      prefix because it isn't sent to the client.
      
      Kris Jurka
      8ac38622
  33. 05 10月, 2005 1 次提交
  34. 21 9月, 2005 1 次提交
  35. 23 6月, 2005 1 次提交
  36. 18 6月, 2005 1 次提交
  37. 14 6月, 2005 1 次提交
  38. 13 6月, 2005 1 次提交
  39. 10 6月, 2005 1 次提交