[HACKERS] Synchronization Primitives

2008-11-13 Thread [EMAIL PROTECTED]
Hi all:

  I am a fresh men in PostgreSQL. And i work on benchmark study these
days using PostgreSQL.

Now i have a question: Is there some way to show the lock contention of
PostgreSQL?

As I know, you can use *show mutex status*  in MySQL to find which mutex is
hot. But i don't know in

PostgreSQL.

Any ideas?

 Thanks!


[HACKERS] Oprofile with postgresql

2008-08-08 Thread [EMAIL PROTECTED]
Hi all:

  Recently i do a test of postgresql. To get more information of the
functions in PostgreSQL, i use

opgprof and opannotate, which are two tools in Oprofile. But i can't work
with the tools correctly.

PostgreSQL is compiled with -g option and the errors are like this:

 opgprof error: parse_filename() invalid filename:
/var/lib/oprofile/samples/current/{root}/var/lib/oprofile/samples/current/{root}/home/ubuntu/tpcc-uva/bin/tm/{dep}/{anon:[vdso]}/7208.0x7fff7a972000.0x7fff7a974000/CPU_CLK_UNHALTED.9.0.all.all.all/{dep}/{root}/var/lib/oprofile/samples/current/{root}/home/ubuntu/tpcc-uva/bin/tm/{dep}/{anon:[vdso]}/7208.0x7fff7a972000.0x7fff7a974000/CPU_CLK_UNHALTED.9.0.all.all.all/{cg}/{root}/usr/bin/oprofiled/CPU_CLK_UNHALTED.9.0.all.all.all

and opannotate

warning: [heap] (tgid:7302 range:0x8e7000-0xa18000) could not be found.
warning: [vdso] (tgid:7295 range:0x7fff3ddfe000-0x7fff3de0) could not be
found.
warning: [vdso] (tgid:7296 range:0x7fff3ddfe000-0x7fff3de0) could not be
found.
warning: [vdso] (tgid:7297 range:0x7fff3ddfe000-0x7fff3de0) could not be
found.
warning: [vdso] (tgid:7298 range:0x7fff3ddfe000-0x7fff3de0) could not be
found.
warning: [vdso] (tgid:7299 range:0x7fff3ddfe000-0x7fff3de0) could not be
found.
warning: [vdso] (tgid:7300 range:0x7fff3ddfe000-0x7fff3de0) could not be
found.
warning: [vdso] (tgid:7301 range:0x7fff3ddfe000-0x7fff3de0) could not be
found.
warning: [vdso] (tgid:7302 range:0x7fff3ddfe000-0x7fff3de0) could not be
found.
opannotate (warning): unable to open for reading: aset.c
opannotate (warning): unable to open for reading: heaptuple.c
opannotate (warning): unable to open for reading: bufmgr.c
opannotate (warning): unable to open for reading: execQual.c
opannotate (warning): unable to open for reading: list.c
opannotate (warning): unable to open for reading: nbtree.c
opannotate (warning): unable to open for reading: fmgr.c
opannotate (warning): unable to open for reading: catcache.c
opannotate (warning): unable to open for reading: nodeIndexscan.c
opannotate (warning): unable to open for reading: clauses.c
opannotate (warning): unable to open for reading: ri_triggers.c
opannotate (warning): unable to open for reading: lock.c
opannotate (warning): unable to open for reading: planner.c
opannotate (warning): unable to open for reading: selfuncs.c
opannotate (warning): unable to open for reading: postgres.c
opannotate (warning): unable to open for reading: trigger.c
...


if i want to use the two tools on PostgreSQL , what should i do?


Best wishes

  Yyan


Re: [HACKERS] Script binaries renaming

2008-03-26 Thread k Kotala [EMAIL PROTECTED]

Bruce Momjian napsal(a):

Where are we on this?  Tom thinks we don't want this.  TODO has:


I plan to send survey on general list about it today.

Zdenek

--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


[HACKERS] Pl/Java broken since Postgresql 8.3-rc1

2008-01-14 Thread [EMAIL PROTECTED]
Hi there,
as you now is plJava broken with the actual security releases.
There is a pljava.dll at http://www.ejurka.com/pgsql/pljava/83rc1/ to
fix it for version 8.3RC1.

Is a pljava.dll for version 8.2.6 out?
It's very important for me, need it for my office.

Juergen



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


[HACKERS] data access automatic filter

2007-11-09 Thread [EMAIL PROTECTED]
Hi,

I'm evaluating the option of write a PG-extension which allow the 
application to apply some per-connection filters. This filters work at 
table level and remove records which aren't allowed from a select 
result-set.

Example: 
CREATE CONNECTION DATA FILTER my_filter CHECKING my_table.my_field=5;

A SELECT * FROM my_table will only return all the rows with 
field=5

Could someone tell me which is the PG source files which I could 
change?

TIA


Tiscali Tandem Free (Telefono+Adsl). Attiva entro il giorno 15/11/07: chiami in 
tutta Italia e navighi senza limiti a SOLI 9,95 € AL MESE FINO A PRIMAVERA 2008!
http://abbonati.tiscali.it/adsl/prodotti/tc/tandemfree_tel_cc/


