1. 18 Jun, 2001 1 commit
  2. 17 Jun, 2001 2 commits
  3. 16 Jun, 2001 2 commits
    • Tom Lane's avatar
      Tweak startup sequence so that running out of PROC array slots is · 2917f0a5
      Tom Lane authored
      detected sooner in backend startup, and is treated as an expected error
      (it gives 'Sorry, too many clients already' now).  This allows us not
      to have to enforce the MaxBackends limit exactly in the postmaster.
      Also, remove ProcRemove() and fold its functionality into ProcKill().
      There's no good reason for a backend not to be responsible for removing
      its PROC entry, and there are lots of good reasons for the postmaster
      not to be touching shared-memory data structures.
      2917f0a5
    • Tom Lane's avatar
      It turns out that the relcache thinks it can distinguish different · 668db147
      Tom Lane authored
      rules and triggers by OID.  So, even though we have no cross-references
      in the system catalogs to pg_rewrite.oid or pg_trigger.oid, we'd better
      have unique indexes on them.  Put back pg_rewrite_oid_index, which I
      mistakenly removed a few days ago, and add pg_trigger_oid_index.
      668db147
  4. 15 Jun, 2001 3 commits
  5. 14 Jun, 2001 6 commits
  6. 13 Jun, 2001 10 commits
  7. 12 Jun, 2001 11 commits
    • Tom Lane's avatar
      Extend GUC concepts of parse_hook and assign_hook to all four supported · 2938eec7
      Tom Lane authored
      datatypes, not only strings.  parse_hook is useless for bool, I suppose,
      but it seems possibly useful for int and double to apply variable-specific
      constraints that are more complex than simple range limits.  assign_hook
      is definitely useful for all datatypes --- we need it right now for bool
      to support date cache reset when changing Australian timezone rule setting.
      Also, clean up some residual problems with the reset all/show all patch,
      including memory leaks and mistaken reset of PostPortNumber.  It seems
      best that RESET ALL not touch variables that don't have SUSET or
      USERSET context.
      2938eec7
    • Bruce Momjian's avatar
      89765fa5
    • Tom Lane's avatar
      Repair problem with multi-action rules in combination with any nontrivial · 2a06b3bd
      Tom Lane authored
      manipulation of rtable/jointree by planner.  Rewriter was generating
      actions that shared rtable/jointree substructure, which caused havoc
      when planner got to the later actions that it'd already mucked up.
      2a06b3bd
    • Bruce Momjian's avatar
      Add Updatable view mention. · c1db506a
      Bruce Momjian authored
      c1db506a
    • Bruce Momjian's avatar
      Update TODO list. · a0316a19
      Bruce Momjian authored
      a0316a19
    • Bruce Momjian's avatar
      Back out has_table_privilege patch. · 76e9ad1f
      Bruce Momjian authored
      76e9ad1f
    • Bruce Momjian's avatar
      Update TODO list. · 3c3ff428
      Bruce Momjian authored
      3c3ff428
    • Bruce Momjian's avatar
      OK -- here's take #5. · 58c909bb
      Bruce Momjian authored
      It "make"s and "make check"s clean against current cvs tip.
      
      There are now both Text and Name variants, and the regression test support
      is rolled into the patch. Note that to be complete wrt Name based variants,
      there are now 12 user visible versions of has_table_privilege:
      
      has_table_privilege(Text usename, Text relname, Text priv_type)
      has_table_privilege(Text usename, Name relname, Text priv_type)
      has_table_privilege(Name usename, Text relname, Text priv_type)
      has_table_privilege(Name usename, Name relname, Text priv_type)
      has_table_privilege(Text relname, Text priv_type) /* assumes current_user */
      has_table_privilege(Name relname, Text priv_type) /* assumes current_user */
      has_table_privilege(Text usename, Oid reloid, Text priv_type)
      has_table_privilege(Name usename, Oid reloid, Text priv_type)
      has_table_privilege(Oid reloid, Text priv_type)  /* assumes current_user */
      has_table_privilege(Oid usesysid, Text relname, Text priv_type)
      has_table_privilege(Oid usesysid, Name relname, Text priv_type)
      has_table_privilege(Oid usesysid, Oid reloid, Text priv_type)
      
      For the Text based inputs, a new internal function, get_Name is used
      (shamelessly copied from get_seq_name in sequence.c) to downcase if not
      quoted, or remove quotes if quoted, and truncate. I also added a few test
      cases for the downcasing, quote removal, and Name based variants to the
      regression test.
      
      Joe Conway
      58c909bb
    • Bruce Momjian's avatar
      I installed postgres 7.1 with --enable-odbc. I then installed · 13a52c1f
      Bruce Momjian authored
      tclodbc (http://sourceforge.net/projects/tclodbc) and libiodbc-2.50.3
      (http://www.iodbc.org/dist/libiodbc-2.50.3.tar.gz).  I could not
      get either to work... postgres would not find the global odbcinst.ini
      file.  I traced this to src/interfaces/odbc/gpps.c -- here are the
      many things I think are wrong:
      
      Run tclodbc and do a ``database db <DSNname>'' where ``DSNname'' is
      one of the DSN's in /usr/local/etc/odbcinst.ini (or wherever the
      global ini file is installed.)  The result is always the error
      message that ``one of server,port,database,etc. are missing''.
      
      Run libiodbc-2.50.3/samples/odbctest <DSNname>.  The command fails
      to connect to the database and just exits.
      
      Dave Bodenstab
      13a52c1f
    • Bruce Momjian's avatar
      Update TODO list. · 55abc36e
      Bruce Momjian authored
      55abc36e
    • Tom Lane's avatar
      Clean up various to-do items associated with system indexes: · 1d584f97
      Tom Lane authored
      pg_database now has unique indexes on oid and on datname.
      pg_shadow now has unique indexes on usename and on usesysid.
      pg_am now has unique index on oid.
      pg_opclass now has unique index on oid.
      pg_amproc now has unique index on amid+amopclaid+amprocnum.
      Remove pg_rewrite's unnecessary index on oid, delete unused RULEOID syscache.
      Remove index on pg_listener and associated syscache for performance reasons
      (caching rows that are certain to change before you need 'em again is
      rather pointless).
      Change pg_attrdef's nonunique index on adrelid into a unique index on
      adrelid+adnum.
      
      Fix various incorrect settings of pg_class.relisshared, make that the
      primary reference point for whether a relation is shared or not.
      IsSharedSystemRelationName() is now only consulted to initialize relisshared
      during initial creation of tables and indexes.  In theory we might now
      support shared user relations, though it's not clear how one would get
      entries for them into pg_class &etc of multiple databases.
      
      Fix recently reported bug that pg_attribute rows created for an index all have
      the same OID.  (Proof that non-unique OID doesn't matter unless it's
      actually used to do lookups ;-))
      
      There's no need to treat pg_trigger, pg_attrdef, pg_relcheck as bootstrap
      relations.  Convert them into plain system catalogs without hardwired
      entries in pg_class and friends.
      
      Unify global.bki and template1.bki into a single init script postgres.bki,
      since the alleged distinction between them was misleading and pointless.
      Not to mention that it didn't work for setting up indexes on shared
      system relations.
      
      Rationalize locking of pg_shadow, pg_group, pg_attrdef (no need to use
      AccessExclusiveLock where ExclusiveLock or even RowExclusiveLock will do).
      Also, hold locks until transaction commit where necessary.
      1d584f97
  8. 11 Jun, 2001 5 commits
    • Bruce Momjian's avatar
      autoconf · d2c83581
      Bruce Momjian authored
      d2c83581
    • Bruce Momjian's avatar
      The attached patch enables PostgreSQL CVS to build cleanly under Cygwin · 92f45065
      Bruce Momjian authored
      when built against readline 4.2.  Specifically, it handles the deprecation
      of
      
          filename_completion_function()
      
      with preference for
      
          rl_filename_completion_function()
      
      Although, I was motivated by Cygwin support, IMO this patch is appropriate
      for all platforms.  To quote from the readline source:
      
          #if 0
          /* Backwards compatibility (compat.c).  These will go away sometime. */
          ...
          extern READLINE_EXPORT(char, *filename_completion_function) ...
          #endif
      
      Note that this patch is modeled after the one by Peter Eisentraut for
      completion_matches():
      
          http://www.ca.postgresql.org/~petere/readline42.html
      I tested this patch under the following environments:
      
          Cygwin with readline 4.1
          Cygwin with readline 4.2
          Linux with readline 2.2.1
          Linux with readline 4.2
      
      and it behaved as expected.
      
      Jason Tishler
      92f45065
    • Bruce Momjian's avatar
      Got two patches that were found by folks on the Castor list, that we'd like to · 8af0ea9d
      Bruce Momjian authored
      submit.  These were done for the jdbc2 driver.  The first one is for support
      of the Types.BIT in the PreparedStatement class.  The following lines need to be
      inserted in the switch statment, at around line 530:
      
      
      	(Prepared statment, line 554, before the default: switch
      	case Types.BIT:
      	     if (x instanceof Boolean) {
      	          set(parameterIndex, ((Boolean)x).booleanValue() ? "TRUE" : "FALSE");
      	     } else {
      	          throw new PSQLException("postgresql.prep.type");
      	     }
      	     break;
      
      
      	The second one is dealing with blobs,
      
      	inserted in PreparedStatemant.java (After previous patch line, 558):
      	         case Types.BINARY:
      	         case Types.VARBINARY:
      	                              setObject(parameterIndex,x);
      	                              break;
      	and in ResultSet.java (Around line 857):
      	        case Types.BINARY:
      	        case Types.VARBINARY:
      	                        return getBytes(columnIndex);
      
      Ned Wolpert <ned.wolpert@knowledgenet.com>
      8af0ea9d
    • Peter Eisentraut's avatar
      Add French psql translation. (My rendition of French anyway...) · 05150e2d
      Peter Eisentraut authored
      Fix typo in message.
      05150e2d
    • Bruce Momjian's avatar
      Update FAQ. · 94cb2201
      Bruce Momjian authored
      94cb2201