Received: from localhost (maia-3.hub.org [200.46.204.184]) by postgresql.org (Postfix) with ESMTP id 2F4929FB46C for ; Fri, 30 Mar 2007 21:37:14 -0300 (ADT) Received: from postgresql.org ([200.46.204.71]) by localhost (mx1.hub.org [200.46.204.184]) (amavisd-maia, port 10024) with ESMTP id 35419-02 for ; Fri, 30 Mar 2007 21:36:58 -0300 (ADT) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.4 Received: from nz-out-0506.google.com (nz-out-0506.google.com [64.233.162.228]) by postgresql.org (Postfix) with ESMTP id 34C349FB4C6 for ; Fri, 30 Mar 2007 21:37:04 -0300 (ADT) Received: by nz-out-0506.google.com with SMTP id r28so561529nza for ; Fri, 30 Mar 2007 17:37:02 -0700 (PDT) DKIM-Signature: a=rsa-sha1; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:mime-version:content-type:content-transfer-encoding:content-disposition; b=OUlvw6tdhv5T3gUX5pI7WXvOoP21KbRmb7C526B/owXgIpYhlBJQ2FenFQ805seNDzjld4srA49wd33P17azIsiF9QJxlCRWWsKRY0BavgPHGZ9lNV8giTxOqzKWwlveDTQ7LhBSxbIyS1ipLtt14mM0HRFJjW88QXE35XJif+E= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:mime-version:content-type:content-transfer-encoding:content-disposition; b=nCJAld0UTKPRPCFJP5T7bTc1shtWX2ZqjmKHvjamIdByTP4zDdZZl4lCF+9anadJgjuv3IAMvmoOoi9pOohT0XyEkZ/DZkeNzF4DyUCR56kpUy1lfhJ5gTZH3Nb4z49oT+kvcReQIgJPS8W7HUT9dv/9ETUlQGKZohwxoBqsxxo= Received: by 10.65.240.17 with SMTP id s17mr5100104qbr.1175301421117; Fri, 30 Mar 2007 17:37:01 -0700 (PDT) Received: by 10.65.74.7 with HTTP; Fri, 30 Mar 2007 17:37:01 -0700 (PDT) Message-ID: Date: Sat, 31 Mar 2007 09:37:01 +0900 From: "Koichi Suzuki" To: pgsql-hackers@postgresql.org, pgsql-patches@postgresql.org Subject: Re: [PATCHES] Full page writes improvement, code update MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline X-Virus-Scanned: Maia Mailguard 1.0.1 X-Archive-Number: 200703/1806 X-Sequence-Number: 101290 Simon; Tom; Koichi is writing. Your question is how to determine WAL record generated between pg_start_backup and pg_stop_backup and here's an answer. XLogInsert( ) already has a logic to determine if inserting WAL record is between pg_start_backup and pg_stop_backup. Currently it is used to remove full_page_writes when full_page_writes=off. We can use this to mark WAL records. We have one bit not used in WAL record header, the last bit of xl_info, where upper four bits are used to indicate the resource manager and three of the rest are used to indicate number of full page writes included in the record. So in my proposal, this unused bit is used to mark that full page writes must not be removed at offline optimization by pg_complesslog. Sorry I didn't have mailing list capability from home and have just completed my subscription from home. I had to create new thread to continue my post. Sorry for confusion. Please refer to the original thread about this discussion. Best Regards; -- ------ Koichi Suzuki