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 1pcPJK-0007M1-4D for pgsql-hackers@arkaria.postgresql.org; Wed, 15 Mar 2023 11:28:50 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1pcPJI-0001BW-2m for pgsql-hackers@arkaria.postgresql.org; Wed, 15 Mar 2023 11:28:48 +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 1pcPJH-0001BK-Of for pgsql-hackers@lists.postgresql.org; Wed, 15 Mar 2023 11:28:47 +0000 Received: from new1-smtp.messagingengine.com ([66.111.4.221]) by makus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pcPJA-0004kG-3q for pgsql-hackers@postgresql.org; Wed, 15 Mar 2023 11:28:46 +0000 Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailnew.nyi.internal (Postfix) with ESMTP id 4A4645821A7; Wed, 15 Mar 2023 07:28:39 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute3.internal (MEProxy); Wed, 15 Mar 2023 07:28:39 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm2; t= 1678879719; x=1678886919; bh=qnAaO4fOizClli7sNZSP/fpJY6RwFt0Gh4b xT4Owcp0=; b=p4P8kd9l641m98o2HSK24ryVCCk08ouXIBj9Y9s/ih33dzFIxOa 76xLxFFu0/5YKGidwAMoOgCYyuA/Sn4S8DoGKNFBWprkw9JJM/aKOpSFX2U/n0MI Gjg3PZ5NWafe7ccnXMVCC4Y4TEwGU6z+pUqBoIRtNifOJHhENukJVSsH5kE8yiqO vPUe4fNs4FgWt2rrD+BwbwW0nIWg5jm9KMr9nMNUTa5PVDeVQYYuEo2WgnkiR6Hn CZtqqFyzXqM0RtPllkFhEM/Lr0u6olE3e70svZQb5ajI9OTJgT2zI5poiySVE6So WpKPNqQFFSlYbYBGYKE5XO/Cghf3h+vwMZw== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrvddvkedgvdekucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtfeejnecuhfhrohhmpefrvght vghrucfgihhsvghnthhrrghuthcuoehpvghtvghrrdgvihhsvghnthhrrghuthesvghnth gvrhhprhhishgvuggsrdgtohhmqeenucggtffrrghtthgvrhhnpeeftdffueeklefhieek vdduteevuefhteetveffteekkefgteffhfegtedvtdeffeenucffohhmrghinhepmhgvsh honhgsuhhilhgurdgtohhmpdhpohhsthhgrhgvshhqlhdrohhrghenucevlhhushhtvghr ufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehpvghtvghrrdgvihhsvghnth hrrghuthesvghnthgvrhhprhhishgvuggsrdgtohhm X-ME-Proxy: Feedback-ID: i131946ab:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed, 15 Mar 2023 07:28:37 -0400 (EDT) Message-ID: <0517adcd-4fea-f20d-0a74-31f75627138e@enterprisedb.com> Date: Wed, 15 Mar 2023 12:28:36 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.8.0 Subject: Re: Documentation for building with meson Content-Language: en-US To: samay sharma , Andres Freund Cc: Justin Pryzby , Nazir Bilal Yavuz , John Naylor , pgsql-hackers@postgresql.org References: <20221105213903.fc7igvsbhnijdmqf@awork3.anarazel.de> <20221123063654.GH11463@telsasoft.com> <20221123201620.GK11463@telsasoft.com> <6f9c0595-1de0-ca15-b5fc-c650c3f57016@enterprisedb.com> <20221201172139.ua64fs5m7soyunqk@awork3.anarazel.de> From: Peter Eisentraut In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk > [PATCH v8 1/5] Make minor additions and corrections to meson docs The last hunk revealed that there is some mixing up between meson setup and meson configure. This goes a bit further. For example, earlier it says that to get a list of meson setup options, call meson configure --help and look at https://mesonbuild.com/Commands.html#configure, which are both wrong. Also later throughout the text it uses one or the other. I think this has the potential to be very confusing, and we should clean this up carefully. The text about additional meson test options maybe should go into the regress.sgml chapter? > [PATCH v8 2/5] Add data layout options sub-section in installation docs This makes sense. Please double check your patch for correct title casing, vertical spacing of XML, to keep everything looking consistent. This text isn't yours, but since your patch emphasizes it, I wonder if it could use some clarification: + These options affect how PostgreSQL lays out data on disk. + Note that changing these breaks on-disk database compatibility, + meaning you cannot use pg_upgrade to upgrade to + a build with different values of these options. This isn't really correct. What breaking on-disk compatibility means is that you can't use a server compiled one way with a data directory initialized by binaries compiled another way. pg_upgrade may well have the ability to upgrade between one or the other; that's up to pg_upgrade to figure out but not an intrinsic property. (I wonder why pg_upgrade cares about the WAL block size.) > [PATCH v8 3/5] Remove Anti-Features section from Installation from source docs Makes sense. But is "--disable-thread-safety" really a developer feature? I think not. > [PATCH v8 4/5] Re-organize Miscellaneous section This moves the Miscellaneous section after Developer Features. I think Developer Features should be last. Maybe should remove this section and add the options to the regular PostgreSQL Features section. Also consider the grouping in meson_options.txt, which is slightly different yet. > [PATCH v8 5/5] Change Short Version for meson installation guide +# create working directory +mkdir postgres +cd postgres + +# fetch source code +git clone https://git.postgresql.org/git/postgresql.git src This comes after the "Getting the Source" section, so at this point they already have the source and don't need to do "git clone" etc. again. +# setup and enter build directory (done only first time) +## Unix based platforms +meson setup build src --prefix=$PWD/install + +## Windows +meson setup build src --prefix=%cd%/install Maybe some people work this way, but to me the directory structures you create here are completely weird. +# Initialize a new database +../install/bin/initdb -D ../data + +# Start database +../install/bin/pg_ctl -D ../data/ -l logfile start + +# Connect to the database +../install/bin/psql -d postgres The terminology here needs to be tightened up. You are using "database" here to mean three different things.