[PATCHES] Updated Turkish translation: postgres

2004-10-28 Thread Devrim GUNDUZ
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
Hi,
Nicolai Tufar has began updating Turkish translation of postgres:
http://postgresql.gunduz.org/translation/PostgreSQL-8.0/PgSQL-DilDosyalari/postgres-tr.po
Could you please apply it for 8.0?
Regards,
- --
Devrim GUNDUZ 
devrim~gunduz.orgdevrim.gunduz~linux.org.tr
			http://www.tdmsoft.com
			http://www.gunduz.org
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.1 (GNU/Linux)

iD8DBQFBgLTqtl86P3SPfQ4RAlcoAJ4oUbORN/7fby9y/8bFJutwTxX0EwCePzY2
0O8DR47j6tb4LHlGyEeF3Kc=
=F3G0
-END PGP SIGNATURE-
---(end of broadcast)---
TIP 9: the planner will ignore your desire to choose an index scan if your
 joining column's datatypes do not match


Re: [PATCHES] Updated Turkish translations

2004-10-28 Thread Peter Eisentraut
Devrim GUNDUZ wrote:
 http://postgresql.gunduz.org/translation/PostgreSQL-8.0/PgSQL-DilDosy
alari/libpq-tr.po
 http://postgresql.gunduz.org/translation/PostgreSQL-8.0/PgSQL-DilDosy
alari/pg_ctl-tr.po
 http://postgresql.gunduz.org/translation/PostgreSQL-8.0/PgSQL-DilDosy
alari/psql-tr.po

 These are %100 against current strings.

 Could you please apply them for 8.0?

Done.

---(end of broadcast)---
TIP 8: explain analyze is your friend


Re: [PATCHES] 8.0-NLS: czech

2004-10-28 Thread Peter Eisentraut
Karel Zak wrote:
 On Wed, 2004-10-27 at 13:24 +0200, Peter Eisentraut wrote:
  Please make available the individual PO files, not a patch.  The
  patch you supplied does not apply cleanly.

  OK. Please don't forget add cs to src/bin/pg_config/nls.mk

   http://people.redhat.com/kzak/pg-nls-cs-10272004.tar.gz

Installed.

---(end of broadcast)---
TIP 9: the planner will ignore your desire to choose an index scan if your
  joining column's datatypes do not match


Re: [PATCHES] Updated Turkish translation: postgres

2004-10-28 Thread Peter Eisentraut
Devrim GUNDUZ wrote:
 Nicolai Tufar has began updating Turkish translation of postgres:

 http://postgresql.gunduz.org/translation/PostgreSQL-8.0/PgSQL-DilDosy
alari/postgres-tr.po

 Could you please apply it for 8.0?

Done.

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


Re: [PATCHES] transformExpr() refactor

2004-10-28 Thread Tom Lane
Neil Conway [EMAIL PROTECTED] writes:
 This patch refactors transformExpr(): rather than being a monsterous 900
 line function, it breaks it up into numerous sub-functions that are
 invoked by transformExpr() for individual expression types, in the style
 of transformStmt().

I don't actually find this to be an improvement.  What's the point?
Since all the switch arms are independent, you haven't really done
anything at all to improve the comprehensibility of the code...

regards, tom lane

---(end of broadcast)---
TIP 8: explain analyze is your friend


[PATCHES] rmtree cleanup

2004-10-28 Thread Andrew Dunstan
The attached patch cleans up src/port/dirmod.c::rmtree() a bit. It moves 
the filename finding portion into its own function, and in that function 
only scans the directory once instead of twice.

cheers
andrew

Index: src/port/dirmod.c
===
RCS file: /home/cvsmirror/pgsql/src/port/dirmod.c,v
retrieving revision 1.31
diff -c -r1.31 dirmod.c
*** src/port/dirmod.c	18 Oct 2004 19:08:58 -	1.31
--- src/port/dirmod.c	28 Oct 2004 13:43:56 -
***
*** 273,331 
  #endif
  }
  
- 
  /*
!  *	rmtree
!  *
!  *	Delete a directory tree recursively.
!  *	Assumes path points to a valid directory.
!  *	Deletes everything under path.
!  *	If rmtopdir is true deletes the directory too.
   *
   */
