Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1m4lZs-0004Tq-96 for pgsql-hackers@arkaria.postgresql.org; Sat, 17 Jul 2021 14:46:04 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1m4lZq-0004w8-CI for pgsql-hackers@arkaria.postgresql.org; Sat, 17 Jul 2021 14:46:02 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1m4lZq-0004vz-4P for pgsql-hackers@lists.postgresql.org; Sat, 17 Jul 2021 14:46:02 +0000 Received: from out1-smtp.messagingengine.com ([66.111.4.25]) by makus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1m4lZn-0006Mf-L8 for pgsql-hackers@lists.postgresql.org; Sat, 17 Jul 2021 14:46:01 +0000 Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailout.nyi.internal (Postfix) with ESMTP id AA2175C00E7; Sat, 17 Jul 2021 10:45:57 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute4.internal (MEProxy); Sat, 17 Jul 2021 10:45:57 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:content-type :date:from:in-reply-to:message-id:mime-version:subject:to :x-me-proxy:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s= fm3; bh=3buvKvoS3Py7wCHZFnueMUZi0KJQDHZGsYCZyQPUd3U=; b=miYLEMy2 VtWPW4MSlZ7UUMlWc3fbc+z4mNyyJeeVHlx1tciYNHd4CWZMyIHSQMVlRhbhtFiv 6W8t855mpJLtjPeR9ghHBx05O6azptgjtSna9K5k05n1YqdCBdtAo0D7V5Pzs4ut 7wCkADbGCiyiswXhttVzPLukEJqTreuXfiR1E0F1NuPvkYE5dHctIp0T0VGX9Zdb ir6Ra+QpxRlmMV6OPhN3kiNLEhAzdg+5LKIqlE758xlqpwFIEj6Ew7oylzwZ1zsH NZPjlh4cYjvh6wFUN8sWn67ON3HkLycOmmdUfhcVupOApy+1AnneivkH+fFm9NBh 21gd6DirKtwLsQ== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvtddrvdehgdegtdcutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc fjughrpeffhffvuffkgggtugfgjgesthekredttddtjeenucfhrhhomheptehlvhgrrhho ucfjvghrrhgvrhgruceorghlvhhhvghrrhgvsegrlhhvhhdrnhhoqdhiphdrohhrgheqne cuggftrfgrthhtvghrnhepfeduleekteeigfegledtvddvvddtledugfefhfdtieevteef tdeuueehudeuvdelnecuffhomhgrihhnpegvnhhtvghrphhrihhsvggusgdrtghomhdpph hoshhtghhrvghsqhhlrdhorhhgnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghm pehmrghilhhfrhhomheprghlvhhhvghrrhgvsegrlhhvhhdrnhhoqdhiphdrohhrgh X-ME-Proxy: Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sat, 17 Jul 2021 10:45:56 -0400 (EDT) Received: by perhan.alvh.no-ip.org (Postfix, from userid 1000) id 0238E2A09BE; Sat, 17 Jul 2021 10:45:52 -0400 (-04) Date: Sat, 17 Jul 2021 10:45:52 -0400 From: Alvaro Herrera To: Bharath Rupireddy Cc: Justin Pryzby , PostgreSQL Hackers Subject: Re: What are exactly bootstrap processes, auxiliary processes, standalone backends, normal backends(user sessions)? Message-ID: <202107171445.v4okkq2xyytm@alvherre.pgsql> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On 2021-Jul-17, Bharath Rupireddy wrote: > On Thu, Jul 15, 2021 at 8:17 PM Justin Pryzby wrote: > > > > On Fri, Jul 09, 2021 at 09:24:19PM +0530, Bharath Rupireddy wrote: > > > I've always had a hard time distinguishing various types of > > > processes/terms used in postgres. I look at the source code every time > > > to understand them, yet I don't feel satisfied with my understanding. > > > I request any hacker (having a better idea than me) to help me with > > > what each different process does and how they are different from each > > > other? Of course, I'm clear with normal backends (user sessions), bg > > > workers, but the others need a bit more understanding. > > > > It sounds like something that should be in the glossary, which currently refers > > to but doesn't define "auxiliary processes". > > Thanks. I strongly feel that it should be documented somewhere. I will > be happy if someone with a clear idea about these various processes > does it. Auxiliary process Process of an instance in charge of some specific, hardcoded background task. Examples are the startup process, the WAL receiver (but not the WAL senders), the WAL writer, the archiver, the background writer, the checkpointer, the statistics collector, and the logger. We should probably include individual glossary entries for those that don't already have one. Maybe revise the entries for ones that do so that they start with "An auxiliary process that ..." I just realized that the autovac launcher is not nominally an auxiliary process (per SubPostmasterMain), which is odd since notionally it clearly is. Maybe we should include it in the list anyway, with something like "and the autovacuum launcher (but not the autovacuum workers)". -- Álvaro Herrera 39°49'30"S 73°17'W — https://www.EnterpriseDB.com/ "I am amazed at [the pgsql-sql] mailing list for the wonderful support, and lack of hesitasion in answering a lost soul's question, I just wished the rest of the mailing list could be like this." (Fotis) (http://archives.postgresql.org/pgsql-sql/2006-06/msg00265.php)