Re: [HACKERS] HEADS UP: Win32/OS2/BeOS native ports

2002-06-03 Thread coventry

I think its already been determined that the cygwin option is too low
performing.

However, the apache stuff could be quite useful - but if that effort
were to be undertaken, it would make more sense to move all versions of the
code the
the apache runtime, for all platforms.  Are there any other runtime
libraries out there
that are cross platform, open/free and high performance?  I know the mozilla
XPCOM
libraries work quite nicely, but are geared more towards multithreaded
apps - and the
COM-alike infrastructure is something we wouldn't need.

~Jon

- Original Message -
From: Bruce Momjian [EMAIL PROTECTED]
To: mlw [EMAIL PROTECTED]
Cc: Tom Lane [EMAIL PROTECTED]; Marc G. Fournier [EMAIL PROTECTED];
[EMAIL PROTECTED]
Sent: Sunday, June 02, 2002 8:49 PM
Subject: Re: [HACKERS] HEADS UP: Win32/OS2/BeOS native ports


 mlw wrote:
  Like I told Marc, I don't care. You spec out what you want and I'll
write it
  for Windows.
 
  That being said, a SysV IPC interface for native Windows would be kind
of cool
  to have.

 I am wondering why we don't just use the Cygwin shm/sem code in our
 project, or maybe the Apache stuff; why bother reinventing the wheel.

 --
   Bruce Momjian|  http://candle.pha.pa.us
   [EMAIL PROTECTED]   |  (610) 853-3000
   +  If your life is a hard drive, |  830 Blythe Avenue
   +  Christ can be your backup.|  Drexel Hill, Pennsylvania 19026

 ---(end of broadcast)---
 TIP 3: 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



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



Re: [HACKERS] HEADS UP: Win32/OS2/BeOS native ports

2002-06-03 Thread Bruce Momjian


Yes, I am having trouble figuring out if I have seen the whole thread yet.

---

Marc G. Fournier wrote:
 
 You might want to go to the archives and catch up on the whole thread and
 its digressions :)
 
 On Sun, 2 Jun 2002, Bruce Momjian wrote:
 
  mlw wrote:
   Like I told Marc, I don't care. You spec out what you want and I'll write it
   for Windows.
  
   That being said, a SysV IPC interface for native Windows would be kind of cool
   to have.
 
  I am wondering why we don't just use the Cygwin shm/sem code in our
  project, or maybe the Apache stuff; why bother reinventing the wheel.
 
  --
Bruce Momjian|  http://candle.pha.pa.us
[EMAIL PROTECTED]   |  (610) 853-3000
+  If your life is a hard drive, |  830 Blythe Avenue
+  Christ can be your backup.|  Drexel Hill, Pennsylvania 19026
 
 
 

-- 
  Bruce Momjian|  http://candle.pha.pa.us
  [EMAIL PROTECTED]   |  (610) 853-3000
  +  If your life is a hard drive, |  830 Blythe Avenue
  +  Christ can be your backup.|  Drexel Hill, Pennsylvania 19026

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



Re: [HACKERS] non-standard escapes in string literals

2002-06-03 Thread Bruce Momjian

Andrew Pimlott wrote:
 On Wed, May 08, 2002 at 06:47:46PM +0200, Zeugswetter Andreas SB SD wrote:
  When we are talking about the places where you need double escaping 
  (once for parser, once for input function) to make it work, I would also 
  say that that is very cumbersome (not broken, since it is thus documented) :-) 
  I would also default to strict ANSI, but not depricate the escaping when set.
  All imho of course.
 
 As the original reporter of this issue, I am gratified to hear it
 acknowledged by the developers.  Thanks!  (I also apologize if I
 exaggerated the pain caused, as apparently not many other people
 have been bitten by this specific problem.  Well, it was painful for
 me. ;-) )
 
 I must say, though, that I remain bothered by the not broken
 attitude.  There is an obvious standard for PostgreSQL to follow,
 yet it is non-compliant in utterly trivial ways, which provide
 marginal or no benefits.  Granted, changing long-standing defaults
 may not be acceptible; but there is a big difference between, it is
 broken but we just can't change it for compatibility reasons, and,
 it is not broken.
 
 It is my experience that most other free software projects take
 standards compliance more seriously than PostgreSQL, and my strong
 opinion that both the project and its users (not to mention the
 whole SQL database industry, eventually) would benefit from better
 support for the SQL standard.
 
 Ok, I've said my peace.

