Re: [PATCHES] [HACKERS] Coding style for emacs

2006-09-06 Thread Bruce Momjian

Patch applied.  Thanks.

Added to /tools/editors.
---


Andrew Dunstan wrote:
> Tom Lane wrote:
> > Andrew Dunstan <[EMAIL PROTECTED]> writes:
> >   
> >> Looking at this further, I am wondering if it would not be better to put 
> >> sample .emacs and .vimrc files in the source (in, say, src.tools).
> >> 
> >
> > Seems reasonable.  I was about to say "what if they're just looking at
> > the docs and don't have a source tree?" ... but anyone editing the code
> > has got a copy of the source tree ...
> >
> >   
> 
> here is the proposed patch.
> 
> cheers
> 
> andrew


> 
> ---(end of broadcast)---
> TIP 3: Have you checked our extensive FAQ?
> 
>http://www.postgresql.org/docs/faq

-- 
  Bruce Momjian   [EMAIL PROTECTED]
  EnterpriseDBhttp://www.enterprisedb.com

  + If your life is a hard drive, Christ can be your backup. +

---(end of broadcast)---
TIP 4: Have you searched our list archives?

   http://archives.postgresql.org


Re: [PATCHES] BUG #2600: dblink compile with SSL missing libraries

2006-09-06 Thread Tom Lane
Chris Browne <[EMAIL PROTECTED]> writes:
> I still need the following, on AIX:

> -SHLIB_LINK = $(libpq)
> +SHLIB_LINK = $(libpq) $(LIBS)

No you don't --- see recent warthog complaint.  We have to filter LIBS
down to just the minimum.

regards, tom lane

---(end of broadcast)---
TIP 1: if posting/reading through Usenet, please send an appropriate
   subscribe-nomail command to [EMAIL PROTECTED] so that your
   message can get through to the mailing list cleanly


Re: [PATCHES] BUG #2600: dblink compile with SSL missing libraries

2006-09-06 Thread Chris Browne
The change Tom made to contrib/sshinfo/Makefile to support Darwin,
adding in $(LIBS), fixed my problem with that contrib module on AIX.

I still need the following, on AIX:

===
RCS file: /projects/cvsroot/pgsql/contrib/dblink/Makefile,v
retrieving revision 1.11
diff -u -r1.11 Makefile
--- Makefile27 Feb 2006 12:54:38 -  1.11
+++ Makefile6 Sep 2006 19:48:23 -
@@ -3,7 +3,7 @@
 MODULE_big = dblink
 PG_CPPFLAGS = -I$(libpq_srcdir)
 OBJS   = dblink.o
-SHLIB_LINK = $(libpq)
+SHLIB_LINK = $(libpq) $(LIBS)
 
 DATA_built = dblink.sql 
 DATA = uninstall_dblink.sql 
