X-Original-To: pgsql-sql@postgresql.org Received: from spampd.localdomain (postgresql.org [64.49.215.8]) by postgresql.org (Postfix) with ESMTP id 1750D475CBC for ; Tue, 6 May 2003 13:55:53 -0400 (EDT) Received: from smtp.noos.fr (nan-smtp-01.noos.net [212.198.2.70]) by postgresql.org (Postfix) with ESMTP id E2BDB474E42 for ; Tue, 6 May 2003 13:55:51 -0400 (EDT) Received: (qmail 74019287 invoked by uid 0); 6 May 2003 17:55:45 -0000 Received: from unknown (HELO gmendola) ([212.198.41.95]) (envelope-sender ) by 212.198.2.70 (qmail-ldap-1.03) with SMTP for ; 6 May 2003 17:55:45 -0000 Message-ID: <000e01c313f8$941ef5e0$10d4a8c0@mm.eutelsat.org> From: "Mendola Gaetano" To: "Diehl, Jeffrey" , "'Michael A Nachbaur'" , References: Subject: Re: pgsql Replication Proxy (was Re: Replication for a Date: Tue, 6 May 2003 19:54:41 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2800.1158 x-mimeole: Produced By Microsoft MimeOLE V6.00.2800.1165 X-Spam-Status: No, hits=-15.5 required=5.0 tests=BAYES_10,QUOTED_EMAIL_TEXT,REFERENCES autolearn=ham version=2.50 X-Spam-Level: X-Spam-Checker-Version: SpamAssassin 2.50 (1.173-2003-02-20-exp) X-Archive-Number: 200305/98 X-Sequence-Number: 13263 Postgres don't have the support ( yet ) for the 2 phase commit, so I think that is impossible do it now. What happen if the last server do an error in commit phase ? Regards Gaetano ----- Original Message ----- From: "Diehl, Jeffrey" To: "'Michael A Nachbaur'" ; Sent: Tuesday, May 06, 2003 6:28 PM Subject: Re: pgsql Replication Proxy (was Re: [SQL] Replication for a > I love this idea. The proxy could return immediately instead of making my > program block on update. > > One note, though. Instead of a stack, you need a FIFO. For example: > > delete from sometable where field=value; > insert into sometable (field) values (value1); > insert into sometable (field) values (value2); > .... > > > This code breaks in a stack and only works in a fifo. Minor point, though. > > So do we have a volunteer to write such a tool? > > Mike Diehl. > > -----Original Message----- > From: Michael A Nachbaur [mailto:mike@nachbaur.com] > Sent: Monday, May 05, 2003 1:57 PM > To: pgsql-sql@postgresql.org > Subject: pgsql Replication Proxy (was Re: [SQL] Replication for a large > database) > > > I've thought some more about this, and I want to pass this idea past you > guys. > What do you think about a replication proxy, essentially a daemon that sits > between a PostgreSQL client and server. Every single SQL query, transaction > > statement, etc that the proxy recieves it repeats back to all the database > servers. In this way, if a back-end database server goes down queries will > continue unabated (except the downed server won't recieve updates). > > Basically, the proxy server could intercept these queries and place them in > a > stack (on a per-database basis) and when every server in the queue > acknowledges the update, the query is removed from the stack. Each database > > server can have their own position in the stack, so if servers A and B > successfully run a query, but C doesn't (e.g. it requires human > intervention), C is removed from the list of acceptable servers but A and B > can keep moving through the queue. > > What do you think? Also, should this discussion be moved to another mailing > > list? > > On Monday 05 May 2003 12:26 pm, Michael A Nachbaur wrote: > > I have thought about this. The problem I come into is data consistancy. > I > > have at least 8 different processes that harvest data, and an intranet > > website that can also manipulate the database (to assign customers to > > different packages, re-assign modems to different customers, etc). Trying > > to maintain consistancy across the entire application would be such a > > nightmare, I don't want to think about it. > > > > If I go with a centralized middleware server that manages all database > > access, then I could perhaps do that in there...and then I could use > > transactions on both databases, and if either transaction fails then I'll > > roll back the other. But this would make my entire framework very rigid. > > > ---------------------------(end of broadcast)--------------------------- > TIP 1: subscribe and unsubscribe commands go to majordomo@postgresql.org > > > ---------------------------(end of broadcast)--------------------------- > TIP 3: if posting/reading through Usenet, please send an appropriate > subscribe-nomail command to majordomo@postgresql.org so that your > message can get through to the mailing list cleanly >