Yes, these are good points.  Our big problem is that we use backslash
for two things, one for escaping single quotes and for escaping standard
C characters, like \n.  While we can use the standard-supported '' to
insert single quotes, what should we do with \n?  The problem is
switching to standard ANSI solution reduces our functionality.

-- 
  Bruce Momjian|  http://candle.pha.pa.us
  [EMAIL PROTECTED]   |  (610) 853-3000
  +  If your life is a hard drive, |  830 Blythe Avenue
  +  Christ can be your backup.|  Drexel Hill, Pennsylvania 19026

---(end of broadcast)---
TIP 3: 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: [HACKERS] non-standard escapes in string literals

2002-06-03 Thread Zeugswetter Andreas SB SD


On Mon, June 03 Bruce wrote:
  On Wed, May 08, 2002 at 06:47:46PM +0200, Zeugswetter SB SD Andreas wrote:
   When we are talking about the places where you need double escaping 
   (once for parser, once for input function) to make it work, I would also 
   say that that is very cumbersome (not broken, since it is thus documented) :-) 
   I would also default to strict ANSI, but not depricate the escaping when set.
   All imho of course.

 Yes, these are good points.  Our big problem is that we use backslash
 for two things, one for escaping single quotes and for escaping standard
 C characters, like \n.  While we can use the standard-supported '' to
 insert single quotes, what should we do with \n?  The problem is
 switching to standard ANSI solution reduces our functionality.

The problem imho is, that this (no doubt in many cases valuable)
feature reduces the functionality from the ANSI SQL perspective.
Consider a field that is supposed to store Windows filenames,
nam_file='C:\node1\resend\b.dat' :-)

Thus I think a GUC to turn off all escaping except '' would be valuable.

Andreas

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



Re: [HACKERS] HEADS UP: Win32/OS2/BeOS native ports

2002-06-03 Thread Marc G. Fournier


You might want to go to the archives and catch up on the whole thread and
its digressions :)

On Sun, 2 Jun 2002, Bruce Momjian wrote:

 mlw wrote:
  Like I told Marc, I don't care. You spec out what you want and I'll write it
  for Windows.
 
  That being said, a SysV IPC interface for native Windows would be kind of cool
  to have.

 I am wondering why we don't just use the Cygwin shm/sem code in our
 project, or maybe the Apache stuff; why bother reinventing the wheel.

 --
   Bruce Momjian|  http://candle.pha.pa.us
   [EMAIL PROTECTED]   |  (610) 853-3000
   +  If your life is a hard drive, |  830 Blythe Avenue
   +  Christ can be your backup.|  Drexel Hill, Pennsylvania 19026



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



Re: [HACKERS] HEADS UP: Win32/OS2/BeOS native ports

2002-06-03 Thread mlw

Bruce Momjian wrote:
 
 mlw wrote:
  Like I told Marc, I don't care. You spec out what you want and I'll write it
  for Windows.
 
  That being said, a SysV IPC interface for native Windows would be kind of cool
  to have.
 
 I am wondering why we don't just use the Cygwin shm/sem code in our
 project, or maybe the Apache stuff; why bother reinventing the wheel.

I have not been participating on the list, I don't know why I'm still receiving
mail.

but! in the course of testing some code, I managed to gain some experience with
cygwin. I have seen fork() problems with a large number of processes. 

For PostgreSQL to be as good on Windows as it is on UNIX, it has to be a native
program without cygwin. The shared memory and semaphore management should be
done with the postmaster process.

The apache stuff is OK, it is just as good as anything else. You may be able to
use critical sections in shared memory to implement a fast semaphore, but that
would take a bit experimentation.

