Re: WAL usage calculation patch
Julien Rouhaud <rjuju123@gmail.com>
Commits
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Change the display of WAL usage statistics in Explain.
- 69bfaf2e1de4 13.0 landed
-
Cosmetic fixups for WAL usage work.
- ef08ca113fe3 13.0 landed
-
Allow parallel create index to accumulate buffer usage stats.
- 5c71362174eb 13.0 landed
- f179e9f01b65 11.8 landed
- 13823ad3b012 12.3 landed
-
Allow autovacuum to log WAL usage statistics.
- b7ce6de93b59 13.0 landed
-
Add the option to report WAL usage in EXPLAIN and auto_explain.
- 33e05f89c53e 13.0 landed
-
Allow pg_stat_statements to track WAL usage statistics.
- 6b466bf5f2be 13.0 landed
-
Add infrastructure to track WAL usage.
- df3b181499b4 13.0 landed
-
Include information on buffer usage during planning phase, in EXPLAIN output, take two.
- ce77abe63cfc 13.0 cited
-
Include information on buffer usage during planning phase, in EXPLAIN output.
- ed7a5095716e 13.0 cited
-
Allow parallel vacuum to accumulate buffer usage.
- 3a5e22138a8d 13.0 landed
-
Allow pg_stat_statements to track planning statistics.
- 17e03282241c 13.0 cited
Attachments
- v4-0001-Track-WAL-usage.patch (text/plain)
On Sun, Mar 15, 2020 at 09:52:18PM +0300, Kirill Bychik wrote: > > > > On Thu, Mar 5, 2020 at 8:55 PM Kirill Bychik <kirill.bychik@gmail.com> wrote: > After extensive thinking and some code diving, I did not manage to > come up with a sane idea on how to expose data about autovacuum WAL > usage. Must be the flu. > > > > Anyways, I believe this change could be bigger than FPI. I propose to > > > plan a separate patch for it, or even add it to the TODO after the > > > core patch of wal usage is merged. > > > > Just in case, if the problem is a lack of time, I'd be happy to help > > on that if needed. Otherwise, I'll definitely not try to block any > > progress for the feature as proposed. > > Please feel free to work on any extension of this patch idea. I lack > both time and knowledge to do it all by myself. I'm adding a 3rd patch on top of yours to expose the new WAL counters in pg_stat_database, for vacuum and autovacuum. I'm not really enthiusiastic with this approach but I didn't find better, and maybe this will raise some better ideas. The only sure thing is that we're not going to add a bunch of new fields in pg_stat_all_tables anyway. We can also drop this 3rd patch entirely if no one's happy about it without impacting the first two. > > > Please expect a new patch version next week, with FPI counters added. > > Please find attached patch version 003, with FP writes and minor > corrections. Hope i use attachment versioning as expected in this > group :) Thanks! > Test had been reworked, and I believe it should be stable now, the > part which checks WAL is written and there is a correlation between > affected rows and WAL records. I still have no idea how to test > full-page writes against regular updates, it seems very unstable. > Please share ideas if any. I just reviewed the patches, and it globally looks good to me. The way to detect full page images looks sensible, but I'm really not familiar with that code so additional review would be useful. I noticed that the new wal_write_fp_records field in pg_stat_statements wasn't used in the test. Since I have to add all the patches to make the cfbot happy, I slightly adapted the tests to reference the fp column too. There was also a minor issue in the documentation, as wal_records and wal_bytes were copy/pasted twice while wal_write_fp_records wasn't documented, so I also changed it. Let me know if you're ok with those changes.