Re: pg11.1: dsa_area could not attach to segment

From: Justin Pryzby <pryzby(at)telsasoft(dot)com>
To: pgsql-hackers(at)postgresql(dot)org
Cc: Thomas Munro <thomas(dot)munro(at)enterprisedb(dot)com>
Subject: Re: pg11.1: dsa_area could not attach to segment
Date: 2019-02-06 02:10:47
Message-ID: 20190206021047.GU29720@telsasoft.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

I should have included query plan for the query which caused the "could not
find free pages" error.

This is a contrived query which I made up to try to exercise/stress bitmap
scans based on Thomas's working hypothesis for this error/bug. This seems to
be easier to hit than the other error ("could not attach to segment") - a loop
around this query has run into "free pages" several times today.

explain (analyze,costs off,timing off) SELECT * FROM eric_enodeb_metrics WHERE start_time>='2017-10-01' AND (site_id<1900 OR site_id>2700)

Gather (actual rows=82257 loops=1)
Workers Planned: 3
Workers Launched: 3
-> Parallel Append (actual rows=20564 loops=4)
-> Parallel Bitmap Heap Scan on eric_enodeb_201901 (actual rows=6366 loops=4)
Recheck Cond: ((site_id < 1900) OR (site_id > 2700))
Filter: (start_time >= '2017-10-01 00:00:00-04'::timestamp with time zone)
Heap Blocks: exact=2549
-> BitmapOr (actual rows=0 loops=1)
-> Bitmap Index Scan on eric_enodeb_201901_site_idx (actual rows=0 loops=1)
Index Cond: (site_id < 1900)
-> Bitmap Index Scan on eric_enodeb_201901_site_idx (actual rows=25463 loops=1)
Index Cond: (site_id > 2700)
-> Parallel Bitmap Heap Scan on eric_enodeb_201810 (actual rows=15402 loops=1)
Recheck Cond: ((site_id < 1900) OR (site_id > 2700))
Filter: (start_time >= '2017-10-01 00:00:00-04'::timestamp with time zone)
-> BitmapOr (actual rows=0 loops=1)
-> Bitmap Index Scan on eric_enodeb_201810_site_idx (actual rows=0 loops=1)
Index Cond: (site_id < 1900)
-> Bitmap Index Scan on eric_enodeb_201810_site_idx (actual rows=15402 loops=1)
Index Cond: (site_id > 2700)
-> Parallel Bitmap Heap Scan on eric_enodeb_201812 (actual rows=14866 loops=1)
Recheck Cond: ((site_id < 1900) OR (site_id > 2700))
Filter: (start_time >= '2017-10-01 00:00:00-04'::timestamp with time zone)
-> BitmapOr (actual rows=0 loops=1)
-> Bitmap Index Scan on eric_enodeb_201812_site_idx (actual rows=0 loops=1)
Index Cond: (site_id < 1900)
-> Bitmap Index Scan on eric_enodeb_201812_site_idx (actual rows=14866 loops=1)
Index Cond: (site_id > 2700)
-> Parallel Bitmap Heap Scan on eric_enodeb_201811 (actual rows=7204 loops=2)
Recheck Cond: ((site_id < 1900) OR (site_id > 2700))
Filter: (start_time >= '2017-10-01 00:00:00-04'::timestamp with time zone)
Heap Blocks: exact=7372
-> BitmapOr (actual rows=0 loops=1)
-> Bitmap Index Scan on eric_enodeb_201811_site_idx (actual rows=0 loops=1)
Index Cond: (site_id < 1900)
-> Bitmap Index Scan on eric_enodeb_201811_site_idx (actual rows=14408 loops=1)
Index Cond: (site_id > 2700)
-> Parallel Bitmap Heap Scan on eric_enodeb_201902 (actual rows=5128 loops=1)
Recheck Cond: ((site_id < 1900) OR (site_id > 2700))
Filter: (start_time >= '2017-10-01 00:00:00-04'::timestamp with time zone)
Heap Blocks: exact=3374
-> BitmapOr (actual rows=0 loops=1)
-> Bitmap Index Scan on eric_enodeb_201902_site_idx (actual rows=0 loops=1)
Index Cond: (site_id < 1900)
-> Bitmap Index Scan on eric_enodeb_201902_site_idx (actual rows=5128 loops=1)
Index Cond: (site_id > 2700)
[...]

Justin

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Andreas Karlsson 2019-02-06 02:11:33 Re: Feature: temporary materialized views
Previous Message Alvaro Herrera 2019-02-06 02:10:37 Re: Undo logs