I think what Tom had in mind is to take out the SysV and various OS specific
APIs and replace them with a more generic one, behind which, you guys can tune
the implementation.

---(end of broadcast)---
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]



Re: [HACKERS] HEADS UP: Win32/OS2/BeOS native ports

2002-06-03 Thread Jason Tishler

Bruce,

On Sun, Jun 02, 2002 at 08:49:21PM -0400, Bruce Momjian wrote:
 mlw wrote:
  Like I told Marc, I don't care. You spec out what you want and I'll write it
  for Windows. 
  
  That being said, a SysV IPC interface for native Windows would be kind of
  cool to have.
 
 I am wondering why we don't just use the Cygwin shm/sem code in our
 project, or maybe the Apache stuff; why bother reinventing the wheel.

Are you referring to cygipc above?  If so, they even one of the original
cygipc authors would discourage this:

http://sources.redhat.com/ml/cygwin-apps/2001-09/msg00017.html

Specifically, Ludovic Lange states the following:

 I really think the solution would be to start again from scratch
 another implementation, as was suggested. The way we did it was
 quick and dirty, the goals weren't to have production systems
 running on it but only to run prototypes. So the internal design
 (if there is any) may not be adequate for the cygwin project.

However, Rob Collins has contributed a MinGW daemon to Cygwin to support
switching users, System V IPC, etc.  So, this code base may be a more
suitable starting point to satisfy PostgreSQL's native Win32 System V
IPC needs.

Jason

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



Re: [HACKERS] HEADS UP: Win32/OS2/BeOS native ports

2002-06-03 Thread Jason Tishler

On Sun, Jun 02, 2002 at 09:33:57PM -0400, mlw wrote:
 Bruce Momjian wrote:
  mlw wrote:
   Like I told Marc, I don't care. You spec out what you want and I'll write
   it for Windows.
  
   That being said, a SysV IPC interface for native Windows would be kind of
   cool to have.
  
  I am wondering why we don't just use the Cygwin shm/sem code in our
  project, or maybe the Apache stuff; why bother reinventing the wheel.
 
 but! in the course of testing some code, I managed to gain some experience
 with cygwin. I have seen fork() problems with a large number of processes. 

Since Cygwin's fork() is implemented with WaitForMultipleObjects(),
it has a limitation of only 63 children per parent.  Also, there can
be DLL base address conflicts (causing Cygwin fork() to fail) that are
avoidable by rebasing the appropriate DLLs.  AFAICT, Cygwin PostgreSQL is
currently *not* affected by this issue where as other Cygwin applications
such as Python and Apache are.

Jason

---(end of broadcast)---
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]



Re: [HACKERS] HEADS UP: Win32/OS2/BeOS native ports

2002-06-03 Thread Jan Wieck

Jason Tishler wrote:
 On Sun, Jun 02, 2002 at 09:33:57PM -0400, mlw wrote:
  Bruce Momjian wrote:
   mlw wrote:
Like I told Marc, I don't care. You spec out what you want and I'll write
it for Windows.
   
That being said, a SysV IPC interface for native Windows would be kind of
cool to have.
  
   I am wondering why we don't just use the Cygwin shm/sem code in our
   project, or maybe the Apache stuff; why bother reinventing the wheel.
 
  but! in the course of testing some code, I managed to gain some experience
  with cygwin. I have seen fork() problems with a large number of processes.

 Since Cygwin's fork() is implemented with WaitForMultipleObjects(),
 it has a limitation of only 63 children per parent.  Also, there can
 be DLL base address conflicts (causing Cygwin fork() to fail) that are
 avoidable by rebasing the appropriate DLLs.  AFAICT, Cygwin PostgreSQL is
 currently *not* affected by this issue where as other Cygwin applications
 such as Python and Apache are.

Whatever  technical  problems there are, we can debate on and
on if it's worth working around them in PostgreSQL or  fixing
them in CygWIN or whatever.