! bool
! rmtree(char *path, bool rmtopdir)
  {
- 	char		filepath[MAXPGPATH];
  	DIR		   *dir;
  	struct dirent *file;
  	char	  **filenames;
- 	char	  **filename;
  	int			numnames = 0;
- 	struct stat statbuf;
- 
- 	/*
- 	 * we copy all the names out of the directory before we start
- 	 * modifying it.
- 	 */
- 
- 	dir = opendir(path);
- 	if (dir == NULL)
- 		return false;
  
! 	while ((file = readdir(dir)) != NULL)
! 	{
! 		if (strcmp(file-d_name, .) != 0  strcmp(file-d_name, ..) != 0)
! 			numnames++;
! 	}
! 
! 	rewinddir(dir);
  
  #ifdef FRONTEND
! 	if ((filenames = malloc((numnames + 2) * sizeof(char *))) == NULL)
  	{
  		fprintf(stderr, _(out of memory\n));
  		exit(1);
  	}
  #else
! 	filenames = palloc((numnames + 2) * sizeof(char *));
  #endif
  
! 	numnames = 0;
  
  	while ((file = readdir(dir)) != NULL)
  	{
  		if (strcmp(file-d_name, .) != 0  strcmp(file-d_name, ..) != 0)
  #ifdef FRONTEND
  			if ((filenames[numnames++] = strdup(file-d_name)) == NULL)
  			{
--- 273,331 
  #endif
  }
  
  /*
!  * fnames
   *
+  * return a list of the names of objects in the argument directory 
   */
! 
! static char **
! fnames(char * path)
  {
  	DIR		   *dir;
  	struct dirent *file;
  	char	  **filenames;
  	int			numnames = 0;
  
! 	int fnsize = 200; /* 200 will take care of many small dbs */
  
  #ifdef FRONTEND
! 	if ((filenames = malloc(fnsize * sizeof(char *))) == NULL)
  	{
  		fprintf(stderr, _(out of memory\n));
  		exit(1);
  	}
  #else
! 	filenames = palloc(fnsize * sizeof(char *));
  #endif
  
! 	dir = opendir(path);
! 	if (dir == NULL)
! 	{
! 		filenames[0]=NULL;
! 		rmt_cleanup(filenames);
! 		return NULL;
! 	}
  
  	while ((file = readdir(dir)) != NULL)
  	{
  		if (strcmp(file-d_name, .) != 0  strcmp(file-d_name, ..) != 0)
+ 		{
+ 			if (numnames+2 = fnsize)
+ 			{
+ fnsize += fnsize;
+ #ifdef FRONTEND
+ if ((filenames = realloc(filenames,
+ 		 fnsize * sizeof(char *))) == NULL)
+ {
+ 	fprintf(stderr, _(out of memory\n));
+ 	exit(1);
+ }
+ #else
+ filenames = repalloc(filenames, fnsize * sizeof(char *));
+ #endif
+ 			}
+ 
  #ifdef FRONTEND
  			if ((filenames[numnames++] = strdup(file-d_name)) == NULL)
  			{
***
*** 335,346 
--- 335,379 
  #else
  			filenames[numnames++] = pstrdup(file-d_name);
  #endif
+ 
+ 		}
  	}
  
+ 
  	filenames[numnames] = NULL;
  
  	closedir(dir);
  
+ 	return filenames;
+ 
+ }
+ 
+ /*
+  *	rmtree
+  *
+  *	Delete a directory tree recursively.
+  *	Assumes path points to a valid directory.
+  *	Deletes everything under path.
+  *	If rmtopdir is true deletes the directory too.
+  *
+  */
+ bool
+ rmtree(char *path, bool rmtopdir)
+ {
+ 	char		filepath[MAXPGPATH];
+ 	char	  **filenames;
+ 	char	  **filename;
+ 	struct stat statbuf;
+ 
+ 	/*
+ 	 * we copy all the names out of the directory before we start
+ 	 * modifying it.
+ 	 */
+ 	filenames = fnames(path);
+ 
+ 	if (filenames == NULL)
+ 		return false;
+ 
  	/* now we have the names we can start removing things */
  
  	for (filename = filenames; *filename; filename++)

---(end of broadcast)---
TIP 8: explain analyze is your friend


[PATCHES] New Turkish translations for 7.4 branch + an update for 8.0

2004-10-28 Thread Devrim GUNDUZ
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
Hi,
Below are new Turkish translations for 7.4 branch:
http://postgresql.gunduz.org/translation/PostgreSQL-7.4/PgSQL-DilDosyalari/libpq-tr.po
http://postgresql.gunduz.org/translation/PostgreSQL-7.4/PgSQL-DilDosyalari/pg_controldata-tr.po
http://postgresql.gunduz.org/translation/PostgreSQL-7.4/PgSQL-DilDosyalari/pg_resetxlog-tr.po
http://postgresql.gunduz.org/translation/PostgreSQL-7.4/PgSQL-DilDosyalari/pgscripts-tr.po
http://postgresql.gunduz.org/translation/PostgreSQL-7.4/PgSQL-DilDosyalari/psql-tr.po
Also, an update for 8.0
http://postgresql.gunduz.org/translation/PostgreSQL-8.0/PgSQL-DilDosyalari/libpq-tr.po
Could you please apply them?
Regards,
- --
Devrim GUNDUZ 
devrim~gunduz.orgdevrim.gunduz~linux.org.tr
			http://www.tdmsoft.com
			http://www.gunduz.org
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.1 (GNU/Linux)

iD8DBQFBgRo/tl86P3SPfQ4RAnTmAKC/tz2pAwCdRLx4Bi9g0WZBz3KU2wCgkRam
+qiexsXBDI6nsmKuRi/bjRQ=
=B2KU
-END PGP SIGNATURE-
---(end of broadcast)---
TIP 4: Don't 'kill -9' the postmaster


Re: [PATCHES] pg_ctl -D canonicalization

2004-10-28 Thread Magnus Hagander
Thanks. I can confirm that this fixes the issue.

//Magnus

-Original Message-
From: Bruce Momjian [mailto:[EMAIL PROTECTED] 
Sent: den 27 oktober 2004 19:17
To: Magnus Hagander
Cc: [EMAIL PROTECTED]
Subject: Re: [PATCHES] pg_ctl -D canonicalization



OK, attached patch applied.  Your original patch didn't 
canonicalize the
PGDATA environment variable.  '-D' takes precidence but it should be
accurate.

I also updated the comments in canonicalize_path because it does a lot
more now that just win to unix path conversion.

---


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

   http://archives.postgresql.org


Re: [PATCHES] sign parsing (was: Re: [HACKERS] to_char/to_number loses sign)

2004-10-28 Thread Tom Lane
Karel Zak [EMAIL PROTECTED] writes:
 The problem was bigger than I expected. I hope it's fixed in actual
 patch. All regression tests pass.

Applied, thanks.

regards, tom lane

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


Re: [PATCHES] dblink crash fix

2004-10-28 Thread Tom Lane
Kris Jurka [EMAIL PROTECTED] writes:
 This makes dblink pass its installcheck test on platforms where 
 snprintf(data, len, %s, NULL) crash.

Good catch!  Applied.

regards, tom lane

---(end of broadcast)---
TIP 2: you can get off all lists at once with the unregister command
(send unregister YourEmailAddressHere to [EMAIL PROTECTED])


Re: [PATCHES] pg_autovacuum vacuum cost variables patch v2

2004-10-28 Thread Tom Lane
Matthew T. O'Connor [EMAIL PROTECTED] writes:
 + if(operation == VACUUM_ANALYZE)
 + update_table_thresholds(dbi, tbl, VACUUM_ANALYZE);
 + else if(operation == VACUUM_ANALYZE)
 + update_table_thresholds(dbi, tbl, ANALYZE_ONLY);

Surely that's not right ... are there any third cases here?  Why
not just a one-liner
update_table_thresholds(dbi, tbl, operation);

regards, tom lane

---(end of broadcast)---
TIP 8: explain analyze is your friend


Re: [PATCHES] rmtree cleanup

2004-10-28 Thread Andrew Dunstan

Tom Lane wrote:
Andrew Dunstan [EMAIL PROTECTED] writes:
 

The attached patch cleans up src/port/dirmod.c::rmtree() a bit. It moves 
the filename finding portion into its own function, and in that function 
only scans the directory once instead of twice.
   

Applied, along with some further hacking to reduce the #ifdef clutter
by providing palloc substitute routines.  

Nice. It's actually readable now :-)
I checked it still works on
Unix, would you check I didn't break the Windows cases?
 

Yes, it works. Thanks.
andrew
---(end of broadcast)---
TIP 5: Have you checked our extensive FAQ?
  http://www.postgresql.org/docs/faqs/FAQ.html


Re: [PATCHES] transformExpr() refactor

2004-10-28 Thread Neil Conway
On Fri, 2004-10-29 at 00:17, Tom Lane wrote:
 I don't actually find this to be an improvement.  What's the point?
 Since all the switch arms are independent, you haven't really done
 anything at all to improve the comprehensibility of the code...

I think the code is more readable this way. The very fact that the
switch branches are completely independent is good enough reason to make
them distinct functions, IMHO. Breaking 900 lines of code into smaller
chunks of code, each of which does a single conceptual task, just makes
the whole enterprise easier to understand. As for sharing code between
the functions, I agree that isn't done today -- but it will be easier to
do in the future with this refactoring.

-Neil



---(end of broadcast)---
TIP 9: the planner will ignore your desire to choose an index scan if your
  joining column's datatypes do not match


[PATCHES] FAQ update

2004-10-28 Thread Robert Treat

added question on website development

-- 
Robert Treat
Build A Brighter Lamp :: Linux Apache {middleware} PostgreSQL
Index: FAQ.html
===
RCS file: /projects/cvsroot/pgsql/doc/src/FAQ/FAQ.html,v
retrieving revision 1.227
diff -c -r1.227 FAQ.html
*** FAQ.html	1 Sep 2004 03:28:15 -	1.227
--- FAQ.html	29 Oct 2004 01:08:42 -
***
*** 43,48 
--- 43,49 
  SMALLDBMS/SMALLs?BR
   A href=#1.151.15/A) How can I financially assist
  PostgreSQL?BR
+  A href=#1.161.16/A) I'd like to update the PostgreSQL website, what do I need to do?BR
   
  
  H2 align=centerUser Client Questions/H2
***
*** 503,508 
--- 504,512 
  it to our advocacy site at a href=http://advocacy.postgresql.org;
  http://advocacy.postgresql.org/a./P
  
+ H4A name=1.161.16/A) I'd like to update the PostgreSQL website, what do I need to do?/H4 
+ 
+ 	PPostgreSQL website development is discussed on the [EMAIL PROTECTED] mailing list. The is a project page where the source code is available at a href=http://gborg.postgresql.org/project/pgweb/projdisplay.php;http://gborg.postgresql.org/project/pgweb/projdisplay.php/a, the code for the next version of the website is under the portal module. You will also find code for the techdocs website if you would like to contribute to that. A temporary todo list for current website development issues is available at a href=http://xzilla.postgresql.org/todo;http://xzilla.postgresql.org/todo/a/P
  
  H2 align=centerUser Client Questions/H2
  

---(end of broadcast)---
TIP 8: explain analyze is your friend


[PATCHES] tablespace doc improvements

2004-10-28 Thread Neil Conway
This patch makes some minor cleanups to the tablespace documentation.

Already applied to CVS HEAD.

-Neil

# Old manifest: 3a905ee5b8008b064d2daf6941298493d17dcdf7
# New manifest: 582a4861bdb2a2cc7615093976423144ef717ca1
# Summary of changes:
# 
#   patch doc/src/sgml/manage-ag.sgml
#from 8de0e45b44425035fd807c9a112b7695e3ab5b28
#  to a741ff838aca1c16f220053919bcefcc1f37f554
# 
--- doc/src/sgml/manage-ag.sgml
+++ doc/src/sgml/manage-ag.sgml
@@ -347,21 +347,22 @@
/para
 
para
-By using tablespaces, a database administrator can control the disk
-layout of a productnamePostgreSQL/ installation. This is useful in
-at least two ways. Firstly, if the partition or volume on which the cluster
-was initialized runs out of space and cannot be extended logically
-or otherwise, a tablespace can be created on a different partition
-and used until the system can be reconfigured.
+By using tablespaces, an administrator can control the disk layout
+of a productnamePostgreSQL/ installation. This is useful in at
+least two ways. First, if the partition or volume on which the
+cluster was initialized runs out of space and cannot be extended,
+a tablespace can be created on a different partition and used
+until the system can be reconfigured.
/para
 
para
-Secondly, tablespaces allow a database administrator to arrange data
-locations based on the usage patterns of database objects. For
-example, an index which is very heavily used can be placed on very fast,
-highly available disk, such as an expensive solid state device. At the same
-time a table storing archived data which is rarely used or not performance
-critical could be stored on a less expensive, slower disk system.
+Second, tablespaces allow an administrator to use knowledge of the
+usage pattern of database objects to optimize performance. For
+example, an index which is very heavily used can be placed on a
+very fast, highly available disk, such as an expensive solid state
+device. At the same time a table storing archived data which is
+rarely used or not performance critical could be stored on a less
+expensive, slower disk system.
/para
 
para
@@ -377,14 +378,14 @@
/para
 
note
-   para
-There is usually not much point in making more than one
-tablespace per logical filesystem, since you can't control the location
-of individual files within a logical filesystem.  However,
-productnamePostgreSQL/ does not enforce any such limitation, and
-indeed it's not directly aware of the filesystem boundaries on your
-system.  It just stores files in the directories you tell it to use.
-   /para
+para
+ There is usually not much point in making more than one
+ tablespace per logical filesystem, since you cannot control the location
+ of individual files within a logical filesystem.  However,
+ productnamePostgreSQL/ does not enforce any such limitation, and
+ indeed it is not directly aware of the filesystem boundaries on your
+ system.  It just stores files in the directories you tell it to use.
+/para
/note
 
para
@@ -416,17 +416,17 @@
/para
 
para
-A schema does not in itself occupy any storage (other than a system
-catalog entry), so assigning a tablespace to a schema does not in itself
-do anything.  What this actually does is to set a default tablespace
-for tables later created within the schema.  If
+A schema does not in itself occupy any storage (other than a
+system catalog entry), so assigning a schema to a tablespace does
+not in itself do anything.  What this actually does is to set a
+default tablespace for tables later created within the schema.  If
 no tablespace is mentioned when creating a schema, it inherits its
 default tablespace from the current database.
/para
 
para
-The default choice of tablespace for an index is the same tablespace
-already assigned to the table the index is for.
+The default tablespace for an index is the tablespace associated
+with the table the index is on.
/para
 
para

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