Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1u4k4a-006gyX-8p for pgsql-hackers@arkaria.postgresql.org; Tue, 15 Apr 2025 17:27:48 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1u4k4X-00E5o9-JR for pgsql-hackers@arkaria.postgresql.org; Tue, 15 Apr 2025 17:27:46 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1u4k4X-00E5mi-7Q for pgsql-hackers@lists.postgresql.org; Tue, 15 Apr 2025 17:27:46 +0000 Received: from mail-pf1-x431.google.com ([2607:f8b0:4864:20::431]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1u4k4U-000FYO-31 for pgsql-hackers@lists.postgresql.org; Tue, 15 Apr 2025 17:27:45 +0000 Received: by mail-pf1-x431.google.com with SMTP id d2e1a72fcca58-7398d65476eso4622461b3a.1 for ; Tue, 15 Apr 2025 10:27:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1744738061; x=1745342861; darn=lists.postgresql.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=XdsfQMVQEV4NJX8abDMjBkHor+4TNd6mMg8QqBxq4Zw=; b=lk7Urs2fu6EB4l6tnWcgvrfg4ouL6DqtLY2xPDUhyVlbFfReDZeOISEUjyL4Xil8jx h3F/+8YeyapnDXO2vT4AAj6Lv/fuFVCvnobnt6chDrBuTtCTRfuUYn6Pq348FUbYPs2V uXsnFHcd3L/X3VDGO0Am9AQG97GqwEZYk0D4qfhx5qB8ZGueardGPalPbQKaLWRQjEP6 bb/chK53jQhS1eCfDa7LeSaRq+5RPNX2YRLAVD+KgMSJBEmXunuA8IhIaNXcHJNAw6ex eCv9w26gBvOU/vLoELj/gCJ1w8PbrsuysJ4ocXi/+yNAuMTy7L4BFrIpgogD3ts2SBnX RRfg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744738061; x=1745342861; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=XdsfQMVQEV4NJX8abDMjBkHor+4TNd6mMg8QqBxq4Zw=; b=i8KoC/wmMj7a/m5ftWvAqyWZ/dGBLLNvptJ5CdKW536KJJjTIp9B/ZxlOAJ4t0VauZ H4aS8pdm6cafgXWZOp+pJsJm89SJjZExOrfEliCPFrPbboLhUgDrAmUE0zP8RChL011L RhpUtHVCz3W4Rq3JjQeh6YgIUorJFUGXqG1zhqTYLYHIg1p58Hiqag5Bvt5+2ZZkgzcM RZyVqLo20P0pbkr6zW2mUpbzGGoscrRhnJXOH5qjuGfsnuciNv2hmDmyvgSogkN+TdEj 7dK7AYUx5pGdaZUItl8nvWAi+XjsrgQ9ul0PETaQrMJwQs9vIntEBjdLA2t2M3rXpSGi GoWA== X-Gm-Message-State: AOJu0YzL5js7kv28b8dHajZUkOfX1bD4hMyiG8/gCuAVLsrEzYtcSxQx 9/WAuHumjFvSlMARh2cqD446MXWkkrnehk+E+o5/zosamKzo9HU= X-Gm-Gg: ASbGncvScd+mI2qBmUMWnynCrV/qkLl/3WA+BQ71dhH37lKej1mgaNx7l0eC05883WJ PPAk0++3xyPQUogZ+ndSCawiZWiFYTwVKXHsyMaGSikCoaR5JKdQrudHPZgWMd7R7Es3cutnKTm /HkRM9Q4Tf1ueUMqpau5KAzcQrQAejNi2PVsmVChRbF68bHIGkvLg49bbS0O5NHVEMC/mNoj/e2 DRvWNAmYVh9Er02lgansLTchxt6oT+hhlC9CHW0qMzykFuNUO9e3oTGrz6lLFP0C+grdRcsKeXO c4wpWadEjo3eaRtbUYsNBjAP5nFq7g== X-Google-Smtp-Source: AGHT+IFwtkMHFr3JwHpeIlVofDUwNMNw4aVRHLScg41yQ9naiGL8m1FUco+pVCkqeEEqbRJ+gPeEDg== X-Received: by 2002:a05:6a00:4f4a:b0:736:b3cb:5db with SMTP id d2e1a72fcca58-73c0c9f6fd3mr5104139b3a.11.1744738061371; Tue, 15 Apr 2025 10:27:41 -0700 (PDT) Received: from ark.local ([2a09:bac5:5151:2373::388:3b]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-73bd22f0f9bsm9078356b3a.104.2025.04.15.10.27.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 15 Apr 2025 10:27:40 -0700 (PDT) Received: by ark.local (Postfix, from userid 1000) id 065BFF20074; Tue, 15 Apr 2025 20:27:35 +0300 (MSK) Date: Tue, 15 Apr 2025 20:27:34 +0300 From: Konstantin Osipov To: Greg Sabino Mullane Cc: pgsql-hackers@lists.postgresql.org Subject: Re: Built-in Raft replication Message-ID: References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk * Greg Sabino Mullane [25/04/15 18:08]: > > If anyone is working on Raft already I'd be happy to discuss > > the details. I am fairly new to the PostgreSQL hackers ecosystem > > so cautious of starting work in isolation/knowing there is no > > interest in accepting the feature into the trunk. > > > > Putting aside the technical concerns about this specific idea, it's best to > start by laying out a very detailed plan of what you would want to change, > and what you see as the costs and benefits. It's also extremely helpful to > think about developing this as an extension. If you get stuck due to > extension limitations, propose additional hooks. If the hooks will not > work, explain why. > > Getting this into core is going to be a long, multi-year effort, in which > people are going to be pushing back the entire time, so prepare yourself > for that. My immediate retort is going to be: why would we add this if > there are existing tools that already do the job just fine? Postgres has > lots of tasks that it is happy to let other programs/OS > subsystems/extensions/etc. handle instead. I had hoped I explained why external state providers can not provide the same seamless UX as built-in ones. The key idea is to have a built-in configuration management, so that adding and removing replicas does not require changes in multiple disjoint parts of the installation (server configurations, proxies, clients). I understand and accept that it's a multi-year effort, but I do not accept the retort - my main point is that external tools are not a replacement, and I'd like to reach consensus on that. -- Konstantin Osipov, Moscow, Russia