The  main  problem  will  remain. That using PostgreSQL under
CygWIN requires  some  UNIX  know  how.  So  a  pure  Windows
user/shop  needs  UNIX knowledge to run our Windows port of
PostgreSQL? Interesting definition of port.


Jan

--

#==#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me.  #
#== [EMAIL PROTECTED] #



---(end of broadcast)---
TIP 3: 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: [HACKERS] HEADS UP: Win32/OS2/BeOS native ports - the 'BEST OPEN SOURCE database backend'

2002-06-03 Thread Robert Schrem

Hi,

You may want to have a look at: http://www.garret.ru/~knizhnik/
You find there code for a 'Fast synchronized access to shared 
memory for Windows and for i86 Unix-es.

kind regards,

Robert

 Bruce,

 On Sun, Jun 02, 2002 at 08:49:21PM -0400, Bruce Momjian wrote:
  mlw wrote:
   Like I told Marc, I don't care. You spec out what you want and I'll
   write it for Windows.
  
   That being said, a SysV IPC interface for native Windows would be kind
   of cool to have.
 
  I am wondering why we don't just use the Cygwin shm/sem code in our
  project, or maybe the Apache stuff; why bother reinventing the wheel.

 Are you referring to cygipc above?  If so, they even one of the original
 cygipc authors would discourage this:

 http://sources.redhat.com/ml/cygwin-apps/2001-09/msg00017.html

 Specifically, Ludovic Lange states the following:
  I really think the solution would be to start again from scratch
  another implementation, as was suggested. The way we did it was
  quick and dirty, the goals weren't to have production systems
  running on it but only to run prototypes. So the internal design
  (if there is any) may not be adequate for the cygwin project.

 However, Rob Collins has contributed a MinGW daemon to Cygwin to support
 switching users, System V IPC, etc.  So, this code base may be a more
 suitable starting point to satisfy PostgreSQL's native Win32 System V
 IPC needs.

 Jason

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


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



[HACKERS] GOODS - a sensational public domain database backend that deserves a SQL frontend

2002-06-03 Thread Robert Schrem

Hi,

Some of you might already know GOODS, programmed
almost entirely by Konstantin Knizhnik  - if not you should 
really have a look at it right now (be warned: consuming this 
extraordinary work might change your levels about the 
required quality of a 'good programmer' forever.  At least 
this happend to me... ;):
http://www.garret.ru/~knizhnik/goods.html

Some core features of this backend (as they come to my mind):
- full ACID transaction support
- distributed stoarge management (-distributed transactions)
- multible reader/single writer (is this called MVCC within PostgreSQL?)
- dual client side object cache
- online backup (snapshot backup AND permanent backup)
- nested transactions on object level
- transaction isolation levels on object level
- object level shared and exclusive locks
- excellent C++ programming interface
- WAL
- garbage collection for no longer reference database objects
- fully thread safe client interface
- JAVA client API
- very high performance as a result of a lot of fine tuning
- asyncrous event notification on object instance modification
- extremly high code quality
- a one person effort, hence a very clean design
- the most relevant platforms are supported out of the box
- complete build is done in less than a minute on my machine
- it's documented
...

The licensing of this coding wonder:  PUBLIC DOMAIN 

I'm  using GOODS quiet a while now in the context of my
development activities for a native XML database and have 
very promissing experiences concerning performance and 
stability of GOODS.  E.g.: The performance seems to be 
better than sleepycat's berkeley db library - especially 
with mutliple simultanous transactions...

Maybe the only restriction to use this backend in postgres 
from now on: it's completely C++ ...

I'm wondering why there is no SQL frontend yet for this
execellent backend...