---(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


[HACKERS] status of PlPython

2007-05-29 Thread [EMAIL PROTECTED]
I wonder if I should use PlPython in my projects or not.
Browsing on the Python list it seems that nobody is using
it. Browsing on Google Groups I find worrysome threads talking
about removing support from it in future versions of PostgreSQL.
So, I would like to know what's the current status of PlPython.
Assuming it is in good health, I would like to know how people
are using it, how do you keep your code in subversion, how do
you debug it, what are the pitfalls, etc. What sources of
information are out there, apart from the postgres manual?
TIA,

  Michele Simionato


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


[HACKERS] return varchar from C function

2007-02-18 Thread [EMAIL PROTECTED]
Hi, 
just for fun, I wrote a little postgresql contrib,
who has a C function called myfun inside it.
The function myfun returns a value , now I return
a cstring type value, and it works fine if 
I run from psql shell:

select value from myfun(paramteres);

but I can't do an insert like:

insert (charfield) select value from myfun(paramteres); 

becuse I have an error, exactly casting error.

I want that myfun returns a char,varchar, or text type.

Where I can find more documentation about differences between
cstring,char,text etc...? 

Regards,
Enrico

  

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

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


[HACKERS] Problem in buidind Postgres with mingw

2006-11-14 Thread [EMAIL PROTECTED]
Hello
we've some trouble with buildinq postgreSQL (8.1.4.tar.gz) from code with Mingw 
on a windows xp home machine.
We've  installed mingw 5.0.3 and msys 1.0.10.
From the msys console we've typed the following command:
$ LDFLAGS=-lstdc++ configure --without-zlib
and that's seems ok.
then we do:
$make
the outcome is the following:

Paolo [EMAIL PROTECTED] /d/msys/1.0/home/src/postgresql-8.1.4
$ make
make -C doc all
make[1]: Entering directory `/d/msys/1.0/home/src/postgresql-8.1.4/doc'
gzip -d -c man.tar.gz | /bin/tar xf -
for file in man1/*.1; do \
  mv $file $file.bak  \
  sed -e 's/\\fR(l)/\\fR(7)/' $file.bak $file  \
  rm -f $file.bak || exit; \
done
/bin/sh.exe ../config/mkinstalldirs man7
mkdir -p -- man7
for file in manl/*.l; do \
  sed -e '/^\.TH/s/l/7/'   \
  -e 's/\\fR(l)/\\fR(7)/' \
  $file man7/`basename $file | sed 's/.l$/.7/'` || exit; \
done
make[1]: Leaving directory `/d/msys/1.0/home/src/postgresql-8.1.4/doc'
make -C src all
make[1]: Entering directory `/d/msys/1.0/home/src/postgresql-8.1.4/src'
make -C port all
make[2]: Entering directory `/d/msys/1.0/home/src/postgresql-8.1.4/src/port'
gcc -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Winline -Wdeclaration-after-
statement -Wendif-labels -fno-strict-aliasing -I../../src/port -DFRONTEND -I../.
./src/include -I./src/include/port/win32 -DEXEC_BACKEND  -I../../src/include/po
rt/win32  -c -o crypt.o crypt.c
gcc -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Winline -Wdeclaration-after-
statement -Wendif-labels -fno-strict-aliasing -I../../src/port -DFRONTEND -I../.
./src/include -I./src/include/port/win32 -DEXEC_BACKEND  -I../../src/include/po
rt/win32  -c -o fseeko.o fseeko.c
gcc -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Winline -Wdeclaration-after-
statement -Wendif-labels -fno-strict-aliasing -I../../src/port -DFRONTEND -I../.
./src/include -I./src/include/port/win32 -DEXEC_BACKEND  -I../../src/include/po
rt/win32  -c -o getrusage.o getrusage.c
In file included from ../../src/include/rusagestub.h:17,
 from getrusage.c:18:
d:/MinGW/bin/../lib/gcc/mingw32/3.4.2/../../../../include/sys/time.h:27: error:
redefinition of `struct timezone'
d:/MinGW/bin/../lib/gcc/mingw32/3.4.2/../../../../include/sys/time.h:40: error:
conflicting types for 'gettimeofday'
../../src/include/port.h:266: error: previous declaration of 'gettimeofday' was
here
d:/MinGW/bin/../lib/gcc/mingw32/3.4.2/../../../../include/sys/time.h:40: error:
conflicting types for 'gettimeofday'
../../src/include/port.h:266: error: previous declaration of 'gettimeofday' was
here
make[2]: *** [getrusage.o] Error 1
make[2]: Leaving directory `/d/msys/1.0/home/src/postgresql-8.1.4/src/port'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/d/msys/1.0/home/src/postgresql-8.1.4/src'
make: *** [all] Error 2


Please can somebody help us?
Claudio.
Maurizio.
Paolo.


--
Chi punta sull’inglese naturale Wall Street Institute, vince un English Box! 
Scopri come ritirare i tuoi premi, clicca qui!
http://click.libero.it/wallstreet14nov



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


Re: [HACKERS] hstore isexists

2006-10-11 Thread [EMAIL PROTECTED]






 'exists' isn't a good name for function :(.
 

 Yeah, that isn't going to work.  Perhaps ifexists?  Or just leave well
 enough alone.


   

Darn. Can't have been thinking clearly this morning.

How about exist (no s)?





Maybe 'found', 'present', or 'contains'? (no, I haven't checked for a grammar conflict)

 -- Korry







Re: [HACKERS] find the template of a database in SQL

2006-08-18 Thread [EMAIL PROTECTED]






 When I have a table that I don't know if it inherits from template 1,
 how can I find the 'super' ?
I do not believe that tables have templates in 7.4 unless you specifically
use a query like:

create table foo as select * from bar;




I think Walter wants to know if a given table was defined in the current database, or if it was created from the template database (template0 or template1) when the database was created.

I don't think you can tell. When you create a new database from a template (typically template1), you're just making a copy of that template. It's not really inheritance (meaning that a change to the table definition in the template won't affect any databases cloned from that template).

To find out where the table came from, you'd have to know which template your current database was cloned from and I don't think we store that info anywhere.

 -- Korry






--
 Korry Douglas [EMAIL PROTECTED]
 EnterpriseDB http://www.enterprisedb.com







Re: [HACKERS] [PATCHES] PL instrumentation plugin and Rendezvous variable

2006-08-15 Thread [EMAIL PROTECTED]






Applied with a few small changes --- I renamed the GUC variables after a
suggestion by Simon Riggs, and fixed things so that
backend_load_libraries could actually do something useful (you had it as
PGC_POSTMASTER, making it effectively no more flexible than the existing
preload_libraries list).



'Doh! That was a cut/paste error on my part. Thanks.



The only change that will directly impact your code is that I thought
it'd be better to provide plpgsql_exec_error_callback and
exec_assign_expr as separate fields instead of arguments to func_setup,
viz

	if (*plugin_ptr)
	{
		(*plugin_ptr)-error_callback = plpgsql_exec_error_callback;
		(*plugin_ptr)-assign_expr = exec_assign_expr;

		if ((*plugin_ptr)-func_setup)
			((*plugin_ptr)-func_setup)(estate, func);
	}

I'm not totally wedded to this if you don't like it, but my thought was
that passing these as arguments to func_setup would mean a lot of pain
anytime we wanted to change the set of function pointers provided:
every plugin would need textual changes whether it actually used these
functions or not.



Good idea, those two function pointers are sort of necessary-evil required only by the debugger plugin (other plugins presumably won't need them).



 I have not implemented any support for unloading shared libraries.  Once
 we've finalized the design for rendezvous variables, I'll submit a
 separate documentation patch.

I added docs for the GUC variables but didn't do more than that.  I
think the code comments are probably sufficient as far as rendezvous
variables and PLpgSQL_plugin go ... did you have something else in mind?



I'll look around the existing documentation to see if I can find an appropriate place, but we don't really have an implementor's guide.

Thanks for your help and suggestions.

 -- Korry





--
 Korry Douglas [EMAIL PROTECTED]
 EnterpriseDB http://www.enterprisedb.com







Re: [HACKERS] Plugins redux (was Re: [PATCHES] PL instrumentation plugin

2006-08-10 Thread [EMAIL PROTECTED]







As for forcing the library load to occur, I propose a new GUC variable
backend_load_libraries that is much like the postmaster's
preload_libraries, except that the requested library loads happen
at backend start time instead of in the postmaster.  Then we need
write and document the code only once, and there are other possible
uses for it besides PL plugins.



Any thoughts about where to put the call to process_backend_libraries() (the new function to handle backend_load_libraries)?

I'm thinking that it should go in PostgresMain(), just after (before?) the call to BeginReportingGUCOptions() - by that time, we know whether we are a superuser and we have processed all GUC options.

Also, should we create an on_proc_exit() handler that would unload all dynamic libraries (specifically to call the _PG_fini() functions)? 

 -- Korry





--
 Korry Douglas [EMAIL PROTECTED]
 EnterpriseDB http://www.enterprisedb.com







Re: [HACKERS] Plugins redux (was Re: [PATCHES] PL instrumentation

2006-08-10 Thread [EMAIL PROTECTED]






 Also, should we create an on_proc_exit() handler that would unload all
 dynamic libraries (specifically to call the _PG_fini() functions)? 

Yeah, I thought about that too, but I'm inclined not to do it;
it seems like just excess cycles.  The process is quitting anyway,
so the only reason this would be useful is if the library thinks it's
going to update external or shared state during _PG_fini ... and on
the whole that sounds like a bad idea.  Besides, if a library really
needs this it can add its own on_proc_exit handler.



It seems a little dangerous for a dynamic library to register an on_proc_exit() handler. If we ever add support for unloading a dynamic library, we'll have to add an unregister_on_proc_exit() too. Otherwise, a dynamic library might register a function pointer with on_proc_exit() and then leave a dangling pointer when it gets unloaded.

Given that, I assume you don't feel the need to unload old shared libraries if the user (a superuser) removes an entry from backend_load_libraries, right?

In fact, it looks _PG_fini() is only called if you *reload* a library, unless I'm missing something somwhere.





--
 Korry Douglas [EMAIL PROTECTED]
 EnterpriseDB http://www.enterprisedb.com







Re: [HACKERS] 8.2 features status

2006-08-09 Thread [EMAIL PROTECTED]






 There's a LOT of unnecessary overhead in that process: having a  
 simple web app that lists who claimed what todo and when, any  
 status updates if they've voluntarily provided them, and links to  
 archive discussions, we could reduce the above to a 3-step process  
 making it vastly easier for new hackers to get started.

A developers' wiki with links into the list archives would be great.



My thoughts exactly...





--
 Korry Douglas [EMAIL PROTECTED]
 EnterpriseDB http://www.enterprisedb.com







Re: [HACKERS] proposal for PL packages for 8.3.

2006-08-09 Thread [EMAIL PROTECTED]






 Well, it would be nice to have some clarification about the expected
 scope and lifetimes of these variables. If two different sessions
 change the values, what's supposed to happen?

Right, I am confused whether these are session or schema-local
variables.  What does Oracle support?  Looking at this:

	http://thinkoracle.blogspot.com/2005/10/oracle-packages.html

it seems varaiable are per-session.



Package variables are per-session. 

Don't forget package initializers too...





--
 Korry Douglas [EMAIL PROTECTED]
 EnterpriseDB http://www.enterprisedb.com







Re: [HACKERS] Plugins redux (was Re: [PATCHES] PL instrumentation plugin

2006-08-09 Thread [EMAIL PROTECTED]
, so that plugins could be switched
intra-session without superuser privileges.)



How about a combination of plan A and plan B? Make backend_load_libraries a USERSET variable, but you can't *add* libraries outside of $libdir/plugins/ unless you are a superuser.



BTW, is anyone up for renaming the existing preload_libraries variable
to postmaster_load_libraries?  This would be more symmetrical with
backend_load_libraries, and so perhaps clearer about which does what



Makes sense to me, of course that breaks existing postgresql.conf files.

Do you want me to do any of this coding?





--
 Korry Douglas [EMAIL PROTECTED]
 EnterpriseDB http://www.enterprisedb.com







Re: [HACKERS] Plugins redux (was Re: [PATCHES] PL instrumentation

2006-08-09 Thread [EMAIL PROTECTED]






I'm not sure you'll be able to convince everyone that the penalty is so
negligible --- any high-rate access to shared memory is potentially very
expensive, see nearby threads for examples.  Even if this is affordable
for the debugger, what of more-invasive plugins such as the performance
monitor?  I think a credible general-purpose plugin design has to
address the problem of enabling plugins on-the-fly.



I have no problem with your solution - I think its a very nice design.




 I don't think it could crash because there's no way to unload a plugin
 (there is no UNLOAD statement, is there?).

What we actually have at the moment is that you can LOAD a library
again, which causes an unload of the prior version and then loading the
new.  I suppose this feature was intended to speed library development by
letting you recompile and then update into your existing backend session.
Not sure how many people are using it, but it's there ...



Right, but you still end up with a plugin loaded afterwards so no crash (of course you could do something stupid like load a new plugin with the same name that isn't really a plugin).



 Which reminds me, you haven't proposed a way to unload a shared-library.

This depends on the semantics we want to assign to
backend_shared_libraries --- I could imagine defining it as if you
remove an entry from the value then we'll unload that library.



That's what I was thinking too.



 How about a combination of plan A and plan B?  Make
 backend_load_libraries a USERSET variable, but you can't *add* libraries
 outside of $libdir/plugins/ unless you are a superuser.

Not sure how easy that is (ie, can we track which part of the list came
from where), but if doable it'd be OK with me.  We might have to split
it into two list variables to make it work, and I'm not sure it's worth
the complication.



The GUC assign hook would parse through backend_load_libraries... 

for each library, 
{
 if ( the library is already loaded )
 {
 // it's not a new library, doesn't matter where it lives, doesn't matter if we're a superuser

 load( library) 
 }
 else
 {
 // it's a new entry in backed_load_libraries
 
 if( library lives in $libdir/plugins )
 load( library )
 else
 {
 if( is_superuser())
 load( library )
 else
 throw an error
 }
 }
}



We already broke them by removing the init-function name...



Right...



 Do you want me to do any of this coding?

Up to you --- I can do it if you don't want to.



I'll take a stab at it... thanks for your help so far.

 -- Korry






--
 Korry Douglas [EMAIL PROTECTED]
 EnterpriseDB http://www.enterprisedb.com







Re: [HACKERS] [PATCHES] PL instrumentation plugin support (i.e. PL/pgSQL

2006-08-08 Thread [EMAIL PROTECTED]







In view of the other patch submitted to support init/fini functions for
shared libraries, I'm inclined to change this one to depend on that;
in particular it seems like we could eliminate the necessity for users
to specify the correct setup-function names.  Thoughts?





I think that would be great. Can you point me to the patch you're referring to? I can convert my patch if you prefer.

 -- Korry





--
 Korry Douglas [EMAIL PROTECTED]
 EnterpriseDB http://www.enterprisedb.com







Re: [HACKERS] pg_terminate_backend

2006-08-03 Thread [EMAIL PROTECTED]







I am not sure how you prove the non-existance of a bug.  Ideas?





I do that by deleting all of my code (usually by accident :-)

No code, no bugs!

 -- Korry











Re: [HACKERS] Possible explanation for Win32 stats regression test

2006-07-29 Thread [EMAIL PROTECTED]






Is anyone working on this?

Tom Lane wrote:
 korry [EMAIL PROTECTED] writes:
  The problem is that, each time you go through
  pgwin32_waitforsinglesocket(), you tie the *same* kernel object
  (waitevent is static) to each socket.
 
  The fix is pretty simple - just call WSAEventSelect( s, waitevent, 0 )
  after WaitForMultipleObjectsEx() returns.  That disassociates the socket
  from the Event (it will get re-associated the next time
  pgwin32_waitforsingleselect() is called.  
 
 Hmm.  Presumably we don't do this a whole lot (use multiple sockets) or
 we'd have noticed before.  Perhaps better would be to keep an additional
 static variable saying which socket the event is currently associated
 to, and only issue the extra WSAEventSelect calls if we need to change
 it.  Or is WSAEventSelect fast enough that it doesn't matter?
 



Here's a simple patch that fixes the problem (I haven't explored the performance of this patch compared to Tom's suggestion).

 -- Korry


Index: src/backend/port/win32/socket.c
===
RCS file: /projects/cvsroot/pgsql/src/backend/port/win32/socket.c,v
retrieving revision 1.11
diff -w -c -r1.11 socket.c
*** src/backend/port/win32/socket.c	5 Mar 2006 15:58:35 -	1.11
--- src/backend/port/win32/socket.c	29 Jul 2006 12:13:19 -
***
*** 132,137 
--- 132,154 
  	events[1] = waitevent;
  	r = WaitForMultipleObjectsEx(2, events, FALSE, INFINITE, TRUE);
  
+ 
+ 	/*
+ 	 * NOTE: we must disassociate this socket from waitevent - if we don't, then 
+ 	 *   we may accidentally fire waitevent at some point in the future if,
+ 	 *		 for example, the socket is closed.  That normally would not be a 
+ 	 *		 problem, but if you ever have two (or more) sockets in a single 
+ 	 *		 backend, they *ALL* share the same waitevent. So, if you pass through
+ 	 *		 this function for socket1 and socket2, a close on EITHER socket will
+ 	 *		 trigger an FD_CLOSE event, regardless of whether you're waiting for
+ 	 *		 socket1 or socket2.  That means that if you are waiting for socket1
+ 	 *		 and socket2 gets some interesting traffic (an FD_CLOSE or FD_READ
+ 	 *		 event for example), the above call to WaitForMultipleObjectsEx() 
+ 	 *		 will return even though nothing actually happened to socket1. Nasty...
+ 	 */
+ 
+ 	WSAEventSelect(s, waitevent, 0 );
+ 
  	if (r == WAIT_OBJECT_0 || r == WAIT_IO_COMPLETION)
  	{
  		pgwin32_dispatch_queued_signals();

---(end of broadcast)---
TIP 5: don't forget to increase your free space map settings


Re: [PATCHES] [HACKERS] Possible explanation for Win32 stats

2006-07-29 Thread [EMAIL PROTECTED]






heh. I was just doing it the way Tom suggested - see attached. With a 
little more trouble we could also keep track if the listened for events 
and sometimes save ourselves a second call to WSAEventSelect, but I'm 
not sure it's worth it.




It all depends on the overhead of WSAEventSelect(). I'm sure your version would run faster, but I just don't know if slower would be measurable.


BTW: I would suggest changing your comment to:

 /*
 * make sure we don't multiplex this kernel event object with a different socket 
 * from a previous call
 */

Thanks for tackling this problem too.

 -- Korry






 Korry Douglas [EMAIL PROTECTED]
 EnterpriseDB http://www.enterprisedb.com








Re: [HACKERS] how can i get the binary format of timestamp?

2006-04-19 Thread [EMAIL PROTECTED]
Hello,Tom!
   Thanks for your answer.
   To invoid missing something of the timestamp, i just copy the tm2timestamp 
func into my program.(Of course, some other related functions are copied, too), 
result is still refusing me.

What i need is: 41A7 7DBA D400  stands for 2006-03-30 18:18:18 ( 41A7 
7DBA D400  is got from the Copy to File)
When using tm2timestamp, result is:
if define HAVE_INT64_TIMESTAMP
result is:  4E66 E642 0030 C274
if not define HAVE_INT64_TIMESTAMP
{
  if define INT64_IS_BUSTED result is: 6972 2142  00DB
  if not define INT64_IS_BUSTED result is: 4221 7269 DB00 
}

So, maybe  I forget to define something??

/**
* my codes 
*
*/
my program is listed:
time_t time = 1143713898;
struct tm* tmField = gmtime(time);// I know that struct tm dislikes the 
struct tm in time.h
tmField-tm_year += 1900;
tmField-tm_mon += 1;  // So tmFiled is same as pg_tm
int tzp = 8;
char buffer[256];

timestamp timestampField ;
tm2timestamp(tmField,0,tzp,timestampField);
timestamp_send(timestampField,buffer);   // I changed some codes here, to get 
the binary format of timestamp 

/*/
 

so ,what switch should i turn on?

=== 2006-04-18 21:47:42 You Wrote:===

[EMAIL PROTECTED] [EMAIL PROTECTED] writes:
 timestamp is defined as int64 or float8, when it is defined as int64, it 
 looks like timeval, first 32 bits for seconds,second 32 bits for usec.

No, it's seconds times 100, not times 2^32.

   regards, tom lane

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

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

= = = = = = = = = = = = = = = = = = = =

 
   
  


---(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


[HACKERS] how can i get the binary format of timestamp?

2006-04-17 Thread [EMAIL PROTECTED]
Hello:
I find that the real timestamp format(got from the file which is produced by 
copying binary to ) is different from what i find in timestamp_send  func.

i do think that the binary format of a timestamp 2006-04-18 11:20:20 should 
be 44 2B B0 6A 00 00 00 00  standing for secs:1143713898, usecs:0  but in 
fact it is:41A7 7DBA D400   

timestamp is defined as int64 or float8, when it is defined as int64, it looks 
like timeval, first 32 bits for seconds,second 32 bits for usec.
and  from the timestamp_send func, it just changes the first 32 bits to binary 
then combines the next 32 bits

/* codes from timestamp_send
 */

Datum
timestamp_send(PG_FUNCTION_ARGS)
{
Timestamp timestamp = PG_GETARG_TIMESTAMP(0);
StringInfoData buf;

pq_begintypsend(buf);
#ifdef HAVE_INT64_TIMESTAMP
pq_sendint64(buf, timestamp); 
#else
pq_sendfloat8(buf, timestamp);
#endif
PG_RETURN_BYTEA_P(pq_endtypsend(buf));
}

/* codes from  pq_sendint64
 */
void
pq_sendint64(StringInfo buf, int64 i)
{
uint32  n32;

/* High order half first, since we're doing MSB-first */
#ifdef INT64_IS_BUSTED
/* don't try a right shift of 32 on a 32-bit word */
n32 = (i  0) ? -1 : 0;
#else
n32 = (uint32) (i  32);
#endif
n32 = htonl(n32);
appendBinaryStringInfo(buf, (char *) n32, 4);

/* Now the low order half */
n32 = (uint32) i;
n32 = htonl(n32);
appendBinaryStringInfo(buf, (char *) n32, 4);
}


so i do think that the binary format of a timestamp 2006-04-18 11:20:20 
should be 44 2B B0 6A 00 00 00 00  standing for secs:1143713898, usecs:0

but in fact it is: 41A7 7DBA D400   , i don't know why.

maybe, i have looked into a wrong func, then which is the right one?


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

   http://archives.postgresql.org


[HACKERS] postgres questions (semi-joins, algebraic space)

2005-12-02 Thread [EMAIL PROTECTED]
 Good Morning,
 I'm an italian student and I'm working on a project involving postgres. I'm 
sorry for my very bad english. I've some questions:
 1)Does postgres upport semi-joins?
 2)What about projections or selections in query tree writing? Does Postgres 
support algebraic space (in other word when/how Postgres process 
algebraic operators? Are they used as common to reduce the size of the space 
that the search strategy has to explore?).
Thanks you all
Lucky


 OffroCerco: CASA, LAVORO, VACANZE, ELETTRONICA, INCONTRI. Tutti gli 
 annunci sono online su Kataweb all'indirizzo http://www.offroecerco.it
 
 
 


OffroCerco: CASA, LAVORO, VACANZE, ELETTRONICA, INCONTRI. Tutti gli 
annunci sono online su Kataweb all'indirizzo http://www.offroecerco.it




---(end of broadcast)---
TIP 5: don't forget to increase your free space map settings


[HACKERS]

2005-12-02 Thread [EMAIL PROTECTED]
Good Morning,
I'm an italian student and I'm working on a project involving postgres. I'm 
sorry for my very bad english. I've some questions:
1)Does postgres upport semi-joins?
2)What about projections or selections in query tree writing? Does Postgres 
support algebraic space (in other word when/how Postgres process 
algebraic operators? Are they used as common to reduce the size of the space 
that the search strategy has to explore?).
Thanks you all
Lucky


OffroCerco: CASA, LAVORO, VACANZE, ELETTRONICA, INCONTRI. Tutti gli 
annunci sono online su Kataweb all'indirizzo http://www.offroecerco.it




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


[HACKERS]

2005-05-07 Thread [EMAIL PROTECTED]
unsubscribe
---(end of broadcast)---
TIP 7: don't forget to increase your free space map settings


Re: [HACKERS] Opinions on Usenet ...

2004-11-29 Thread [EMAIL PROTECTED]
[EMAIL PROTECTED] (Gevik Babakhani) writes:

Maybe it is me but, I am trying to send a posting regarding a solution
proposal for a TODO item.
My posting has a .tgz attachment but it seems that it never arives at
hackers list! 
This is very frustrating. I even ask Bruce for help.

how big is the message? *raised eyebrow*   depending on size, it might get
caught up in the queue to be approved ... the only other possibility is that
the anti-virus or anti-spam checkers are picking it up ...

what i'd recommend is putting it up on a URL and posting the URL so that ppl
can download it ... 


-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Marc G. Fournier
Sent: Monday, November 29, 2004 9:24 PM
To: Gevik Babakhani
Cc: [EMAIL PROTECTED]
Subject: Re: [HACKERS] Opinions on Usenet ...

On Mon, 29 Nov 2004, Gevik Babakhani wrote:

 I was wondering if there is a better solution than mailing lists.
 My experience is that mailing lists are somewat combersome to use.
 Especially when your postings do not arrive!

When they don't arrive? *raised eyebrow*  You having a problem? :(

I don't know about everyone else, but my personal preference for mailing
lists is due to the lack of spam that gets to them, something that you can't
really do easily on Usenet ...


Marc G. Fournier   Hub.Org Networking Services (http://www.hub.org)
Email: [EMAIL PROTECTED]   Yahoo!: yscrappy  ICQ: 7615664

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

   http://archives.postgresql.org


---(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


---(end of broadcast)---
TIP 7: don't forget to increase your free space map settings


Re: [HACKERS] NOT LOGGED options (was Point in Time Recovery )

2004-08-14 Thread [EMAIL PROTECTED]
 Tom Lane wrote
 [EMAIL PROTECTED] [EMAIL PROTECTED] writes:
  It would be my intention (in 8.1) to make those available via
 switches e.g.
  NOT LOGGED options on CREATE INDEX and COPY, to allow users to take
  advantage of the no logging optimization without turning off PITR system
  wide. (Just as this is possible in Oracle and Teradata).

 Isn't this in direct conflict with your opinion above?  And I cannot say
 that I think this one is a good idea.  We do not have support for
 selective catalog xlogging; if you do something like this then you
 *will* have a broken database after recovery, because it will contain
 those indexes but with invalid contents.

No, its not in direct conflict. Turning OFF archive_mode would have a system
wide effect. The options described allow individual applications to make a
choice about whether certain very large operations are recoverable, or not.
I don't ever personally want to turn off system wide PITR, but there will be
times when I choose to avoid overhead on individual ops when the situation
dictates. This goes with your oft-mentioned dislike of systems that think
they know better than you do...

The first two optimizations have been included in 8.0 when archive_mode is
off. If there is a problem, then it will effect crash recovery of those
systems also. I suggest using exactly this optimisation, though under user
(application) control, rather than sysadmin control.

The challenges you mention have a solution. I wanted to add these to TODO,
not yet to discuss detailed implementation.

  I would also aim to make the first Insert Select into an empty table not
  logged (optionally). This is an important optimization for
 Oracle, teradata
  and DB2 (which uses NOT LOGGED INITIALLY).

 This is even worse: not only do you have a broken database, but you have
 no way to recover.  (At least with an unlogged index you could fix it by
 REINDEX.)  If you don't care about longevity of the table, then make it
 a temp table.


It is frequently possible to use that route, though the option remains in
frequent use in other situations.

 The fact that Oracle does it does not automatically make it a good idea.


Amen to that. You will note that unless compatability has been a
requirement, there have been times I have not followed the Oracle path, e.g.
PITR design.

I admit it must seem strange that I tried so hard to put PITR in place, only
to suggest removing it, optionally...

Overall, the options I describe here have been in production use in major
enterprise Data Warehouse systems for almost 15 years now. Oracle and DB2
copied the original Teradata implementation; slowly because, they too,
didn't quickly or easily accept the wisdom. There is abosultely no doubt of
the true value of these optimisations - the TPC-H tests for all vendors make
use of those (hidden in the details of which load utility options are used,
or simply the default behaviour).

Logging only has value when the mean time to recover is low enough to make
recovery worthwhile. This can catch you in a bind because you have to decide
whether to reduce MTTR at the expense of 100% data recovery. For some big
systems, recovery is only an option if you exclude the biggest table(s). In
a Data Warehouse, where data is loaded in large volumes, it may only be
feasible to load it when you have this optimisation. In a recovery
situation, re-loading the largest fact tables from their original source
data files is more likely to be the best option, or in some cases, skipped
entirely in favour of loading new data.

I don't claim that everybody would want this, only that it is an extremely
beneficial optimisation for many very large databases - which is much of my
focus.

You've pointed out that I'm new round here, which is certainly true - but
I have been many places... There are and will be many differences in
thinking that emerge from this; I regard all of this as synergy, not
argument.

Best Regards, Simon Riggs


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


Re: [HACKERS] will PITR in 8.0 be usable for hot spare/log shipping type of replication

2004-08-14 Thread [EMAIL PROTECTED]
 Tom Lane
 Eric Kerin [EMAIL PROTECTED] writes:
  The issues I've seen are:
  1. Knowing when the master has finished the file transfer transfer to
  the backup.

 The standard solution to this is you write to a temporary file name
 (generated off your process PID, or some other convenient reasonably-
 unique random name) and rename() into place only after you've finished
 the transfer.  If you are paranoid you can try to fsync the file before
 renaming, too.  File rename is a reasonably atomic process on all modern
 OSes.

  2. Handling the meta-files, (.history, .backup) (eg: not sleeping if
  they don't exist)

 Yeah, this is an area that needs more thought.  At the moment I believe
 both of these will only be asked for during the initial microseconds of
 slave-postmaster start.  If they are not there I don't think you need to
 wait for them.  It's only plain ol' WAL segments that you want to wait
 for.  (Anyone see a hole in that analysis?)

Agreed.

  3. Keeping the backup from coming online before the replay has fully
  finished in the event of a failure to copy a file, or other strange
  errors (out of memory, etc).

 Right, also an area that needs thought.  Some other people opined that
 they want the switchover to occur only on manual command.  I'd go with
 that too if you have anything close to 24x7 availability of admins.
 If you *must* have automatic switchover, what's the safest criterion?
 Dunno, but let's think ...


That's fairly straightforward.

You use a recovery_command that sleeps when it discovers a full log file
isn't available - i.e. it has requested the last or master-current WAL
file. The program wakes when the decision/operator command to switchover is
taken.

That way, when switchover occurs, you're straight up. No code changes...

This is important because it will allow us to test recovery for many systems
by creating a continuously rolling copy. Implementing this will be the best
way to stress-test the recovery code.

I'm not hugely in favour of copying partially filled log files, but if
that's what people want...as long as we don't change the basic code to
implement it, because then we'll have just created another code path that
will leave PITR untested for most people.

[I discussed all of this before as Automatic Standby Database functionality]

Best Regards, Simon Riggs


---(end of broadcast)---
TIP 7: don't forget to increase your free space map settings


Re: [HACKERS] Re: We have got a serious problem with pg_clog/WAL synchronization

2004-08-13 Thread [EMAIL PROTECTED]

On Thu, Aug 12, 2004 at 01:13:46PM -0400, Tom Lane wrote:
 Kenneth Marshall [EMAIL PROTECTED] writes:
  On Thu, Aug 12, 2004 at 09:58:56AM -0400, Tom Lane wrote:
  How would a read-only action work to block out the checkpoint?

  The latch+version number is use by the checkpoint process. The
  other processes can do a read of the latch to determine if it has
  been set. This does not cause a cache invalidation hit. If the
  latch is set, the competing processes read until it has been
  cleared and the version updated. This makes the general case of
  no checkpoint not incur a write and the consequent cache-line
  invalidation and reload by all processors on an SMP system.

 Except that reading the latch and finding it clear offers no guarantee
 that a checkpoint isn't about to start.  The problem is that we are
 performing two separate actions (write a COMMIT xlog record and update
 transaction status in clog) and we have to prevent a checkpoint from
 starting in between those actions.  I don't see that there's any way to
 do that with a read-only latch.


...just caught up on this.

ISTM that more heavily loading the checkpoint process IS possible if the
checkpoint uses a two-phase lock. That would replace 1 write lock with 2
lock reads...which is likely to be beneficial for SMP, given I have faith
that the other two problems you mention will succumb to some solution in the
mid-term. The first lock is an intent lock followed by a second,
heavyweight lock just as you now have it.

Comitter:
1. prior to COMMIT: reads for an intent lock, if found then it attempts to
take heavyweight lock...if that is not possible, then the commit waits until
after the checkpoint, just as you currently suggest
2. prior to update clog: reads for an intent lock, if found then takes
heavyweight lock...if that is not possible, then report a server error

Checkpointer: (straight to step 4 for a shutdown checkpoint)
1. writes an intent lock (it always can)
2. wait for the group commit timeout
3. wait for 0.5 second more
4. begins to wait on an exclusive heavyweight lock, before starting
checkpoint proper

This is not a provably correct state machine, but the error message should
not occur under current normal situations. (It is possible that an intent
lock could be written by Checkpointer (step 1), after a Committer reads for
it (step 1), then a very long delay occurs before Committer's step 2), such
that Checkpointer step 4 begins before Committer step 2.) It is very likely
that this would be noticed by Comitter step 2 and reported upon, in the
unlikely event that it occurs.

Is a longer term solution for pg to use a background log writer? That would
make group commit much easier to perform automatically without the
false-delay model currently available.

Best Regards, Simon Riggs


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

   http://archives.postgresql.org


[HACKERS] Development Schedule Page

2004-08-13 Thread [EMAIL PROTECTED]

Please could we have a development schedule page on the web site...?

The information it should contain would be like this (and others)

Current Development Release: (Coordinator: Bruce Momjian)
8.0:Beta1, released 2 August 2004
Beta2, deadline 2 September 2004
Doc Freeze, deadline 12 September 2004
Release, planned 2 October 2004

Stable Releases: (Coordinator: Bruce Momjian)
7.4 Stable: 7.4.3, released XYZ
Security advisory(s) exist for 7.4.1
7.3 Stable: 7.3.6, released XYZ
Security advisory(s) exist for 7.3.5 and below

Previous Releases: (No Coordinator)
7.2 Stable: 7.2.4, released XYZ
Advice: Upgrade now to 7.4 stable
7.1 Stable: 7.1.3, released XYZ
Advice: Upgrade now to 7.4 stable

Next Release: (Coordinator: Bruce Momjian)
8.1 Beta Freeze, deadline 1 June 2005


Once we have the page, we can start to discuss the details on it.

I remain mostly in the dark about how many beta phases there will be what
their deadlines are etc.

If we know this, its easy to write down, surely?

Best Regards, Simon Riggs


---(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: [HACKERS] Development Schedule Page

2004-08-13 Thread [EMAIL PROTECTED]
 Tom Lane

 [EMAIL PROTECTED] [EMAIL PROTECTED] writes:
  Please could we have a development schedule page on the web site...?

 You haven't been around here long, have you?

Gee, Tom, you noticed? What gave it away? :)

(I wasn't in a legal position to contribute before late 2003 - binding IP
clauses and all that).

 There is no schedule.

Hmm. I did think that at first.

But I don't go with the mystical stuff. (There IS a spoon, Matrix-fans,
IMHO.)

Now, I think the answer is close to Tom and/or Bruce know, but maybe they
don't agree yet

My observed group behaviour for what days is eventually agreed is something
like:
(Tom+Bruce+Marc)/2 in julian days

I see this: there is no PUBLISHED schedule, there probably is no AGREED
schedule, but everybody's working to some reasonable working assumptions
which mean that there is in fact an IMPLICIT schedule. (Whether or not that
changes over time)

I argued as strongly as anyone to NOT follow the agreed plan (just
recently). But I'm in favour of a published plan, so we all know. Just like
my recipe book says 90 mins for a cake, but we keep cooking it till it
looks good and don't try to flame Mrs.Beeton because it took 95 mins.

My interest is in allowing others to contribute. I have many other ideas in
this vein.

We can put things to the nearest month, if thats all we know/decide we can
hold ourselves to

Best Regards, Simon Riggs


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


Re: [HACKERS] Re: We have got a serious problem with pg_clog/WAL synchronization

2004-08-13 Thread [EMAIL PROTECTED]
 Tom Lane
 
 [EMAIL PROTECTED] [EMAIL PROTECTED] writes:
  This is not a provably correct state machine
 
 I think the discussion ends right there.  

Yes...

Negative results are worth documenting too, IMHO.

Best Regards, Simon Riggs

---(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


[HACKERS] PITR on Windows?

2004-08-13 Thread [EMAIL PROTECTED]

I notice that PITR doesn't function correctly on Windows. Has that been
reported elsewhere?

The archive_command parameter %p resolves to a full path containing slashes
rather than backslashes. This is not a Windows file, so any attempt to copy
it fails. There isn't any way to avoid that.

I'm surely not the first to report that? Am I?

[There isn't any way of telling, by default, since the log goes nowhere]

Is there a PostgreSQL approved way of saying for Windows port, use
backslashes in pathnames?

Best Regards, Simon Riggs


---(end of broadcast)---
TIP 7: don't forget to increase your free space map settings


[HACKERS] pgscripts improvement

2003-10-09 Thread [EMAIL PROTECTED]
Fixed up alignment problems and improved some translations.

Regards,

Fabrizio Mazzoni

# SOME DESCRIPTIVE TITLE.
# FIRST AUTHOR [EMAIL PROTECTED], YEAR.
#
msgid 
msgstr 
Project-Id-Version: PostgreSQL v7.4\n
POT-Creation-Date: 2003-10-05 13:26-0300\n
PO-Revision-Date: 2003-10-09 23:58+0100\n
Last-Translator: Fabrizio Mazzoni [EMAIL PROTECTED]\n
Language-Team: Fabrizio Mazzoni [EMAIL PROTECTED]\n
MIME-Version: 1.0\n
Content-Type: text/plain; charset=iso-8859-1\n
Content-Transfer-Encoding: 8bit\n

#: clusterdb.c:96
#: clusterdb.c:111
#: createdb.c:101
#: createdb.c:120
#: createlang.c:94
#: createlang.c:115
#: createlang.c:157
#: createuser.c:116
#: createuser.c:131
#: dropdb.c:83
#: dropdb.c:92
#: dropdb.c:100
#: droplang.c:88
#: droplang.c:109
#: droplang.c:151
#: dropuser.c:83
#: dropuser.c:98
#: vacuumdb.c:112
#: vacuumdb.c:127
#, c-format
msgid Try \%s --help\ for more information.\n
msgstr Prova \%s --help\ per avere più informazioni.\n

#: clusterdb.c:109
#: createdb.c:118
#: createlang.c:113
#: createuser.c:129
#: dropdb.c:98
#: droplang.c:107
#: dropuser.c:96
#: vacuumdb.c:125
#, c-format
msgid %s: too many command-line arguments (first is \%s\)\n
msgstr %s: troppi parametri dalla riga di comando (il primo è \%s\)\n

#: createdb.c:128
#, c-format
msgid %s: \%s\ is not a valid encoding name\n
msgstr %s: \%s\ non è un nome di codifica valido\n

#: createdb.c:170
#, c-format
msgid %s: database creation failed: %s
msgstr %s: creazione del database fallita: %s

#: createdb.c:195
#, c-format
msgid %s: comment creation failed (database was created): %s
msgstr %s: creazione del commento fallita (il database è stato creato): %s

#: createdb.c:213
#, c-format
msgid 
%s creates a PostgreSQL database.\n
\n
msgstr 
%s crea un database PostgreSQL.\n
\n

#: clusterdb.c:232
#: createdb.c:214
#: createlang.c:272
#: createuser.c:236
#: dropdb.c:143
#: droplang.c:242
#: dropuser.c:143
#: vacuumdb.c:256
msgid Usage:\n
msgstr Utilizzo:\n

#: createdb.c:215
#, c-format
msgid   %s [OPTION]... [DBNAME] [DESCRIPTION]\n
msgstr   %s [OPZIONE]... [NOME_DB] [DESCRIZIONE]\n

#: clusterdb.c:234
#: createdb.c:216
#: createlang.c:274
#: createuser.c:238
#: dropdb.c:145
#: droplang.c:244
#: dropuser.c:145
#: vacuumdb.c:258
msgid 
\n
Options:\n
msgstr 
\n
Opzioni:\n

#: createdb.c:217
msgid   -D, --location=PATH   alternative place to store the database\n
msgstr   -D, --location=PERCORSO   percorso alternativo in cui salvare il database\n

#: createdb.c:218
msgid   -E, --encoding=ENCODING   encoding for the database\n
msgstr   -E, --encoding=CODIFICA   codifica del database\n

#: createdb.c:219
msgid   -O, --owner=OWNER database user to own the new database\n
msgstr   -O, --owner=UTENTEutente proprietario del database\n

#: createdb.c:220
msgid   -T, --template=TEMPLATE   template database to copy\n
msgstr   -T, --template=MATRICEcopia il database MATRICE\n

#: clusterdb.c:238
#: createdb.c:221
#: createlang.c:276
#: createuser.c:247
#: dropdb.c:146
#: droplang.c:246
#: dropuser.c:146
msgid   -e, --echoshow the commands being sent to the server\n
msgstr   -e, --echomostra i comandi inviati al server\n

#: clusterdb.c:239
#: createdb.c:222
#: createuser.c:248
#: dropdb.c:148
#: dropuser.c:148
msgid   -q, --quiet   don't write any messages\n
msgstr   -q, --quiet   non stampare messaggi\n

#: clusterdb.c:240
#: createdb.c:223
#: createlang.c:283
#: createuser.c:249
#: dropdb.c:153
#: droplang.c:252
#: dropuser.c:153
msgid   --helpshow this help, then exit\n
msgstr   --helpmostra questo aiuto e poi esci\n

#: clusterdb.c:241
#: createdb.c:224
#: createlang.c:284
#: createuser.c:250
#: dropdb.c:154
#: droplang.c:253
#: dropuser.c:154
msgid   --version output version information, then exit\n
msgstr   --version mostra informazioni sulla versione, poi esci\n

#: clusterdb.c:242
#: createdb.c:225
#: createuser.c:251
#: vacuumdb.c:269
msgid 
\n
Connection options:\n
msgstr 
\n
Opzioni di connessione:\n

#: clusterdb.c:243
#: createdb.c:226
#: createlang.c:279
#: createuser.c:252
#: dropdb.c:149
#: droplang.c:248
#: dropuser.c:149
#: vacuumdb.c:270
msgid   -h, --host=HOSTNAME   database server host or socket directory\n
msgstr   -h, --host=NOME_HOST  indirizzo database o directory socket\n

#: clusterdb.c:244
#: createdb.c:227
#: createlang.c:280
#: createuser.c:253
#: dropdb.c:150
#: droplang.c:249
#: dropuser.c:150
#: vacuumdb.c:271
msgid   -p, --port=PORT   database server port\n
msgstr   -p, --port=PORTA  porta del server database\n

#: clusterdb.c:245
#: createdb.c:228
#: createlang.c:281
#: dropdb.c:151
#: droplang.c:250
#: vacuumdb.c:272
msgid   -U, --username=USERNAME   user name to connect as\n
msgstr   -U, --username=UTENTE nome utente da utilizzare per la connessione\n

#: clusterdb.c:246
#: createdb.c:229
#: createlang.c:282
#: dropdb.c:152

[HACKERS] pg_resetxlog fixed

2003-10-09 Thread [EMAIL PROTECTED]
Changed a couple of lines and traslated them in a better way.

Regards,

Fabrizio Mazzoni
# SOME DESCRIPTIVE TITLE.
# FIRST AUTHOR [EMAIL PROTECTED], YEAR.
#
msgid 
msgstr 
Project-Id-Version: PostgreSQL v7.4\n
POT-Creation-Date: 2003-10-05 13:25-0300\n
PO-Revision-Date: 2003-10-09 23:35+0100\n
Last-Translator: Fabrizio Mazzoni [EMAIL PROTECTED]\n
Language-Team: Fabrizio Mazzoni [EMAIL PROTECTED]\n
MIME-Version: 1.0\n
Content-Type: text/plain; charset=iso-8859-1\n
Content-Transfer-Encoding: 8bit\n

#: pg_resetxlog.c:142
#, c-format
msgid %s: invalid argument for option -x\n
msgstr %s: parametro errato per l'opzione -x\n

#: pg_resetxlog.c:143
#: pg_resetxlog.c:158
#: pg_resetxlog.c:173
#: pg_resetxlog.c:180
#: pg_resetxlog.c:186
#: pg_resetxlog.c:194
#, c-format
msgid Try \%s --help\ for more information.\n
msgstr Prova \%s --help\ per maggiori informazioni.\n

#: pg_resetxlog.c:148
#, c-format
msgid %s: transaction ID (-x) must not be 0\n
msgstr %s: l'ID della transazione (-x) non deve essere 0\n

#: pg_resetxlog.c:157
#, c-format
msgid %s: invalid argument for option -o\n
msgstr %s: parametro errato per l'opzione -o\n

#: pg_resetxlog.c:163
#, c-format
msgid %s: OID (-o) must not be 0\n
msgstr %s: l'OID (-o) non deve essere 0\n

#: pg_resetxlog.c:172
#: pg_resetxlog.c:179
#, c-format
msgid %s: invalid argument for option -l\n
msgstr %s: parametro errato per l'opzione -l\n

#: pg_resetxlog.c:193
#, c-format
msgid %s: no data directory specified\n
msgstr %s: non è stata specificata una directory per i dati\n

#: pg_resetxlog.c:213
#: pg_resetxlog.c:309
#, c-format
msgid %s: could not open file \%s\ for reading: %s\n
msgstr %s: impossibile aprire il file \%s\ per la lettura: %s\n

#: pg_resetxlog.c:219
#, c-format
msgid 
%s: lock file \%s\ exists\n
Is a server running?  If not, delete the lock file and try again.\n
msgstr 
%s: il lock file \%s\ esiste\n
Il server è in esecuzione? Se non lo è, eliminate il lock file e riprovate.\n

#: pg_resetxlog.c:258
msgid 
\n
If these values seem acceptable, use -f to force reset.\n
msgstr 
\n
Se questi parametri sembrano accettabili, utilizzate -f per forzare un reset.\n

#: pg_resetxlog.c:270
msgid 
The database server was not shut down cleanly.\n
Resetting the transaction log may cause data to be lost.\n
If you want to proceed anyway, use -f to force reset.\n
msgstr 
Il server database non è stato chiuso correttamente.\n
Resettare il registro delle trasazioni può causare una perdita di dati.\n
Se volete continuare, utilizzate -f per forzare il reset.\n

#: pg_resetxlog.c:283
msgid Transaction log reset\n
msgstr registro delle transazioni riavviato\n

#: pg_resetxlog.c:312
#, c-format
msgid 
If you are sure the data directory path is correct, execute\n
  touch %s\n
and try again.\n
msgstr 
Se sei sicuro che il percorso della cartella è corretto, esegui\n
  touch %s\n
e riprova.\n

#: pg_resetxlog.c:325
#, c-format
msgid %s: could not read file \%s\: %s\n
msgstr %s: impossibile leggere il file \%s\: %s\n

#: pg_resetxlog.c:348
#, c-format
msgid %s: pg_control exists but has invalid CRC; proceed with caution\n
msgstr %s: pg_control esiste ma ha un CRC invalido; procedere con cautela\n

#: pg_resetxlog.c:357
#, c-format
msgid %s: pg_control exists but is broken or unknown version; ignoring it\n
msgstr %s: pg_control esiste ma è inutilizzabile o è una versione sconosciuta; verrà 
ignorato\n

#: pg_resetxlog.c:408
#, c-format
msgid %s: invalid LC_COLLATE setting\n
msgstr %s: settaggio errato per LC_COLLATE\n

#: pg_resetxlog.c:415
#, c-format
msgid %s: invalid LC_CTYPE setting\n
msgstr %s: settaggio errato per LC_CTYPE\n

#: pg_resetxlog.c:437
msgid 
Guessed pg_control values:\n
\n
msgstr 
Valori pg_control indovinati:\n
\n

#: pg_resetxlog.c:439
msgid 
pg_control values:\n
\n
msgstr 
Valori pg_control:\n
\n

#: pg_resetxlog.c:441
#, c-format
msgid pg_control version number:%u\n
msgstr Numero versione pg_control:%u\n

#: pg_resetxlog.c:442
#, c-format
msgid Catalog version number:   %u\n
msgstr Numero versione catalogo:   %u\n

#: pg_resetxlog.c:443
#, c-format
msgid Current log file ID:  %u\n
msgstr ID file di registro corrente:  %u\n

#: pg_resetxlog.c:444
#, c-format
msgid Next log file segment:%u\n
msgstr Prossimo segmento del file di registro:%u\n

#: pg_resetxlog.c:445
#, c-format
msgid Latest checkpoint's StartUpID:%u\n
msgstr Ultimo checkpoint StartUpID:%u\n

#: pg_resetxlog.c:446
#, c-format
msgid Latest checkpoint's NextXID:  %u\n
msgstr Ultimo checkpoint NextXID:  %u\n

#: pg_resetxlog.c:447
#, c-format
msgid Latest checkpoint's NextOID:  %u\n
msgstr Ultimo checkpoint NextOID:  %u\n

#: pg_resetxlog.c:448
#, c-format
msgid Database block size:  %u\n
msgstr Dimensione blocco database:  %u\n

#: pg_resetxlog.c:449
#, c-format
msgid Blocks per segment of large relation: %u\n

[HACKERS] Statement-level Triggers

2003-08-14 Thread [EMAIL PROTECTED]
Hello everybody,
how far have you got with statement-level triggers development?

Regards,
Claudio.


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

   http://archives.postgresql.org


Fwd: Re: [HACKERS] [GENERAL] Extracting time from timestamp

2003-03-20 Thread Shridhar Daithankar[EMAIL PROTECTED]
On Friday 21 Mar 2003 11:38 am, Christopher Kings-Lynne wrote:
  phd=# select time(abstime(timestamp 'now')) from bookings;
  ERROR:  parser: parse error at or near abstime at character 13
  phd=# select time(timestamp 'now') from bookings;
  ERROR:  parser: parse error at or near timestamp at character 13
  phd=# select version();
 version

 Try:

 select time(abstime(timestamp 'now')) from bookings;
 select time(timestamp 'now') from bookings;

First of all, thanks, it worked..

And What's so holy about  if it is a function?

That was bummer, I admit.. Spent almost a day on it..

 Shridhar

P.S. Sorry, I didn't realized that I handn' CC hackers..


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


Re: Fwd: Re: [HACKERS] [GENERAL] Extracting time from timestamp

2003-03-20 Thread Shridhar Daithankar[EMAIL PROTECTED]
On Friday 21 Mar 2003 12:25 pm, Tom Lane wrote:
 Shridhar Daithankar[EMAIL PROTECTED] 
[EMAIL PROTECTED] writes:
  And What's so holy about  if it is a function?

 The problem is that TIME(n) is a datatype name, not a function call,
 according to the SQL spec.  Likewise for TIMESTAMP(n), INTERVAL(n),
 NUMERIC(m,n), and maybe one or two other special cases I've forgotten.

 The SQL spec's love of special-purpose syntaxes is one of its worst
 features IMHO ...

In this case, I would vote for overload as SQL extension in postgresql if 
people feel it is feasible and/or sensible..

 Shridhar

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

http://www.postgresql.org/docs/faqs/FAQ.html


[HACKERS] Another naive question, inheritance and foreign key

2003-03-19 Thread Shridhar Daithankar[EMAIL PROTECTED]
Hi,

Just stumbled upon this. Is it correct to conclude that foreign keys are not 
inherited from this text?


phd=# create table perbookings(type smallint) inherits (bookings);
CREATE TABLE
phd=# \d perbookings;
   Table public.perbookings
 Column |Type |Modifiers
+-+--
 rid| integer |
 uid| integer |
 stime  | timestamp without time zone |
 etime  | timestamp without time zone |
 bid| integer | default nextval('bid_seq'::text)
 type   | smallint|
Check constraints: bookings_etime (etime  stime)

phd=# \d bookings;
 Table public.bookings
 Column |Type |Modifiers
+-+--
 rid| integer |
 uid| integer |
 stime  | timestamp without time zone |
 etime  | timestamp without time zone |
 bid| integer | default nextval('bid_seq'::text)
Check constraints: bookings_etime (etime  stime)
Foreign Key constraints: $1 FOREIGN KEY (rid) REFERENCES resource(id) ON 
UPDATE CASCADE ON DELETE CASCADE,
 $2 FOREIGN KEY (uid) REFERENCES users(userid) ON 
UPDATE CASCADE ON DELETE CASCADE

phd=# select version();
   version
-
 PostgreSQL 7.3.2 on i386-portbld-freebsd4.7, compiled by GCC 2.95.4
(1 row)


TIA..
 
 Shridhar

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


[HACKERS] Primary key and references

2003-03-18 Thread Shridhar Daithankar[EMAIL PROTECTED]
Hi,

Today I discovered that if there is a compund primary key on a table, I can 
not create a reference from another table to one of the fields in the primary 
key..

Look at this..

phd=# create table tmp1(a integer,b integer,primary key(a,b));
NOTICE:  CREATE TABLE / PRIMARY KEY will create implicit index 'tmp1_pkey' for 
table 'tmp1'
CREATE TABLE
phd=# create table tmp2(a integer references tmp1(a));
NOTICE:  CREATE TABLE will create implicit trigger(s) for FOREIGN KEY check(s)
ERROR:  UNIQUE constraint matching given keys for referenced table tmp1 not 
found
phd=# drop table tmp1;
DROP TABLE
phd=# create table tmp1(a integer unique,b integer primary key);
NOTICE:  CREATE TABLE / PRIMARY KEY will create implicit index 'tmp1_pkey' for 
table 'tmp1'
NOTICE:  CREATE TABLE / UNIQUE will create implicit index 'tmp1_a_key' for 
table 'tmp1'
CREATE TABLE
phd=# create table tmp2(a integer references tmp1(a));
NOTICE:  CREATE TABLE will create implicit trigger(s) for FOREIGN KEY check(s)
CREATE TABLE
phd=# select version();
   version
-
 PostgreSQL 7.3.2 on i386-portbld-freebsd4.7, compiled by GCC 2.95.4
(1 row)


Note that I do not require unique check on tmp2. It is perfectly acceptable to 
have duplicate values in table tmp2. However no duplicates are allowed in 
table tmp1.

I consider this as a bug but given my understanding of sql, I won't count on 
it. Any comments? 

The workaround shown here is acceptable as I don't really need a compound 
primary key. But If I need, I know it won't work..

TIA..

 Shridhar

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

http://archives.postgresql.org


[HACKERS] Thread safe ecpg

2003-02-24 Thread Shridhar Daithankar[EMAIL PROTECTED]
Hi all,

I was just wondering.The patches for making ecpg thread safe that were 
floating around few days back, are they going to make in any near future 
releases?

I am badly bitten by libpq as code i my multithreaded app. is growing 
steadily. I find myself making stupid mistakes every now and then.Of course I 
don't expect any language to solve them for me but with ecpg it would be bit 
easier.

Just thinking..

 Shridhar

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

http://archives.postgresql.org


Re: [HACKERS] location of the configuration files

2003-02-14 Thread Shridhar Daithankar[EMAIL PROTECTED]
On Friday 14 Feb 2003 9:05 pm, you wrote:
 Martin Coxall [EMAIL PROTECTED] writes:
 Here's a pretty topic for a flamewar: should it be /etc/postgres/ or
 /etc/postgresql/ ?

I vote for /etc/pgsql. Keeping in line of unix philosophy of cryptic and short 
names. Who wants a descriptive names anyway..:-)

Seriously, the traffic on last three days ahd very high noise ratio. 
Especially the whole discussion of PGDATA stuff fails to register as 
significant IMO. Right now, I can do things the way I want to do and I guess 
it is pretty much same with everyone else. Is it last topic left to improve?

Keep it simple and on tpoic guys. This is hackers. Keep it low volume 
otherwise, two years down the lines, archives will be unsearchable..

 Shridhar

---(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: [pgsql-advocacy] [HACKERS] PostgreSQL Benchmarks

2003-02-11 Thread Shridhar Daithankar[EMAIL PROTECTED]
On Tuesday 11 Feb 2003 8:01 pm, Mario Weilguni wrote:
 Hrm.  I just saw that the PHP ADODB guy just published a bunch of database
 benchmarks.  It's fairly evident to me that benchmarking PostgreSQL on
 Win32 isn't really fair:
 
 http://php.weblogs.com/oracle_mysql_performance

 And why is the highly advocated transaction capable MySQL 4 not tested?
 That's the problem, for every performance test they choose ISAM tables, and
 when transactions are mentioned it's said MySQL has transactions. But why
 no benchmarks?

I did benchmark mysql/postgresql/oracle sometime back. Mysql with transaction 
is 90% as fast as postgresql. But it dies down with increased number of users 
no matter how much resources you throw at it.

Oracle is 130% of postgresql. This was postgresql 7.2.x series so things have 
changed for sure, but you got the idea, right?

 Shridhar

---(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] Changing the default configuration (was Re: [pgsql-advocacy]

2003-02-11 Thread Shridhar Daithankar[EMAIL PROTECTED]
On Tuesday 11 Feb 2003 10:56 pm, you wrote:
 Josh Berkus [EMAIL PROTECTED] writes:
  What if we supplied several sample .conf files, and let the user choose
  which to copy into the database directory?   We could have a high read
  performance profile, and a transaction database profile, and a
  workstation profile, and a low impact profile.

 Uh ... do we have a basis for recommending any particular sets of
 parameters for these different scenarios?  This could be a good idea
 in the abstract, but I'm not sure I know enough to fill in the details.

Let's take very simple scenario to supply pre-configured postgresql.conf.

Assume that SHMMAX=Total memory/2 and supply different config files for

64MB/128Mb/256MB/512MB and above.

Is it simple enough?

 Shridhar

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



[HACKERS] ECPG, threading and pooling

2003-01-23 Thread Shridhar Daithankar[EMAIL PROTECTED]
Hi all,

I would like to use ECPG as it is relatively easy to code. However my 
application is multithreaded and also uses connecion pools.

I would like to know if ECPG is thread safe and I can use an arbitrary PGconn* 
object pulled from a connection pool.

Do I need to use connection name? I mean how do I store connection name in an 
array or so?

Otherwise I would have to fiddle with libpq which is bit more difficult than 
ECPG.

TIA 

 Shridhar

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



Re: Windows Build System was: [HACKERS] Win32 port patches

2003-01-22 Thread [EMAIL PROTECTED]

Firebird uses a set of Borland command line tools and Borland's make, 
which they give away as a free download.  Even if you're compiling for 
Windows, the build process uses Borland's command line make.  A batch 
build script copies makefiles from a single source directory and spreads 
them around the tree, then kicks off Borland's make.  For things to work 
successfully, you must download Borland's tools and install them 
together with setting a few environment variables by hand.  Borland 
command line tools are just a set of Unix utilities like grep, sed, 
make, (sh?) etc.  Once upon a time they required cygwin utilities, but 
managed to purge themselves of cygwin with the Borland utilities.  When 
they required cygwin, they also required some Borland utilities anyway. 
So they had a real reason for purging cygwin.  If someone thinks the 
cygwin package is too big, we could require the Borland utilities instead :)

For my 2 cents, I would say the project files should be a separate 
download.  Let someone build, test, and contribute them for particular 
versions of PostgreSQL.  I would only try to make the Visual Studio 
files work on true releases.  I would _not_ try to keep them updated in 
CVS or build them on the fly.   W3.org's libwww does it something like this.

bbaker



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


Re: [HACKERS] Threads

2003-01-03 Thread [EMAIL PROTECTED]


I am sure, many of you would like to delete this message before reading, hold 
on. :-)


I'm afraid most posters did not read the message.  Those who replied 
Why bother? did not address your challenge:

I think threads are useful in difference situations namely parallelising 
blocking conditions and using multiple CPUs.
 

This is indeed one of the few good reasons for threads.  Indeed, 
large/robust systems use a mix.

The consensus of the group is that those who do the work are not ready 
for threads.  Which is fine.  Looking into my crystal ball, I see that 
it will happen, though it appears so far away.

bbaker



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


[HACKERS] urgent needed

2002-07-12 Thread [EMAIL PROTECTED]

Hi
We’re two doctoring students and we have a little problem to resolve.
We’re using Grass5pre3 and PostgreSQL 7.2 (Linux)to map vehicular
pollution of our city. We have a map of the streets and we have to
assign 24 values (+ the label) to each street.
What would be a smart way to solve this problem using Postgres?
Thanx a lot for your help, Alberto  Massimo.



Salve.
Siamo due studenti laureandi e avremmo un problema da risolvere.
Stiamo utilizzando Grass5pre3 e PostgreSQL 7.2 (Linux)per realizzare
una mappatura dell’inquinamento veicolare nella nostra città.
Abbiamo una mappa delle vie e dobbiamo assegnare ad ogni via 24 valori
(più l’etichetta).
Qual e’ il modo più furbo e veloce per farlo, utilizzando Postgres?
Grazie Mille per l’aiuto, Alberto  Massimo.






--
Prendi GRATIS l'email universale che... risparmia: http://www.email.it/f

Sponsor:
Conto Arancio. Zero spese, stessa banca, più interessi.
Clicca qui: http://adv2.email.it/cgi-bin/foclick.cgi?mid=657d=12-7

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



Re: [HACKERS] pg_access

2002-07-09 Thread [EMAIL PROTECTED]



I'm pleased to see some renewed interest in 
pg_access. It seems obvious to me that MS Access is not currently...and 
probably never will be able to handle data in a robust and reliable 
fashion. MS Access' apparent success is due to the user interface quality 
and "ease of use" for "non-programmers". The "Relationships View" window, 
for example, is one of the best and most useful features ever invented for any 
database toolset.

In reality PostGreSQL is in a "strong position" to 
fill the "reliability void" left byMS Access. However, the general 
public doesn't know much about the short comings ofAccess, due to MS 
advertising and sales efforts. It seems clear to me that the best way to 
"promote" the use of PostGreSQL is to offer more "ease of use" GUI interfaces 
for changing table structures, indexes, relationships, and upgrading older 
versions of files. Although it would be nice to have a native Windows 
version of PostGreSQL, as well as a Linux version, I expect Linux to replace 
Windows on a large number of PCs in the near future. I think that "having 
a Windows version" will not be a significant issue at that point. However, 
GUI based "ease of use" features WILL be an extremely important issue and will 
increase in importance for the rest of the forseeable future. Using a 
"browser" to implement the GUI toolset is a good start, but it probably won't 
support the same degree of user friendliness that is seen in the "Relationships 
View" window of MS Access, where a relationship can be instantly "drawn" with a 
mouse, and fields added to the Table with a simple "right click" on the Table 
header.

If we do a good job of providingGUI based 
tools, similar to MS Access, as well as conversion tools from Access to 
PostGreSQL for existing data, then PostGreSQL and Linux should quickly become 
the "defacto standard" toolset for all website servers. It seems to me 
like PostGreSQL is already on this pathway, "like it or not", and that focussing 
on the GUI toolset is essential to maintaining a good relationship with those 
who are new to the Linux world. Whether you realize it or not, there is a 
humongous tidal wave of MS Access users currently gathering enough database 
theory expertise to "realize" the MS "snow job" they've been given about its 
reliability. They will be forced into finding another solution and chances 
are VERY good they won't opt for MS SQLServer or Oracle. If we are 
ready to givea solutionto them...greatsorry MS, but they seem to 
"like us better".If we are not ready, then our future won't have 
anything to do with MS, only our own lack of vision.

At our current level of GUI tools, we can't expect 
any positive response even from fairly talented self taught computer programmers 
who have been interested in Linux since 1998 or later. Soon, there will be 
many Windows IT Specialists who will be seriously investigating the Linux OS and 
the "best database tools" available for it. Add to this list "end users" 
who are fed up with daily Windows crashes and are experimenting with hosting 
their own DSL based website serversand well...there's your tidal wave! 
Ready or notthe wave is directly behind ustime to "paddle" for all we're 
worth!

Sincerely,

Arthur Baldwin


Re: [HACKERS] pg_access

2002-07-09 Thread [EMAIL PROTECTED]





Dear 
Eric,
Thanks for your 
input! I'm still in favor of developing a Windows version of 
PostGreSQL. But I don't think that intelligent people are going to want to 
use any version of Windows (especially since the news of DRMOS and TCPA included 
in Windows XP and soon to be implemented in all future releases of Windows 2000 
Server) to host their ownwebsite via their DSL line. Another few 
reasons for this choice are the constant crashes of ALL versions of Windows and 
the increasing lack of responsiveness to fix bugs or admit to "less than 
advertised" limitations.
Also, people who don't 
appreciate the far less than honest approach to Access users that MS has taken, 
are not about to spend thousands of dollars on MS SQL Server. At least not 
at a time when all signs point to abandoning Windows in favor of Linux, as a 
"necessary" step, albeit painful. "Necessary" because of the improved 
security that is possible, with sufficient Linuxexpertise and because of 
the lowered risk of being at only one company's mercy...as pointed out by the 
senator from Peru and many others since.
Allowing MS to continue 
a 90 + percent market share (by remaining blissfully ignorant) until TCPA is 
fully implemented in all supported versions of Windows is nothing short of total 
insanity. I believe that most Americans are intelligent enough to realize 
this and avoid that scenario by making the switch to Linux. I don't 
believe that we Americans are stupid enough to let a company like MS take away 
almost every freedom that now exists in the field of technological 
development! If we are, then we will shortly lose our other freedoms as 
well...through ignorance and apathy.
I believe that we will 
see many mfgs of motherboards that don't include the "Fritz chip" that are 
designed for those who vote for Linux and make the switch to an unfamiliar 
OS...primarily due to their discovery of the TCPA/MS agenda. Am I sure 
about this? Yes! Look at the intense interest shown by other 
countries in Linux application development for the GUI desktop. Do you 
think they will abandon their investment? I don't think so. 
Especially not in Taiwan or China where flexible and compatible "hard Real Time" 
versions of Linux are a primary development focus...to be marketed here in the 
US!
(Examples: http://www.redsonic.com and China 
Soft...their website link can be found at the Redsonic websitehope you can 
read Chinese!)
Redsonic's 
toolsetwill beat WinCE in the near future...without any doubt. The 
performance improvement and user friendliness of their tools far exceed any 
version of WinCE.
And Redsonic isn't the 
only "Real Time" competitor. There are many, many others...and a steady 
flow of new ones.
If we as Americans 
don't make the switch to Linux instead of Windows, including end users at home, 
then I can think of one Biblical phrase that fits, "Don't cast your pearls 
before swine, lest they turn and rend you". In other words, "send back 
your PC to the store"...we're too stupid and self absorbed to have the privilege 
of using them or to enjoy our current freedoms. Switching to Linux is 
currently a "pain" to be sure...but it is less painful than what will surely 
follow if the MS plan works. "A word to the wise is sufficient". And 
it won't be long until it is much less painful to make the 
switch.
Sincerely,
Arthur 
Baldwin
I’m afraid that I don’t 
hold as much faith as you that Linux will become the “defacto standard” toolset 
for all website servers. MS, despite its major shortcomings, is fairly slow and 
steady when it comes to improvements to its OS. That said, Access is crap because no one uses it for what it was built 
to be used for. And I would imagine that MS would rather spend their time/money 
on SQL Server development. I agree with you that pgsql 
needs a more powerful, GUI interface. The QBE interface in Access is nice. 
However, I don’t agree that it is unimportant to have a Windows version. Point 
being, that Linux users are used to – and sadly often expect – poor interfaces 
with the programs they use. Windows users are far less forgiving. If, what you 
are talking about, is truly wide spread use for PC’s and small-time web-servers 
then a Windows interface is damn near necessary.

Eric

-Original 
Message-From: 
[EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] 
On Behalf Of 
[EMAIL PROTECTED]Sent: Tuesday, July 09, 
2002 4:05 
PMTo: PostGreSQL HackersSubject: Re: [HACKERS] 
pg_access


I'm pleased to see some renewed 
interest in pg_access. It seems obvious to me that MS Access is not 
currently...and probably never will be able to handle data in a robust and 
reliable fashion. MS Access' apparent success is due to the user interface 
quality and "ease of use" for "non-programmers". The "Relationships View" 
window, for example, is one of the best and most useful f

[HACKERS] mV database tools

2002-05-02 Thread [EMAIL PROTECTED]



Dear Team,

I've read your comments. No, I don't think 
that MVD's are the best thing since sliced breadbut they do have a certain 
"simplicity" that seems to hold the key to high speed analysis of large volumes 
of streaming data from the "eyes" of a robot. This stream of data must be 
quickly analyzed and subdivided into recognizable objects...I realize this area 
is wide open to debate...howeveran MVD might at least offer a "useful" 
theoretical "angle" in a "pre-PostGreSQL" stage of processing...just a 
thought...



[HACKERS] mV database tools

2002-05-02 Thread [EMAIL PROTECTED]



Dear Team,

I'm wide open to other ideas for the support of 
robotic vision through tools already built into PostGreSQL. But you've 
already admitted to certain speed limitations...and robotic vision is going to 
require much more intense processing power. An MVD might allow the data 
stream to be quickly "re-arranged" during the recognition processing and then 
converted to RDBMS form later...after object recognition is 
"stabilized"...

I really would love to see little "Short Circuits" 
running around teaching themselves...ok? Just a dream of 
mine...




[HACKERS] mV database tools

2002-05-01 Thread [EMAIL PROTECTED]



Dear Team,

I have been monitoring this list for quite some 
time now and have been studying PostGreSQL for a while. I also did some 
internet research on the subject of "multi valued" database theory. I know 
that this is the basis for the "Pick" database system, FileMaker Pro, "D3", and 
a few other database systems. After carefully reviewing the theoretical 
arguments in favor of this type of database, I am thoroughly convinced that 
there are certain advantages to it that will never be matched by a traditional 
"relational database".

I won't waste your time in reviewing the technical 
advantages here, because you can do your own research. However, I will say 
that it is obvious to me that an mV database will be an integral part of any 
truly practical AI robotics system. It will probably be necessary to 
"marry" the technologies of both relational databases and mV databases in such a 
system.

IMHO, this is something that you, as the leaders in 
the most advanced database system ever developed, should carefully 
consider. The Linux community needs to be aware of the special advantages 
that an mV database offers, the way to interface an mV system with a traditional 
RDBMS, and the potential application theory as it relates to AI 
systems.

We, as a community of leaders in GPL'd software 
need to make sure that this technology is part of the "knowledge base" of our 
community. Thanks for listening.

Arthur


[HACKERS] Can't subscribe or get CVS

2001-09-27 Thread [EMAIL PROTECTED]


I just tried to get PostgreSQL from CVS , but it rejected the password
'postgresql' for user 'anoncvs':

$ export CVSROOT=:pserver:[EMAIL PROTECTED]:/home/projects/pgsql/cvsroot
$ cvs login
(Logging in to [EMAIL PROTECTED])
CVS password:
cvs login: authorization failed: server postgresql.org rejected access to 
/home/projects/pgsql/cvsroot for user anoncvs


Then, I tried to post this to pgsql-hackers, but my scubscrption
failed, too!

From: [EMAIL PROTECTED]
To: [EMAIL PROTECTED] [EMAIL PROTECTED]
Subject: Majordomo results
Date: Thu, 20 Sep 2001 11:55:29 -0400 (EDT)

 subscribe
 Illegal command!

 Skipped 1 line of trailing unparseable text.

No valid commands processed.

Is majordomo and CVS broken, or do I need different instructions?

--Noel



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



[HACKERS] Re: OID wraparound (was Re: pg_depend)

2001-07-23 Thread [EMAIL PROTECTED]

[EMAIL PROTECTED] (Lamar Owen) wrote in message 
news:[EMAIL PROTECTED]...

 [trimmed cc:list]

 On Wednesday 18 July 2001 17:09, Bruce Momjian wrote:

  OK, we need to vote on whether Oid's are optional, and whether we can

  have them not created by default.

 

 [All the below IMHO]

 

 OID's should be optional.


yep.  we don't depend upon oids  32 bits.  that's pretty standard
practice for serious db apps.  however, tx limit is a real problem.

my vote is for solving the tx limit before chaning the oid problem.

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