-- 
(reverse (concatenate 'string "moc.enworbbc" "@" "enworbbc"))
http://linuxdatabases.info/info/nonrdbms.html
"Fashion is a form of ugliness so intolerable that we have to alter it
every six months."  -- Oscar Wilde

---(end of broadcast)---
TIP 1: if posting/reading through Usenet, please send an appropriate
   subscribe-nomail command to [EMAIL PROTECTED] so that your
   message can get through to the mailing list cleanly


Re: [PATCHES] [HACKERS] Coding style for emacs

2006-09-06 Thread Andrew Dunstan

Tom Lane wrote:

Andrew Dunstan <[EMAIL PROTECTED]> writes:
  
Looking at this further, I am wondering if it would not be better to put 
sample .emacs and .vimrc files in the source (in, say, src.tools).



Seems reasonable.  I was about to say "what if they're just looking at
the docs and don't have a source tree?" ... but anyone editing the code
has got a copy of the source tree ...

  


here is the proposed patch.

cheers

andrew
Index: doc/src/FAQ/FAQ_DEV.html
===
RCS file: /cvsroot/pgsql/doc/src/FAQ/FAQ_DEV.html,v
retrieving revision 1.114
diff -c -c -r1.114 FAQ_DEV.html
*** doc/src/FAQ/FAQ_DEV.html	12 Aug 2006 03:48:32 -	1.114
--- doc/src/FAQ/FAQ_DEV.html	6 Sep 2006 18:34:16 -
***
*** 357,365 
  can be applied to the distribution. This produces context diffs,
  which is our preferred format.
  
! Our standard format is to indent each code level with one tab,
! where each tab is four spaces. You will need to set your editor to
! display tabs as four spaces:
  
  
  vi in ~/.exrc:
--- 357,365 
  can be applied to the distribution. This produces context diffs,
  which is our preferred format.
  
! Our standard format BSD style, with each level of code indented
! one tab, where each tab is four spaces. You will need to set your editor 
! 	or file viewer to display tabs as four spaces:
  
  
  vi in ~/.exrc:
***
*** 369,408 
  more -x4
  less:
  less -x4
- emacs:
- M-x set-variable tab-width
- 
- or
- 
- (c-add-style "pgsql"
- '("bsd"
- (indent-tabs-mode . t)
- (c-basic-offset   . 4)
- (tab-width . 4)
- (c-offsets-alist .
- ((case-label . +)))
- )
- nil ) ; t = set this style, nil = don't
- 
- (defun pgsql-c-mode ()
- (c-mode)
- (c-set-style "pgsql")
- )
- 
- and add this to your autoload list (modify file path in macro):
- 
- (setq auto-mode-alist
- (cons '("\\`/home/andrew/pgsql/.*\\.[chyl]\\'" . pgsql-c-mode)
- auto-mode-alist))
- or
- /*
-  * Local variables:
-  *  tab-width: 4
-  *  c-indent-level: 4
-  *  c-basic-offset: 4
-  * End:
-  */
  
  
   pgindent will the format code by specifying flags to your
  operating system's utility indent. This 
+The tools directory of the latest sources contains sample 
+settings that can be used with the emacs, xemacs and vim 
+editors, that assist in keeping to PostgreSQL coding standards.
+
  
   pgindent will the format code by specifying flags to your
  operating system's utility indent. This 
  
 
! For Emacs, add the following (or
! something similar) to your ~/.emacs 
! initialization file:
! 
! 
! ;; check for files with a path containing "postgres" or "pgsql"
! (setq auto-mode-alist
!   (cons '("\\(postgres\\|pgsql\\).*\\.[ch]\\'" . pgsql-c-mode)
! auto-mode-alist))
! (setq auto-mode-alist
!   (cons '("\\(postgres\\|pgsql\\).*\\.cc\\'" . pgsql-c-mode)
! auto-mode-alist))
! 
! (defun pgsql-c-mode ()
!   ;; sets up formatting for PostgreSQL C code
!   (interactive)
!   (c-mode)
!   (setq-default tab-width 4)
!   (c-set-style "bsd") ; set c-basic-offset to 4, plus other stuff
!   (c-set-offset 'case-label '+)   ; tweak case indent to match PG custom
!   (setq indent-tabs-mode t))  ; make sure we keep tabs when indenting
! 
!
! 
!
! For vi, your
! ~/.vimrc or equivalent file should contain
! the following:
! 
! 
! set tabstop=4
! 
! 
! or equivalently from within vi, try
! 
! 
! :set ts=4
! 
 
  
 
--- 21,31 
 
  
 
! The src/tools directory contains sample settings 
! 	files that can be used with the emacs, 
! 	xemacs or vim 
! 	editors to help ensure that they format	code according to these 
! 	conventions.
 
  
 
*** /dev/null	2006-09-01 11:10:52.339368250 -0400
--- src/tools/emacs.samples	2006-09-06 13:47:11.0 -0400
***
*** 0 
--- 1,78 
+ ;
+ ;;;
+ ;;; This file contains several examples of how to set up emacs and/or xemacs
+ ;;; to edit PostgreSQL code.
+ ;;;
+ ;;; Whichever set you choose would go in your .emacs file or equivalent.
+ ;;;
+ ;;; You only need one of these.
+ ;;;
+ ;
+ 
+ 
+ ;
+ 
+ ;;; This set is known to work with old versions of emacs
+ 
+ (setq auto-mode-alist
+   (co

Re: [PATCHES] [HACKERS] Open items for 8.2

2006-09-06 Thread Tom Lane
Tom Lane <[EMAIL PROTECTED]> writes:
> Peter Eisentraut <[EMAIL PROTECTED]> writes:
>> Am Dienstag, 5. September 2006 05:58 schrieb Tom Lane:
>>> A couple of recently discussed FE/BE protocol issues are: not storing a
>>> plan at all for unnamed-statement cases, and thus allowing bind
>>> parameters to be treated as constants; allowing parameter types to go
>>> unresolved rather than throwing an error.  Perhaps it's too late to
>>> consider these for 8.2, but they seem no more invasive than some other
>>> items on the open-issues list.

>> Do we have a patch for that today?

> We could have a patch for the first one today --- I was thinking about
> it last night and intending to code it today.

Proposed patch attached --- just the code, haven't looked at what to
change in the documentation yet.  There's not a lot to it.

regards, tom lane


*** src/backend/commands/explain.c.orig Tue Aug  1 21:59:45 2006
--- src/backend/commands/explain.c  Wed Sep  6 12:28:15 2006
***
*** 191,197 
}
  
/* plan the query */
!   plan = planner(query, isCursor, cursorOptions, NULL);
  
/*
 * Update snapshot command ID to ensure this query sees results of any
--- 191,197 
}
  
/* plan the query */
!   plan = planner(query, isCursor, cursorOptions, params);
  
/*
 * Update snapshot command ID to ensure this query sees results of any
*** src/backend/commands/portalcmds.c.orig  Sun Sep  3 13:44:27 2006
--- src/backend/commands/portalcmds.c   Wed Sep  6 12:28:15 2006
***
*** 95,101 
  errmsg("DECLARE CURSOR ... FOR UPDATE/SHARE is not 
supported"),
 errdetail("Cursors must be READ ONLY.")));
  
!   plan = planner(query, true, stmt->options, NULL);
  
/*
 * Create a portal and copy the query and plan into its memory context.
--- 95,101 
  errmsg("DECLARE CURSOR ... FOR UPDATE/SHARE is not 
supported"),
 errdetail("Cursors must be READ ONLY.")));
  
!   plan = planner(query, true, stmt->options, params);
  
/*
 * Create a portal and copy the query and plan into its memory context.
*** src/backend/commands/prepare.c.orig Wed Aug 30 13:02:43 2006
--- src/backend/commands/prepare.c  Wed Sep  6 11:22:11 2006
***
*** 261,266 
--- 261,267 
ParamExternData *prm = ¶mLI->params[i];
  
prm->ptype = lfirst_oid(la);
+   prm->pflags = 0;
prm->value = ExecEvalExprSwitchContext(n,

   GetPerTupleExprContext(estate),

   &prm->isnull,
*** src/backend/executor/functions.c.orig   Sat Aug 12 16:05:55 2006
--- src/backend/executor/functions.cWed Sep  6 11:22:20 2006
***
*** 442,447 
--- 442,448 
  
prm->value = fcinfo->arg[i];
prm->isnull = fcinfo->argnull[i];
+   prm->pflags = 0;
prm->ptype = fcache->argtypes[i];
}
}
*** src/backend/executor/spi.c.orig Sun Sep  3 13:44:27 2006
--- src/backend/executor/spi.c  Wed Sep  6 11:22:20 2006
***
*** 893,898 
--- 893,899 
ParamExternData *prm = ¶mLI->params[k];
  
prm->ptype = spiplan->argtypes[k];
+   prm->pflags = 0;
prm->isnull = (Nulls && Nulls[k] == 'n');
if (prm->isnull)
{
***
*** 1357,1362 
--- 1358,1364 
  
prm->value = Values[k];
prm->isnull = (Nulls && Nulls[k] == 'n');
+   prm->pflags = 0;
prm->ptype = plan->argtypes[k];
}
}
*** src/backend/optimizer/util/clauses.c.orig   Sat Aug 12 16:05:55 2006
--- src/backend/optimizer/util/clauses.cWed Sep  6 12:04:03 2006
***
*** 1462,1468 
   *
   * Currently the extra steps that are taken in this mode are:
   * 1. Substitute values for Params, where a bound Param value has been made
!  *  available by the caller of planner().
   * 2. Fold stable, as well as immutable, functions to constants.
   *
   */
--- 1462,1470 
   *
   * Currently the extra steps that are taken in this mode are:
   * 1. Substitute values for Params, where a bound Param value has been made
!  *  available by the caller of planner(), even if the Param isn't marked
!  *  constant.  This effectively means that we plan using the first 
supplied
!  *  value of the Param.
   * 2. Fold stable, as well as 

Re: [PATCHES] XML syntax patch

2006-09-06 Thread Bruce Momjian
Peter Eisentraut wrote:
> Am Dienstag, 5. September 2006 03:21 schrieb Bruce Momjian:
> > I have received an update XML syntax patch from Nikolay (summer of code)
> > based on David Fetter's patch from 2005.
> >
> > Comments?  It would be nice to have for 8.2.
> 
> I've told you privately already, I think it would be a grave mistake to add 
> this now.

Uh, when?  You had Nikolay review David's patch to see if it could be
made consistent enough so it could go into 8.2 and not conflict with the
additions in 8.3.

Now that I know, it will be pushed to 8.3 --- another feature that will
_not_ be in 8.2.

-- 
  Bruce Momjian   [EMAIL PROTECTED]
  EnterpriseDBhttp://www.enterprisedb.com

  + If your life is a hard drive, Christ can be your backup. +

---(end of broadcast)---
TIP 1: if posting/reading through Usenet, please send an appropriate
   subscribe-nomail command to [EMAIL PROTECTED] so that your
   message can get through to the mailing list cleanly


Re: [PATCHES] XML syntax patch

2006-09-06 Thread Bruce Momjian
Peter Eisentraut wrote:
> Am Mittwoch, 6. September 2006 17:28 schrieb Bruce Momjian:
> > Uh, when?  You had Nikolay review David's patch to see if it could be
> > made consistent enough so it could go into 8.2 and not conflict with the
> > additions in 8.3.
> 
> The only thing we could justify under the feature freeze regime is to add the 
> XML syntax into 8.2, operating on text data.  That will change when the xml 
> type goes into 8.3.  So we'd be adding a feature right now with the 
> announcement that the feature will break incompatibly in the next release.  
> That doesn't seem very useful to me.

Right, that is exactly what I remember, but you had Nikolay look at the
patch in case he could make it not break incompatibly in 8.3.  Anyway,
patch shelved for 8.3.  I just wanted to make sure I didn't miss an
email from you.

-- 
  Bruce Momjian   [EMAIL PROTECTED]
  EnterpriseDBhttp://www.enterprisedb.com

  + If your life is a hard drive, Christ can be your backup. +

---(end of broadcast)---
TIP 2: Don't 'kill -9' the postmaster


Re: [PATCHES] XML syntax patch

2006-09-06 Thread Peter Eisentraut
Am Mittwoch, 6. September 2006 17:28 schrieb Bruce Momjian:
> Uh, when?  You had Nikolay review David's patch to see if it could be
> made consistent enough so it could go into 8.2 and not conflict with the
> additions in 8.3.

The only thing we could justify under the feature freeze regime is to add the 
XML syntax into 8.2, operating on text data.  That will change when the xml 
type goes into 8.3.  So we'd be adding a feature right now with the 
announcement that the feature will break incompatibly in the next release.  
That doesn't seem very useful to me.

-- 
Peter Eisentraut
http://developer.postgresql.org/~petere/

---(end of broadcast)---
TIP 3: Have you checked our extensive FAQ?

   http://www.postgresql.org/docs/faq


Re: [PATCHES] XML syntax patch

2006-09-06 Thread Peter Eisentraut
Am Dienstag, 5. September 2006 03:21 schrieb Bruce Momjian:
> I have received an update XML syntax patch from Nikolay (summer of code)
> based on David Fetter's patch from 2005.
>
> Comments?  It would be nice to have for 8.2.

I've told you privately already, I think it would be a grave mistake to add 
this now.

-- 
Peter Eisentraut
http://developer.postgresql.org/~petere/

---(end of broadcast)---
TIP 3: Have you checked our extensive FAQ?

   http://www.postgresql.org/docs/faq