You may want to look also at a comparision chart of some 
other backends than GOODS (some of them from the same 
author!!! I'm wondering how he was able to code all this...): 
http://www.garret.ru/~knizhnik/compare.html

kind regards,

Robert


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



Re: [HACKERS] HEADS UP: Win32/OS2/BeOS native ports

2002-06-03 Thread Jason Tishler

On Mon, Jun 03, 2002 at 09:36:51AM -0400, mlw wrote:
 Jason Tishler wrote:
  
  On Sun, Jun 02, 2002 at 09:33:57PM -0400, mlw wrote:
   Bruce Momjian wrote:
mlw wrote:
 Like I told Marc, I don't care. You spec out what you want and I'll
 write it for Windows.

 That being said, a SysV IPC interface for native Windows would be
 kind of cool to have.
   
I am wondering why we don't just use the Cygwin shm/sem code in our
project, or maybe the Apache stuff; why bother reinventing the wheel.
  
   but! in the course of testing some code, I managed to gain some experience
   with cygwin. I have seen fork() problems with a large number of processes.
  
  Since Cygwin's fork() is implemented with WaitForMultipleObjects(),
  it has a limitation of only 63 children per parent.  Also, there can
  be DLL base address conflicts (causing Cygwin fork() to fail) that are
  avoidable by rebasing the appropriate DLLs.  AFAICT, Cygwin PostgreSQL is
  currently *not* affected by this issue where as other Cygwin applications
  such as Python and Apache are.
 
 Why would not PostgreSQL be affected by this?

Sorry, if I was unclear -- I should have used two paragraphs above and
maybe a few more words... :,)

Cygwin PostgreSQL *is* affected by the Cygwin 63 children per parent
fork limitation.

PostgreSQL *can* be affected by the Cygwin DLL base address conflict
fork issue, but in my experience (both personal and by monitoring the
Cygwin and pgsql-cygwin lists), no one has been affected yet.  The DLL
base address conflict is a probability thing.  The more DLLs loaded
the greater the chance of a conflict (and fork() failing).  Since, Cygwin
PostgreSQL loads only a few DLLs, this has not become an issue (yet).

Jason

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



Re: [HACKERS] non-standard escapes in string literals

2002-06-03 Thread Lincoln Yeoh

At 01:20 PM 6/3/02 +0200, Zeugswetter Andreas SB SD wrote:
  for two things, one for escaping single quotes and for escaping standard
  C characters, like \n.  While we can use the standard-supported '' to
  insert single quotes, what should we do with \n?  The problem is
  switching to standard ANSI solution reduces our functionality.

The problem imho is, that this (no doubt in many cases valuable)
feature reduces the functionality from the ANSI SQL perspective.
Consider a field that is supposed to store Windows filenames,
nam_file='C:\node1\resend\b.dat' :-)

Thus I think a GUC to turn off all escaping except '' would be valuable.

With current behaviour 'C:\node1\resend\b.dat' can be quoted as 
'C:\\node1\\resend\\b.dat'

But for the ANSI standard how does one stuff \r\n\t and other control 
characters into the database?

If there's no way other than actually sending the control characters then 
that is a bad idea especially from a security viewpoint.

Cheerio,
Link.


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

http://www.postgresql.org/users-lounge/docs/faq.html



Re: [HACKERS] GOODS - a sensational public domain database backend

2002-06-03 Thread Oleg Bartunov

Kostya is a good qualified programmer. I know him and he is always open for
challenges. Some time ago, me and Teodor ask him about GiST support
in his another database (Gigabase). It was sort of challenge ( we wanted
to port our contrib/tsearch module ) and he did that (using libgist).
We work with gigabase database embedded into our application under
Windows (we had a lot of troubles with perforance of postgresql under
Cygwin:-) and quite happy.


