Hi All, Following are the steps that i have followed to verify the WAL Logging of hash index,
1. I used Mithun's patch to improve coverage of hash index code [1] to verify the WAL Logging of hash index. Firstly i have confirmed if all the XLOG records associated with hash index are being covered or not using this patch. In case if any of the XLOG record for hash index operation is not being covered i have added a testcase for it. I have found that one of the XLOG record 'XLOG_HASH_MOVE_PAGE_CONTENTS' was not being covered and added a small testcase for the same. The patch for this is available @ [2]. 2. I executed the regression test suite and found all the hash indexes that are getting created as a part of regression test suite using the below query. SELECT t.relname index_name, t.oid FROM pg_class t JOIN pg_am idx ON idx.oid = t.relam WHERE idx.amname = 'hash'; 3. Thirdly, I have calculated the number of pages associated with each hash index and compared every page of hash index on master and standby server using pg_filedump tool. As for example if the number of pages associated with 'con_hash_index' is 10 then here is what i did, On master: ----------------- select pg_relation_filepath('con_hash_index'); pg_relation_filepath ---------------------- base/16408/16433 (1 row) ./pg_filedump -if -R 0 9 /home/edb/git-clone-postgresql/postgresql/TMP/postgres/master/base/16408/16433 > /tmp/file1 On Slave: --------------- select pg_relation_filepath('con_hash_index'); pg_relation_filepath ---------------------- base/16408/16433 (1 row) ./pg_filedump -if -R 0 9 /home/edb/git-clone-postgresql/postgresql/TMP/postgres/standby/base/16408/16433 > /tmp/file2 compared file1 and file2 using some diff tool. Following are the list of hash indexes that got created inside regression database when regression test suite was executed on a master server. hash_i4_index hash_name_index hash_txt_index hash_f8_index con_hash_index hash_idx In short, this is all i did and found no issues during testing. Please let me know if you need any further details. I would like to Thank Amit for his support and guidance during the testing phase. [1] - https://www.postgresql.org/message-id/CAA4eK1JOBX%3DYU33631Qh-XivYXtPSALh514%2BjR8XeD7v%2BK3r_Q%40mail.gmail.com [2] - https://www.postgresql.org/message-id/CAE9k0PkNjryhSiG53mjnKFhi%2BMipJMjSa%3DYkH-UeW3bfr1HPJQ%40mail.gmail.com With Regards, Ashutosh Sharma EnterpriseDB: http://www.enterprisedb.com -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers