1. 13 Feb, 2003 7 commits
    • Bruce Momjian's avatar
      Adds in NO MAXVALUE and NO MINVALUE options for create sequence per 200X · f249daf9
      Bruce Momjian authored
      spec, which will also make alter sequence a touch easier.
      
      sequence.c  init_params() will check for settings which have been
      defined twice, and complain.
      
      Rod Taylor
      f249daf9
    • Bruce Momjian's avatar
      The "random" regression test uses a function called oidrand(), which · 6cb1f4fe
      Bruce Momjian authored
      takes two parameters, an OID x and an integer y, and returns "true" with
      probability 1/y (the OID argument is ignored). This can be useful -- for
      example, it can be used to select a random sampling of the rows in a
      table (which is what the "random" regression test uses it for).
      
      This patch removes that function, because it was old and messy. The old
      function had the following problems:
      
      - it was undocumented
      
      - it was poorly named
      
      - it was designed to workaround an optimizer bug that no longer exists
      (the OID argument is to ensure that the optimizer won't optimize away
      calls to the function; AFAIK marking the function as 'volatile' suffices
      nowadays)
      
      - it used a different random-number generation technique than the other
      PSRNG-related functions in the backend do (it called random() like they
      do, but it had its own logic for setting a set and deciding when to
      reseed the RNG).
      
      Ok, this patch removes oidrand(), oidsrand(), and userfntest(), and
      improves the SGML docs a little bit (un-commenting the setseed()
      documentation).
      
      Neil Conway
      6cb1f4fe
    • Bruce Momjian's avatar
      Code for WITHOUT OIDS. · 8195f8f0
      Bruce Momjian authored
      
      On Wed, 2003-01-08 at 21:59, Christopher Kings-Lynne wrote:
      > I agree.  I want to remove OIDs from heaps of our tables when we go to 7.3.
      > I'd rather not have to do it in the dump due to down time.
      
      
      Rod Taylor <rbt@rbt.ca>
      8195f8f0
    • Bruce Momjian's avatar
      This patch makes pg_get_constraintdef support UNIQUE, PRIMARY KEY and · 8add2e1b
      Bruce Momjian authored
      CHECK constraints.
      
      There are apparently no other types of constraint in pg_constraint, so
      now all bases are covered.  Also, this patch assumes that consrc for a
      CHECK constraint is always bracketed so that it's not necessary to add
      extra brackets.
      
      Christopher Kings-Lynne
      8add2e1b
    • Bruce Momjian's avatar
      > ================================================================= · d21de3b1
      Bruce Momjian authored
      > User interface proposal for multi-row function targetlist entries
      > =================================================================
      > 1. Only one targetlist entry may return a set.
      > 2. Each targetlist item (other than the set returning one) is
      >    repeated for each item in the returned set.
      >
      
      Having gotten no objections (actually, no response at all), I can only assume
      no one had heartburn with this change. The attached patch covers the first of
      the two proposals, i.e. restricting the target list to only one set returning
      function.
      
      It compiles cleanly, and passes all regression tests. If there are no
      objections, please apply.
      
      Any suggestions on where this should be documented (other than maybe sql-select)?
      
      Thanks,
      
      Joe
      
      p.s. Here's what the previous example now looks like:
      CREATE TABLE bar(f1 int, f2 text, f3 int);
      INSERT INTO bar VALUES(1, 'Hello', 42);
      INSERT INTO bar VALUES(2, 'Happy', 45);
      
      CREATE TABLE foo(a int, b text);
      INSERT INTO foo VALUES(42, 'World');
      INSERT INTO foo VALUES(42, 'Everyone');
      INSERT INTO foo VALUES(45, 'Birthday');
      INSERT INTO foo VALUES(45, 'New Year');
      
      CREATE TABLE foo2(a int, b text);
      INSERT INTO foo2 VALUES(42, '!!!!');
      INSERT INTO foo2 VALUES(42, '????');
      INSERT INTO foo2 VALUES(42, '####');
      INSERT INTO foo2 VALUES(45, '$$$$');
      
      CREATE OR REPLACE FUNCTION getfoo(int) RETURNS SETOF text AS '
         SELECT b FROM foo WHERE a = $1
      ' language 'sql';
      
      CREATE OR REPLACE FUNCTION getfoo2(int) RETURNS SETOF text AS '
         SELECT b FROM foo2 WHERE a = $1
      ' language 'sql';
      
      regression=# SELECT f1, f2, getfoo(f3) AS f4 FROM bar;
        f1 |  f2   |    f4
      ----+-------+----------
         1 | Hello | World
         1 | Hello | Everyone
         2 | Happy | Birthday
         2 | Happy | New Year
      (4 rows)
      
      regression=# SELECT f1, f2, getfoo(f3) AS f4, getfoo2(f3) AS f5 FROM bar;
      ERROR:  Only one target list entry may return a set result
      
      
      Joe Conway
      d21de3b1
    • Bruce Momjian's avatar
      [ dumping schemas ] · 2bd63117
      Bruce Momjian authored
      > I don't care what you use for short options if all useful ones are taken.
      > But the long option should be --schema.
      
      Ok, fair enough: a revised patch is attached that uses the '-n' short
      option and the '--schema' long option.
      
      Neil Conway
      2bd63117
    • Bruce Momjian's avatar
      [ Have readline save edit history.] · 6d8b8a5e
      Bruce Momjian authored
      >
      > > I already posted a one-line patch to implement this, but it doesn't
      > > seem to hve come through to the list. Here it is inline, instead of as
      > > an attachment:
      >
      > We need this to work without readline as well.  (Of course there won't be
      > any history, but it needs to compile.)
      
      <blush> Even after slogging my way through the nesting #ifdefs for readline
      and win32, I forgot! Let's make that a three line patch, then.
      
      Ross J. Reedstrom
      6d8b8a5e
  2. 12 Feb, 2003 4 commits
  3. 11 Feb, 2003 3 commits
  4. 10 Feb, 2003 3 commits
  5. 09 Feb, 2003 6 commits
  6. 08 Feb, 2003 1 commit
  7. 07 Feb, 2003 2 commits
    • Dave Cramer's avatar
      applied Kris Jurka's patch for numeric · 893678ed
      Dave Cramer authored
      893678ed
    • Tom Lane's avatar
      Revise mechanism for getting rid of temp tables at backend shutdown. · 3acf4223
      Tom Lane authored
      Instead of grovelling through pg_class to find them, make use of the
      handy dandy dependency mechanism: just delete everything that depends
      on our temp schema.  Unlike the pg_class scan, the dependency mechanism
      is smart enough to delete things in an order that doesn't fall foul of
      any dependency restrictions.  Fixes problem reported by David Heggie:
      a temp table with a serial column may cause a backend FATAL exit at
      shutdown time, if it chances to try to delete the temp sequence first.
      3acf4223
  8. 06 Feb, 2003 3 commits
  9. 05 Feb, 2003 3 commits
  10. 04 Feb, 2003 8 commits