On Mon, 3 Jun 2002, Robert Schrem wrote:

 Hi,

 Some of you might already know GOODS, programmed
 almost entirely by Konstantin Knizhnik  - if not you should
 really have a look at it right now (be warned: consuming this
 extraordinary work might change your levels about the
 required quality of a 'good programmer' forever.  At least
 this happend to me... ;):
 http://www.garret.ru/~knizhnik/goods.html

 Some core features of this backend (as they come to my mind):
 - full ACID transaction support
 - distributed stoarge management (-distributed transactions)
 - multible reader/single writer (is this called MVCC within PostgreSQL?)
 - dual client side object cache
 - online backup (snapshot backup AND permanent backup)
 - nested transactions on object level
 - transaction isolation levels on object level
 - object level shared and exclusive locks
 - excellent C++ programming interface
 - WAL
 - garbage collection for no longer reference database objects
 - fully thread safe client interface
 - JAVA client API
 - very high performance as a result of a lot of fine tuning
 - asyncrous event notification on object instance modification
 - extremly high code quality
 - a one person effort, hence a very clean design
 - the most relevant platforms are supported out of the box
 - complete build is done in less than a minute on my machine
 - it's documented
 ...

 The licensing of this coding wonder:  PUBLIC DOMAIN 

 I'm  using GOODS quiet a while now in the context of my
 development activities for a native XML database and have
 very promissing experiences concerning performance and
 stability of GOODS.  E.g.: The performance seems to be
 better than sleepycat's berkeley db library - especially
 with mutliple simultanous transactions...

 Maybe the only restriction to use this backend in postgres
 from now on: it's completely C++ ...

 I'm wondering why there is no SQL frontend yet for this
 execellent backend...

 You may want to look also at a comparision chart of some
 other backends than GOODS (some of them from the same
 author!!! I'm wondering how he was able to code all this...):
 http://www.garret.ru/~knizhnik/compare.html

 kind regards,

 Robert


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


Regards,
Oleg
_
Oleg Bartunov, sci.researcher, hostmaster of AstroNet,
Sternberg Astronomical Institute, Moscow University (Russia)
Internet: [EMAIL PROTECTED], http://www.sai.msu.su/~megera/
phone: +007(095)939-16-83, +007(095)939-23-83


---(end of broadcast)---
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]



[HACKERS] patch for contrib/intarray (7.2 and 7.3)

2002-06-03 Thread Oleg Bartunov

Please apply attached patch to contrib/intarray (7.2, 7.3).

 Fixed bug with '=' operator for gist__int_ops and
 define '=' operator for gist__intbig_ops opclass.
 Now '=' operator is consistent with standard 'array' type.
 br
 Tnanks Achilleus Mantzios for bug report and suggestion.


Regards,
Oleg
_
Oleg Bartunov, sci.researcher, hostmaster of AstroNet,
Sternberg Astronomical Institute, Moscow University (Russia)
Internet: [EMAIL PROTECTED], http://www.sai.msu.su/~megera/
phone: +007(095)939-16-83, +007(095)939-23-83



patch_intarray.gz
Description: Binary data


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



Re: [HACKERS] pgsql_data/base mapping

2002-06-03 Thread Bruce Momjian

Laurette Cisneros wrote:
 
 Are the numbers of the directories in the base diretory and the numbers of
 the directories under that, etc. traceable to a reference somewhere in the
 postgresql server using that data directory (such as the pg_database table
 or such)?  If so, is there somewhere this is documented?

You can use /contrib/oid2name to get the database names and table names
from the oid file numbers.

-- 
  Bruce Momjian|  http://candle.pha.pa.us
  [EMAIL PROTECTED]   |  (610) 853-3000
  +  If your life is a hard drive, |  830 Blythe Avenue
  +  Christ can be your backup.|  Drexel Hill, Pennsylvania 19026

---(end of broadcast)---
TIP 3: 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: [HACKERS] code contribution

2002-06-03 Thread Bruce Momjian


Sorry, I am just getting to this.  I have the patch in my email box too.

Can you explain what buffer of line is?  I want to know if it is of
general usefulness.

---

