I cann't use swap, but this is something like cgroup&EXT4's problem(when fsync call with many writeback pages).
i use xfs&cgroup no problem.
But, PostgreSQL can also improve checkpoint to solve the problem
(when checkpoint start, all bgwrite & backend process evict dirty page from buffer to disk ,can call sync_file_range(sync mode), and checkpointer call fsync before ).
--
公益是一辈子的事,I'm Digoal,Just Do It.
At 2016-09-29 22:48:19, "Kevin Grittner" <kgrittn@gmail.com> wrote:
>On Thu, Sep 29, 2016 at 12:35 AM, <digoal@126.com> wrote:
>
>> encountered the problem of Hang checkpoint.
>
>> vm.overcommit_ratio = 90
>> vm.swappiness = 0
>
>If you change vm.swappiness to 10 can you still see the problem?
>
>The reason I ask is that vm.overcommit_ratio sets the maximum RAM
>that can be allocated to swap size plus the specified percentage of
>actual RAM (in your case 90% of RAM in addition to allocated swap
>space). On the other hand, depending on kernel version,
>vm.swappiness = 0 may be telling the OS not to swap anything out,
>even if it is never accessed (i.e., it should prefer to throw away
>even a very recently referenced page in the cache). This
>combination of settings seems somewhat likely to cause problems.
>
>While "conventional wisdom" is that setting vm.swappiness = 0
>improves performance, the few benchmarks I have seen related to
>that show otherwise.
>
>--
>Kevin Grittner
>EDB: http://www.enterprisedb.com
>The Enterprise PostgreSQL Company