Alex Shevlakov wrote:
 New 'path' functions (test results can be found at 
http://motivation.ru/grass/buff_q_example.html):
 
 There are not many (as my task was only limited to extending GRASS vector
 capabilities to buffering):
 
 /*check if a point is within buffer of line*/
 Datum   path_buffer_contain_pt(PG_FUNCTION_ARGS);
 
 /*removes multiple repeated points from path*/ 
 Datum path_without_doubles (PG_FUNCTION_ARGS);
 static  PATH *  path_no_dbles(PATH *path);
 
 /*returns closed path which is buffer to another path*/
 Datum   return_path_buffer(PG_FUNCTION_ARGS);
 
 /*used to insert points along circle segment between two ends of non-intersecting 
buffer segments, smoothing the buffer*/
 static Point * point_rotate (Point *lpoint, Point *ax_point, float ang,
 int k, int n, int napr);
 
 /*writes path to arcinfo UNGENERATE format which is particularly useful for viewing 
buffer in GRASS*/
 Datum write_path_to_file(PG_FUNCTION_ARGS);
 int write_path_to_file_internal(PATH *path, char *str );
 
 /*generalize path,i.e., leave each third, or fourth, etc., point*/
 Datum reduce_path_points(PG_FUNCTION_ARGS);
 static PATH *path_reduce(PATH * path, int n_reduce);
 
 On Tue, May 07, 2002 at 07:01:05AM -0700, Thomas Lockhart wrote:
   I'd like to contribute new code for Postgres geometry type 'path' operations
   (including line buffer). Where should I send this?
  
  Send to [EMAIL PROTECTED] It may be helpful to (i.e. please
  do) post a summary of what you are intending to send to this mailing
  list so folks have an idea of what is coming...
  
  Regards.
  
  - Tom
 
 ---(end of broadcast)---
 TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]
 

-- 
  Bruce Momjian|  http://candle.pha.pa.us
  [EMAIL PROTECTED]   |  (610) 853-3000
  +  If your life is a hard drive, |  830 Blythe Avenue
  +  Christ can be your backup.|  Drexel Hill, Pennsylvania 19026

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

http://www.postgresql.org/users-lounge/docs/faq.html



Re: [HACKERS] HEADS UP: Win32/OS2/BeOS native ports

2002-06-03 Thread Igor Kovalenko

That's what Apache does. Note, on most platforms MAP_ANON is equivalent to
mmmap-ing /dev/zero. Solaris for example does not provide MAP_ANON but using

fd=open(/dev/zero)
mmap(fd, ...)
close(fd)

works just fine.

- Original Message -
From: Bruce Momjian [EMAIL PROTECTED]
To: Igor Kovalenko [EMAIL PROTECTED]
Cc: Tom Lane [EMAIL PROTECTED]; mlw [EMAIL PROTECTED]; Marc G.
Fournier [EMAIL PROTECTED]; [EMAIL PROTECTED]
Sent: Sunday, June 02, 2002 7:47 PM
Subject: Re: [HACKERS] HEADS UP: Win32/OS2/BeOS native ports


 Igor Kovalenko wrote:
  It does not have to be anonymous. POSIX also defines shm_open(same
arguments
  as open) API which will create named object in whatever location
corresponds
  to shared memory storage on that platform (object is then grown to
needed
  size by ftruncate() and the fd is then passed to mmap). The object will
  exist in name space and can be detected by subsequent calls to
shm_open()
  with same name. It is not really different from doing open(), but more
  portable (mmap() on regular files may not be supported).

 Actually, I think the best shared memory implemention would be
 MAP_ANON | MAP_SHARED mmap(), which could be called from the postmaster
 and passed to child processes.

 While all our platforms have mmap(), many don't have MAP_ANON, but those
 that do could use it.  You need MAP_ANON to prevent the shared memory
 from being written to a disk file.

 --
   Bruce Momjian|  http://candle.pha.pa.us
   [EMAIL PROTECTED]   |  (610) 853-3000
   +  If your life is a hard drive, |  830 Blythe Avenue
   +  Christ can be your backup.|  Drexel Hill, Pennsylvania 19026



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



Re: [HACKERS] Search from newer tuples first, vs older tuples first?

2002-06-03 Thread Tom Lane

Bruce Momjian [EMAIL PROTECTED] writes:
 It is not that hard to implement, just messy.  When the index returns a
 heap row and the heap row is viewed for visibility, if _no_one_ can see
 the row, the index can be marked as expired.  It could be a single bit
 in the index tuple, and doesn't need to be flushed to disk, though the
 index page has to be marked as dirty.  However, we are going to need to
 flush a pre-change image to WAL so it may as well be handled as a normal
 index page change.

This did actually get done while you were on vacation.  It does *not*
need a WAL entry, on the same principle that setting XMIN_COMMITTED,
XMAX_ABORTED, etc hint bits do not need WAL entries --- namely the
bits can always get set again if they are lost in a crash.

regards, tom lane

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

http://archives.postgresql.org



Re: [HACKERS] Search from newer tuples first, vs older tuples first?

2002-06-03 Thread Bruce Momjian

Tom Lane wrote:
 Bruce Momjian [EMAIL PROTECTED] writes:
  It is not that hard to implement, just messy.  When the index returns a
  heap row and the heap row is viewed for visibility, if _no_one_ can see
  the row, the index can be marked as expired.  It could be a single bit
  in the index tuple, and doesn't need to be flushed to disk, though the
  index page has to be marked as dirty.  However, we are going to need to
  flush a pre-change image to WAL so it may as well be handled as a normal
  index page change.
 
 This did actually get done while you were on vacation.  It does *not*
 need a WAL entry, on the same principle that setting XMIN_COMMITTED,
 XMAX_ABORTED, etc hint bits do not need WAL entries --- namely the
 bits can always get set again if they are lost in a crash.

Oh, thanks.  That is great news.  I am having trouble determining when a
thread ends so please be patient with me.

-- 
  Bruce Momjian|  http://candle.pha.pa.us
  [EMAIL PROTECTED]   |  (610) 853-3000
  +  If your life is a hard drive, |  830 Blythe Avenue
  +  Christ can be your backup.|  Drexel Hill, Pennsylvania 19026

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



Re: [HACKERS] Search from newer tuples first, vs older tuples first?

2002-06-03 Thread Bruce Momjian

Tom Lane wrote:
 Bruce Momjian [EMAIL PROTECTED] writes:
  It is not that hard to implement, just messy.  When the index returns a
  heap row and the heap row is viewed for visibility, if _no_one_ can see
  the row, the index can be marked as expired.  It could be a single bit
  in the index tuple, and doesn't need to be flushed to disk, though the
  index page has to be marked as dirty.  However, we are going to need to
  flush a pre-change image to WAL so it may as well be handled as a normal
  index page change.
 
 This did actually get done while you were on vacation.  It does *not*
 need a WAL entry, on the same principle that setting XMIN_COMMITTED,
 XMAX_ABORTED, etc hint bits do not need WAL entries --- namely the
 bits can always get set again if they are lost in a crash.

TODO item marked as done:

* -Add deleted bit to index tuples to reduce heap access

-- 
  Bruce Momjian|  http://candle.pha.pa.us
  [EMAIL PROTECTED]   |  (610) 853-3000
  +  If your life is a hard drive, |  830 Blythe Avenue
  +  Christ can be your backup.|  Drexel Hill, Pennsylvania 19026

---(end of broadcast)---
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]



Re: [HACKERS] Cygwin / Debian dpkg / PostgreSQL / KDE2 and 3

2002-06-03 Thread Bruce Momjian

Jean-Michel POURE wrote:
 - creating a PostgreSQL + Cygwin modern GUI installer. All required .DEB 
 packages would be downloaded and installed from Debian mirrors, with little 
 user intervention. PostgreSQL would be installed as a service.
 
 - a cross-platform GUI environment for (future) pgAdmin. Please note I am not 
 dealing with pgAdmin future. Dave Page thinks Mono is the solution. I don't 
 agree and think we should use Cygwin-KDE or native Windows libraries.

This may be a stupid question, but could the new Mozilla be used as a
cross-platform GUI?  Seems like a natural because it is supposed to be
more of a platform with a browser built on top.

-- 
  Bruce Momjian|  http://candle.pha.pa.us
  [EMAIL PROTECTED]   |  (610) 853-3000
  +  If your life is a hard drive, |  830 Blythe Avenue
  +  Christ can be your backup.|  Drexel Hill, Pennsylvania 19026

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

http://www.postgresql.org/users-lounge/docs/faq.html