powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / PgSQL неохотно ест память. Статьи по оптимизации.
25 сообщений из 50, страница 2 из 2
PgSQL неохотно ест память. Статьи по оптимизации.
    #34281785
st_serg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нашел у себя остатки логов squida за три месяца, потестил вот что вышло
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
postgres=# \d accesslog
                                 Таблица "postgres.accesslog"
    Колонка     |             Тип             |                 Модификаторы
----------------+-----------------------------+-----------------------------------------------
 f_timestamp    | timestamp without time zone |
 f_usec         | character( 3 )                | not null default '000'::bpchar
 f_cache_msec   | integer                     | not null default  0 
 f_client       | character varying( 15 )       | not null default '0.0.0.0'::character varying
 f_tag          | character varying( 30 )       | not null default '-'::character varying
 f_http_code    | integer                     | not null default  0 
 f_size         | bigint                      | not null default  0 ::bigint
 f_method       | character varying( 50 )       | not null default '-'::character varying
 f_url          | text                        | not null
 f_user         | character varying( 255 )      | not null default '-'::character varying
 f_hier_str     | character varying( 100 )      | not null default '-'::character varying
 f_hier_host    | character varying( 15 )       | not null default '0.0.0.0'::character varying
 f_content_type | character varying( 50 )       | not null default '-'::character varying

postgres=# select count( 1 ), date_trunc('month', f_timestamp) from accesslog group by date_trunc('month', f_timestamp);
 count  |     date_trunc
--------+---------------------
  223684  |  2005 - 10 - 01   00 : 00 : 00 
  321125  |  2005 - 11 - 01   00 : 00 : 00 
  366796  |  2005 - 12 - 01   00 : 00 : 00 
   36251  |  2006 - 01 - 01   00 : 00 : 00 
для трех разных месяцев тестил запросы вида
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
( 1 )
explain analyze
select f_user, f_url, sum(f_size)
from accesslog
where f_timestamp >= to_timestamp('01.10.2005', 'dd.mm.yyyy')
   and f_timestamp < to_timestamp('01.11.2005', 'dd.mm.yyyy')
group by f_user, f_url;

( 2 )
explain analyze
select f_user, f_url, sum(f_size)
from accesslog
where date_trunc('month', f_timestamp) = to_timestamp('01.10.2005', 'dd.mm.yyyy')
group by f_user, f_url;
Для (1) без индексов результаты explain analyze
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
 GroupAggregate  (cost= 83752 . 91 .. 86376 . 72  rows= 23323  width= 62 ) (actual time= 48679 . 277 .. 55491 . 230  rows= 73012  loops= 1 )
   ->  Sort  (cost= 83752 . 91 .. 84335 . 98  rows= 233227  width= 62 ) (actual time= 48679 . 193 .. 54682 . 376  rows= 223684  loops= 1 )
         Sort Key: f_user, f_url
         ->  Seq Scan on accesslog  (cost= 0 . 00 .. 43821 . 12  rows= 233227  width= 62 ) (actual time= 9 . 099 .. 23499 . 679  rows= 223684  loops= 1 )
               Filter: ((f_timestamp >= to_timestamp('01.10.2005'::text, 'dd.mm.yyyy'::text)) AND (f_timestamp < to_timestamp('01.11.2005'::
text, 'dd.mm.yyyy'::text)))
 Total runtime:  55656 . 237  ms
Total runtime: 64808.371 ms
Total runtime: 78175.642 ms

Для (1) с индексом create index accesslog_i1 on accesslog(f_timestamp)
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
 GroupAggregate  (cost= 53281 . 44 .. 55905 . 25  rows= 23323  width= 62 ) (actual time= 32847 . 725 .. 38873 . 387  rows= 73012  loops= 1 )
   ->  Sort  (cost= 53281 . 44 .. 53864 . 51  rows= 233227  width= 62 ) (actual time= 32847 . 642 .. 38062 . 552  rows= 223684  loops= 1 )
         Sort Key: f_user, f_url
         ->  Index Scan using accesslog_i1 on accesslog  (cost= 0 . 01 .. 13349 . 65  rows= 233227  width= 62 ) (actual time= 101 . 482 .. 9381 . 970  rows= 2236 
 84  loops= 1 )
               Index Cond: ((f_timestamp >= to_timestamp('01.10.2005'::text, 'dd.mm.yyyy'::text)) AND (f_timestamp < to_timestamp('01.11.200
5'::text, 'dd.mm.yyyy'::text)))
Total runtime: 50110.675 ms
Total runtime: 65132.694 ms

Для (2) без индекса
Код: plaintext
1.
2.
3.
4.
 HashAggregate  (cost= 41487 . 02 .. 41492 . 95  rows= 474  width= 62 ) (actual time= 22970 . 458 .. 23134 . 951  rows= 73012  loops= 1 )
   ->  Seq Scan on accesslog  (cost= 0 . 00 .. 41451 . 48  rows= 4739  width= 62 ) (actual time= 31 . 631 .. 21767 . 397  rows= 223684  loops= 1 )
         Filter: (date_trunc('month'::text, f_timestamp) = to_timestamp('01.10.2005'::text, 'dd.mm.yyyy'::text))
 Total runtime:  23252 . 633  ms
Total runtime: 26372.215 ms
Total runtime: 25284.152 ms

Для (2) с индексом
create index accesslog_i1 on accesslog(date_trunc('month', f_timestamp));
Код: plaintext
1.
2.
3.
4.
5.
6.
 HashAggregate  (cost= 12102 . 91 .. 12108 . 83  rows= 474  width= 62 ) (actual time= 7744 . 500 .. 7902 . 448  rows= 73012  loops= 1 )
   ->  Bitmap Heap Scan on accesslog  (cost= 91 . 65 .. 12067 . 36  rows= 4739  width= 62 ) (actual time= 733 . 481 .. 6869 . 347  rows= 223684  loops= 1 )
         Recheck Cond: (date_trunc('month'::text, f_timestamp) = to_timestamp('01.10.2005'::text, 'dd.mm.yyyy'::text))
         ->  Bitmap Index Scan on accesslog_i1  (cost= 0 . 00 .. 91 . 65  rows= 4739  width= 0 ) (actual time= 691 . 338 .. 691 . 338  rows= 223684  loops= 1 )
               Index Cond: (date_trunc('month'::text, f_timestamp) = to_timestamp('01.10.2005'::text, 'dd.mm.yyyy'::text))
 Total runtime:  8011 . 846  ms
Total runtime: 9946.532 ms
Total runtime: 9741.876 ms

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
postgres=# select count( 1 ) from accesslog;
 count
--------
  947856 
( 1  запись)

Время:  20059 , 000  мс

PS.
PostgreSQL 8.2.0 on i686-pc-mingw32, compiled by GCC gcc.exe (GCC) 3.4.2 (mingw-special)
с дефолтными параметрами
использовать условие date_part('month', dt) = date_part('month', now()) можно только в том случае, если в таблицы находятся данные за один и тотже год.
...
Рейтинг: 0 / 0
PgSQL неохотно ест память. Статьи по оптимизации.
    #34281890
resu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
я что то не ухватил "dt" - ето ДАТА?
здесь уже предлагали по триггеру обработку делать. я бы сказал, добавить поле в таблицу:

month int4

по тригеру -> NEW.month := date_part('month', NEW.dt);

Код: plaintext
WHERE date_part('month', dt) = date_part('month', now())

index (bitmap) по (month)

выборку
Код: plaintext
WHERE month = date_part('month', now())
+ данные за прошлый год в другую таблицy(ы)
...
Рейтинг: 0 / 0
PgSQL неохотно ест память. Статьи по оптимизации.
    #34282448
Andrey Daeron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
st_sergнашел у себя остатки логов squida за три месяца, потестил вот что вышло

Чето круто расходятся в некторых вариантах представление ПГ о кол-ве записей и реальность.
VACUUM FULL ANALYZE?
...
Рейтинг: 0 / 0
PgSQL неохотно ест память. Статьи по оптимизации.
    #34283007
st_serg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andrey Daeron st_sergнашел у себя остатки логов squida за три месяца, потестил вот что вышло

Чето круто расходятся в некторых вариантах представление ПГ о кол-ве записей и реальность.
VACUUM FULL ANALYZE?

(1) w/o index
Total runtime: 39047.196 ms
Total runtime: 54694.586 ms
Total runtime: 67088.693 ms

(1) w index
Total runtime: 37657.610 ms
Total runtime: 56931.009 ms
Total runtime: 62887.207 ms

(2) w/o index
Total runtime: 7323.152 ms
Total runtime: 8503.657 ms
Total runtime: 8776.206 ms

(2) w index
Total runtime: 35257.409 ms
Total runtime: 47983.718 ms
Total runtime: 64576.001 ms

В (2) с индексом после vacuum full analyze план запроса и время выполнения аналогичны (1) c индексом. set enable_sort = off не помогло...
...
Рейтинг: 0 / 0
PgSQL неохотно ест память. Статьи по оптимизации.
    #34283079
darkfox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
так, подведу итоги сегодняшних мытарств:

Структура:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
CREATE TABLE "traffic"."squidlog" (
  "dt" TIMESTAMP WITHOUT TIME ZONE NOT NULL, 
  "replytime" NUMERIC( 10 , 0 ), 
  "dip" VARCHAR( 15 ) NOT NULL, 
  "r_mnemo" VARCHAR( 128 ), 
  "r_code" NUMERIC( 3 , 0 ), 
  "bytes" NUMERIC( 12 , 0 ) NOT NULL, 
  "method" VARCHAR( 12 ), 
  "url" TEXT NOT NULL, 
  "login" VARCHAR( 128 ) NOT NULL, 
  "connect" VARCHAR( 64 ), 
  "mimetype" VARCHAR( 100 ), 
  "surl" VARCHAR( 254 ), 
  "unixdt" NUMERIC( 14 , 3 )
) WITH OIDS;

CREATE INDEX "squidlog_bytes" ON "traffic"."squidlog"
  USING btree ("bytes");

CREATE INDEX "squidlog_login" ON "traffic"."squidlog"
  USING hash ("login");


на момент выполнения запроса 400тыс. записей:
Делаем:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
select
      tmp.login,
      sum(tmp.bytes) as bytes,
      round(sum(tmp.bytes)/ 1024 / 1024 ,  3 ) as Mb
from
(
 SELECT bytes, login FROM traffic.squidlog
 WHERE  (date_part('month'::text, squidlog.dt) = date_part('month'::text, now()))
) as tmp
group by login
order by bytes desc

Результат выполнения занимает не менее 2сек. Для такого объёма - МНОГО!

explain analyze от вышеприведённого запроса кажет:
Код: plaintext
1.
2.
3.
4.
5.
Sort  (cost= 24524 . 40 .. 24524 . 40  rows= 1  width= 20 ) (actual time= 2231 . 615 .. 2231 . 652  rows= 107  loops= 1 )
Sort Key: sum(squidlog.bytes)
->  HashAggregate  (cost= 24524 . 38 .. 24524 . 39  rows= 1  width= 20 ) (actual time= 2230 . 807 .. 2231 . 330  rows= 107  loops= 1 )
->  Seq Scan on squidlog  (cost= 0 . 00 .. 24507 . 36  rows= 2269  width= 20 ) (actual time= 12 . 104 .. 1433 . 962  rows= 457108  loops= 1 )
Filter: (date_part('month'::text, dt) = date_part('month'::text, now()))
Total runtime:  2231 . 772  ms
...
Рейтинг: 0 / 0
PgSQL неохотно ест память. Статьи по оптимизации.
    #34283188
darkfox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Поигрался с условием отбора по дате.
Заменил на: where (dt >= date_trunc('month', current_date::timestamp))
Ускорился на 0.1сек )




---
"Нефига себе у вас запросы!!!", сказала база данных и подохла...
...
Рейтинг: 0 / 0
PgSQL неохотно ест память. Статьи по оптимизации.
    #34283200
darkfox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Главное самое забыл!
Сегодня подправил КОНФ.


kernel.shmmax=1342177280
kernel.shmall=1342177280

shared_buffers = 32768
work_mem = 1248576
maintenance_work_mem = 327680
max_stack_depth = 2048
sort_mem = 32768

effective_cashe_size = 1048576

Куда ещё смотреть... ума не приложу. Покурю ещё доки.
Завтра погляжу...

---
"Нефига себе у вас запросы!!!", сказала база данных и подохла...
...
Рейтинг: 0 / 0
PgSQL неохотно ест память. Статьи по оптимизации.
    #34283355
СергейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
darkfox

Куда ещё смотреть... ума не приложу. Покурю ещё доки.
Завтра погляжу...


Vernut' INDEX'y po date_part('month',....) i sdelat' CLUSTER po etomu index'u.
...
Рейтинг: 0 / 0
PgSQL неохотно ест память. Статьи по оптимизации.
    #34284034
darkfox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
авот в связи с этим ещё один вопрос.
Если существует три разных индекса:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
CREATE INDEX "squidlog_dt" ON "traffic"."squidlog"
  USING btree ("dt");

CREATE INDEX "squidlog_by_month" ON "traffic"."squidlog"
  USING btree ((date_part('month'::text, dt)));

CREATE INDEX "squidlog_now_dt" ON "traffic"."squidlog"
  USING btree ((date_trunc('month'::text, dt)));

То будут ли эти индексы цепляться в зависимости от условия запроса?
ИМХО будут.
...
Рейтинг: 0 / 0
PgSQL неохотно ест память. Статьи по оптимизации.
    #34284588
LeXa NalBat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сделайте, как написал st_serg:
Код: plaintext
1.
2.
3.
4.
5.
create index accesslog_i1 on accesslog(date_trunc('month', f_timestamp));

select f_user, f_url, sum(f_size)
from accesslog
where date_trunc('month', f_timestamp) = to_timestamp('01.10.2005', 'dd.mm.yyyy')
group by f_user, f_url;
И покажите полученный explain analyze. :-)

darkfoxна момент выполнения запроса 400тыс. записей:
Результат выполнения занимает не менее 2сек. Для такого объёма - МНОГО!
explain analyze от вышеприведённого запроса кажет:План имхо идеальный. Может быть все-таки перелопатить 460 тыс широких строк за две секунды - это не МНОГО?

darkfoxЕсли существует три разных индекса
То будут ли эти индексы цепляться в зависимости от условия запроса?
ИМХО будут.да, будут
...
Рейтинг: 0 / 0
PgSQL неохотно ест память. Статьи по оптимизации.
    #34286037
darkfox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
С учётом моих названий полей. Построил индекс:

авторcreate index squidlog_tmp_1 on traffic.squidlog(date_trunc('month', dt));

теперь запросим:
Код: plaintext
1.
2.
3.
select login, surl, sum(bytes)
from traffic.squidlog
where date_trunc('month', dt) = to_timestamp('01.01.2007', 'dd.mm.yyyy')
group by login, surl;
46 rows fetched (2,875 sec)

explain analyze:
Код: plaintext
1.
2.
3.
HashAggregate  (cost= 13334 . 18 .. 13334 . 25  rows= 28  width= 46 ) (actual time= 3257 . 518 .. 3287 . 234  rows= 16005  loops= 1 )
->  Index Scan using squidlog_tmp_1 on squidlog  (cost= 0 . 00 .. 13307 . 45  rows= 3564  width= 46 ) (actual time= 0 . 069 .. 1491 . 503  rows= 712619  loops= 1 )
Index Cond: (date_trunc('month'::text, dt) = to_timestamp('01.01.2007'::text, 'dd.mm.yyyy'::text))
Total runtime:  3293 . 715  ms
...
Рейтинг: 0 / 0
PgSQL неохотно ест память. Статьи по оптимизации.
    #34286771
st_serg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
имхо вы желаете какогото чуда )
для достаточно широкой и большой таблицы с агрегатом 2 секунды вполне приемлемое время.

just for fun сделайте партицированную таблицу, в которой активный партишн будет лежать в табличном пространстве на memory disk :)
...
Рейтинг: 0 / 0
PgSQL неохотно ест память. Статьи по оптимизации.
    #34287053
darkfox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вобщем всё ясно.

PostgreSQL НЕ У МЕЕТ работать с большими объёмами данных!!!

В моём случае начинаю думать о декомпозиции таблицы. :)
Кому интересно, почему я так решил, организуйте подобную схему в Oracle и посмотрите результат. ;)

Вобщем будем рвать базу на соттнюмаленькихмедвежат...
...я хотел сказать таблиц. :)
...
Рейтинг: 0 / 0
PgSQL неохотно ест память. Статьи по оптимизации.
    #34288803
LeXa NalBat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
darkfoxАналогичная задача на Оракле при тех же условиях работает в ДЕСЯТКИ раз быстрее.

Вобщем пока ещё раз делаю вывод, что FSF базы не готовы к большим объёмам данных. Печально.

На момент выполнения запроса 400тыс. записей. Результат выполнения занимает не менее 2сек. Для такого объёма - МНОГО!

... actual rows=712619 ... Total runtime: 3293.715 ms

PostgreSQL НЕ У МЕЕТ работать с большими объёмами данных!!!

Оганизуйте подобную схему в Oracle и посмотрите результат. ;)Устанавливать себе оракл я не буду. Организуйте пожалуйста подобную схему в оракле и покажите результат.
...
Рейтинг: 0 / 0
PgSQL неохотно ест память. Статьи по оптимизации.
    #34288999
СергейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
darkfoxВобщем всё ясно.

PostgreSQL НЕ У МЕЕТ работать с большими объёмами данных!!!


U menia lichno PostgreSQL vpolnee horosho rabotaet s bazoi v 1.7 Tb...

Код: plaintext
1.
2.
3.
4.
5.
cas=# select pg_size_pretty(pg_database_size('cas'));
 pg_size_pretty 
----------------
  1725  GB
( 1  row)
...
Рейтинг: 0 / 0
PgSQL неохотно ест память. Статьи по оптимизации.
    #34289036
ZemA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
О! А что в базе, если не секрет :)
...
Рейтинг: 0 / 0
PgSQL неохотно ест память. Статьи по оптимизации.
    #34289061
darkfox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ZemAО! А что в базе, если не секрет :)
В базе много чего. А в таблице, самой большой - лог SQUID'a полный.
...
Рейтинг: 0 / 0
PgSQL неохотно ест память. Статьи по оптимизации.
    #34289124
СергейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ZemAО! А что в базе, если не секрет :)
Astronomicheskie katalogi -- katalogi istochnikov iz bolshih astronomicheskih obzorov ( http://vo.astronet.ru )
...
Рейтинг: 0 / 0
PgSQL неохотно ест память. Статьи по оптимизации.
    #34289265
darkfox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
СергейК ZemAО! А что в базе, если не секрет :)
Astronomicheskie katalogi -- katalogi istochnikov iz bolshih astronomicheskih obzorov ( http://vo.astronet.ru )
Ширина (в столбах) самой объёмной таблицы сколько?
максимальный размер строкового столба какой?
...
Рейтинг: 0 / 0
PgSQL неохотно ест память. Статьи по оптимизации.
    #34289334
СергейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
darkfox СергейК ZemAО! А что в базе, если не секрет :)
Astronomicheskie katalogi -- katalogi istochnikov iz bolshih astronomicheskih obzorov ( http://vo.astronet.ru )
Ширина (в столбах) самой объёмной таблицы сколько?
максимальный размер строкового столба какой?
Samaia obiemnaia tablitsa 700Gb ~400 colonok ~ 250millionov zapisei. Samaia "dlinnaia" tablitsa -- 10^9 zapisei.
...
Рейтинг: 0 / 0
PgSQL неохотно ест память. Статьи по оптимизации.
    #34290745
Jelis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
СергейК darkfox СергейК ZemAО! А что в базе, если не секрет :)
Astronomicheskie katalogi -- katalogi istochnikov iz bolshih astronomicheskih obzorov ( http://vo.astronet.ru )
Ширина (в столбах) самой объёмной таблицы сколько?
максимальный размер строкового столба какой?
Samaia obiemnaia tablitsa 700Gb ~400 colonok ~ 250millionov zapisei. Samaia "dlinnaia" tablitsa -- 10^9 zapisei.

А можете привести какие нитбудь агригирующие запросы с експлайном? Думаю всем будет очнь интересно!
...
Рейтинг: 0 / 0
PgSQL неохотно ест память. Статьи по оптимизации.
    #34290972
СергейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jelis
А можете привести какие нитбудь агригирующие запросы с експлайном? Думаю всем будет очнь интересно!

K sojaleniu, v silu specifiki zadach imenno aggregiruiushie zaprosy fakticheski ne ispolzuyutsia. Osnovnoi krug zaprosov -- raznogo roda prostranstvennye zaprosy na sfere:

Para primerov:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
160.
161.
162.
163.
164.
165.
166.
167.
168.
169.
170.
171.
172.
173.
174.
175.
176.
177.
178.
179.
180.
181.
182.
183.
184.
185.
186.
187.
188.
189.
190.
191.
192.
193.
194.
195.
196.
197.
198.
199.
200.
201.
202.
203.
204.
205.
206.
207.
208.
209.
210.
explain analyze select * from sdssdr5.photoobjall where q3c_radial_query(ra,dec, 190 , 10 , 1 );
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   QUERY PLAN                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 Bitmap Heap Scan on photoobjall  (cost= 1499 . 69 .. 739361 . 67  rows= 50309  width= 1828 ) (actual time= 835 . 190 .. 8807 . 546  rows= 103161  loops= 1 )
   Recheck Cond: (((q3c_ang2ipix(ra, "dec") >=  4338021972320452608 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4338092341064630272 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4339570084692361216 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4339587676878405632 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4337916419204186112 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4337934011390230528 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4337969195762319360 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4337986787948363776 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4338004380134408192 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4338021972320452608 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4340344140878315520 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4340361733064359936 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4337828458273964032 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4337846050460008448 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4337846050460008448 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4337863642646052864 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4337863642646052864 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4337881234832097280 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4337881234832097280 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4337898827018141696 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4337951603576274944 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4337969195762319360 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4339499715948183552 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4339517308134227968 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4338796028506406912 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4338813620692451328 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4339587676878405632 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4339605269064450048 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4339605269064450048 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4339622861250494464 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4339622861250494464 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4339640453436538880 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4337898827018141696 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4337916419204186112 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4337934011390230528 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4337951603576274944 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4337986787948363776 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4338004380134408192 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4339517308134227968 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4339534900320272384 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4339552492506316800 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4339570084692361216 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4338690475390140416 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4338708067576184832 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4338831212878495744 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4338848805064540160 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)))
   Filter: (q3c_sindist(ra, "dec",  190 ::double precision,  10 ::double precision) <  7 .61524218043804e- 05 ::double precision)
   ->  BitmapOr  (cost= 1499 . 69 .. 1499 . 69  rows= 150957  width= 0 ) (actual time= 269 . 646 .. 269 . 646  rows= 0  loops= 1 )
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 204 . 35  rows= 23224  width= 0 ) (actual time= 90 . 730 .. 90 . 730  rows= 25262  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4338021972320452608 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4338092341064630272 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 51 . 84  rows= 5806  width= 0 ) (actual time= 29 . 999 .. 29 . 999  rows= 5492  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4339570084692361216 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4339587676878405632 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 51 . 84  rows= 5806  width= 0 ) (actual time= 19 . 891 .. 19 . 891  rows= 5800  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4337916419204186112 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4337934011390230528 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 51 . 84  rows= 5806  width= 0 ) (actual time= 19 . 838 .. 19 . 838  rows= 5706  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4337969195762319360 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4337986787948363776 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 51 . 84  rows= 5806  width= 0 ) (actual time= 3 . 294 .. 3 . 294  rows= 5713  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4338004380134408192 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4338021972320452608 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 015 .. 0 . 015  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 51 . 84  rows= 5806  width= 0 ) (actual time= 11 . 757 .. 11 . 757  rows= 6403  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4340344140878315520 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4340361733064359936 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 51 . 84  rows= 5806  width= 0 ) (actual time= 13 . 386 .. 13 . 386  rows= 4618  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4337828458273964032 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4337846050460008448 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 51 . 84  rows= 5806  width= 0 ) (actual time= 1 . 867 .. 1 . 867  rows= 5134  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4337846050460008448 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4337863642646052864 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 51 . 84  rows= 5806  width= 0 ) (actual time= 1 . 834 .. 1 . 834  rows= 5746  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4337863642646052864 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4337881234832097280 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 51 . 84  rows= 5806  width= 0 ) (actual time= 20 . 814 .. 20 . 814  rows= 5468  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4337881234832097280 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4337898827018141696 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 51 . 84  rows= 5806  width= 0 ) (actual time= 2 . 195 .. 2 . 195  rows= 5023  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4337951603576274944 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4337969195762319360 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 51 . 84  rows= 5806  width= 0 ) (actual time= 10 . 065 .. 10 . 065  rows= 5300  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4339499715948183552 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4339517308134227968 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 51 . 84  rows= 5806  width= 0 ) (actual time= 7 . 355 .. 7 . 355  rows= 5307  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4338796028506406912 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4338813620692451328 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 51 . 84  rows= 5806  width= 0 ) (actual time= 2 . 530 .. 2 . 530  rows= 6969  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4339587676878405632 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4339605269064450048 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 51 . 84  rows= 5806  width= 0 ) (actual time= 4 . 354 .. 4 . 354  rows= 5302  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4339605269064450048 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4339622861250494464 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 51 . 84  rows= 5806  width= 0 ) (actual time= 2 . 566 .. 2 . 566  rows= 7168  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4339622861250494464 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4339640453436538880 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 51 . 84  rows= 5806  width= 0 ) (actual time= 2 . 780 .. 2 . 780  rows= 7300  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4337898827018141696 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4337916419204186112 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 51 . 84  rows= 5806  width= 0 ) (actual time= 2 . 378 .. 2 . 378  rows= 7316  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4337934011390230528 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4337951603576274944 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 51 . 84  rows= 5806  width= 0 ) (actual time= 1 . 683 .. 1 . 683  rows= 5114  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4337986787948363776 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4338004380134408192 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 51 . 84  rows= 5806  width= 0 ) (actual time= 1 . 971 .. 1 . 971  rows= 5498  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4339517308134227968 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4339534900320272384 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 51 . 84  rows= 5806  width= 0 ) (actual time= 7 . 819 .. 7 . 819  rows= 5392  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4339552492506316800 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4339570084692361216 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 51 . 84  rows= 5806  width= 0 ) (actual time= 7 . 749 .. 7 . 749  rows= 5677  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4338690475390140416 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4338708067576184832 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 51 . 84  rows= 5806  width= 0 ) (actual time= 2 . 145 .. 2 . 145  rows= 5909  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4338831212878495744 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4338848805064540160 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 017 .. 0 . 017  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Index Scan on q3c_sdss  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
               Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
 Total runtime:  8837 . 788  ms
( 205  rows)



Primer 2:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
160.
161.
162.
163.
164.
165.
166.
167.
168.
169.
170.
171.
172.
173.
174.
175.
176.
177.
178.
179.
180.
181.
182.
183.
184.
185.
186.
187.
188.
189.
190.
191.
192.
193.
194.
195.
196.
197.
198.
199.
200.
201.
202.
203.
204.
205.
206.
207.
208.
209.
210.
211.
212.
213.
214.
215.
216.
217.
218.
219.
220.
221.
222.
223.
224.
225.
explain analyze select * from (select * from ( select ra AS __match_ra, dec AS __match_dec, * from twomass.psc) as a where q3c_radial_query(__match_ra,__match_dec, 202 . 01458 , 33 . 55583 , 0 . 5 ) offset  0 ) as a left join sdssdr5.phototag as b on q3c_join(a.__match_ra,a.__match_dec,b.ra,b.dec, 1 .388888888888889E- 4 ) offset  0 ;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    QUERY PLAN                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 Limit  (cost= 1376628 . 93 .. 64353441614 . 27  rows= 96715727560  width= 826 ) (actual time= 1 . 515 .. 72 . 349  rows= 2368  loops= 1 )
   ->  Nested Loop Left Join  (cost= 1376628 . 93 .. 64353441614 . 27  rows= 96715727560  width= 826 ) (actual time= 1 . 513 .. 71 . 546  rows= 2368  loops= 1 )
         Join Filter: ((((q3c_ang2ipix("inner".ra, "inner"."dec") >= q3c_nearby_it("outer".ra, "outer"."dec",  0 . 000138888888888889 ::double precision,  0 )) AND (q3c_ang2ipix("inner".ra, "inner"."dec") <= q3c_nearby_it("outer".ra, "outer"."dec",  0 . 000138888888888889 ::double precision,  1 ))) OR ((q3c_ang2ipix("inner".ra, "inner"."dec") >= q3c_nearby_it("outer".ra, "outer"."dec",  0 . 000138888888888889 ::double precision,  2 )) AND (q3c_ang2ipix("inner".ra, "inner"."dec") <= q3c_nearby_it("outer".ra, "outer"."dec",  0 . 000138888888888889 ::double precision,  3 ))) OR ((q3c_ang2ipix("inner".ra, "inner"."dec") >= q3c_nearby_it("outer".ra, "outer"."dec",  0 . 000138888888888889 ::double precision,  4 )) AND (q3c_ang2ipix("inner".ra, "inner"."dec") <= q3c_nearby_it("outer".ra, "outer"."dec",  0 . 000138888888888889 ::double precision,  5 ))) OR ((q3c_ang2ipix("inner".ra, "inner"."dec") >= q3c_nearby_it("outer".ra, "outer"."dec",  0 . 000138888888888889 ::double precision,  6 )) AND (q3c_ang2ipix("inner".ra, "inner"."dec") <= q3c_nearby_it("outer".ra, "outer"."dec",  0 . 000138888888888889 ::double precision,  7 )))) AND (q3c_sindist("outer".ra, "outer"."dec", "inner".ra, "inner"."dec") <  1 .4690269086929e- 12 ::double precision))
         ->  Limit  (cost= 243 . 08 .. 32685 . 46  rows= 2180  width= 290 ) (actual time= 1 . 381 .. 7 . 685  rows= 1127  loops= 1 )
               ->  Bitmap Heap Scan on psc  (cost= 243 . 08 .. 32685 . 46  rows= 2180  width= 290 ) (actual time= 1 . 381 .. 7 . 294  rows= 1127  loops= 1 )
                     Recheck Cond: (((q3c_ang2ipix(ra, "dec") >=  4501576525975388160 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501594118161432576 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4501805224393965568 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501822816580009984 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4501611710347476992 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501629302533521408 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4502192252486942720 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4502196650533453824 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4501998738440454144 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4502003136486965248 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4502003136486965248 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4502007534533476352 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4502196650533453824 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4502201048579964928 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4502201048579964928 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4502205446626476032 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4501572127928877056 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501576525975388160 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4501778836114898944 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501783234161410048 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4502011932579987456 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4502016330626498560 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4501598516207943680 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501602914254454784 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4501607312300965888 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501611710347476992 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4501673282998632448 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501677681045143552 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4501558933789343744 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501563331835854848 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4501563331835854848 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501567729882365952 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4501981146254409728 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501985544300920832 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4501985544300920832 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501989942347431936 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4501770040021876736 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501774438068387840 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4501822816580009984 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501827214626521088 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4502033922812542976 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4502038320859054080 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4502038320859054080 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4502042718905565184 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4502209844672987136 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4502214242719498240 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4502227436859031552 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4502231834905542656 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4501594118161432576 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501598516207943680 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4502205446626476032 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4502209844672987136 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4501567729882365952 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501572127928877056 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4501994340393943040 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501998738440454144 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4501774438068387840 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501778836114898944 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4501783234161410048 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501787632207921152 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4501796428300943360 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501800826347454464 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4501831612673032192 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501836010719543296 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4502007534533476352 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4502011932579987456 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4502218640766009344 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4502223038812520448 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4502231834905542656 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4502236232952053760 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4501466574812610560 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501470972859121664 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4501479768952143872 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501484166998654976 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4501484166998654976 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501488565045166080 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  4501602914254454784 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501607312300965888 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)) OR ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint)))
                     Filter: (q3c_sindist(ra, "dec",  202 . 01458 ::double precision,  33 . 55583 ::double precision) <  1 .90384679143556e- 05 ::double precision)
                     ->  BitmapOr  (cost= 243 . 08 .. 243 . 08  rows= 6539  width= 0 ) (actual time= 1 . 219 .. 1 . 219  rows= 0  loops= 1 )
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 6 . 27  rows= 545  width= 0 ) (actual time= 0 . 087 .. 0 . 087  rows= 150  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4501576525975388160 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501594118161432576 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 6 . 27  rows= 545  width= 0 ) (actual time= 0 . 037 .. 0 . 037  rows= 119  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4501805224393965568 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501822816580009984 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 6 . 27  rows= 545  width= 0 ) (actual time= 0 . 040 .. 0 . 040  rows= 138  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4501611710347476992 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501629302533521408 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 021 .. 0 . 021  rows= 39  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4502192252486942720 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4502196650533453824 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 019 .. 0 . 019  rows= 27  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4501998738440454144 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4502003136486965248 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 016 .. 0 . 016  rows= 37  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4502003136486965248 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4502007534533476352 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 016 .. 0 . 016  rows= 32  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4502196650533453824 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4502201048579964928 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 017 .. 0 . 017  rows= 40  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4502201048579964928 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4502205446626476032 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 013 .. 0 . 013  rows= 23  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4501572127928877056 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501576525975388160 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 022 .. 0 . 022  rows= 50  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4501778836114898944 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501783234161410048 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 016 .. 0 . 016  rows= 32  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4502011932579987456 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4502016330626498560 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 015 .. 0 . 015  rows= 26  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4501598516207943680 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501602914254454784 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 015 .. 0 . 015  rows= 31  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4501607312300965888 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501611710347476992 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 015 .. 0 . 015  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 017 .. 0 . 017  rows= 29  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4501673282998632448 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501677681045143552 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 014 .. 0 . 014  rows= 25  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4501558933789343744 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501563331835854848 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 013 .. 0 . 013  rows= 24  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4501563331835854848 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501567729882365952 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 017 .. 0 . 017  rows= 25  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4501981146254409728 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501985544300920832 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 014 .. 0 . 014  rows= 27  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4501985544300920832 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501989942347431936 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 014 .. 0 . 014  rows= 30  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4501770040021876736 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501774438068387840 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 012 .. 0 . 012  rows= 20  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4501822816580009984 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501827214626521088 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 021 .. 0 . 021  rows= 34  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4502033922812542976 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4502038320859054080 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 017 .. 0 . 017  rows= 37  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4502038320859054080 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4502042718905565184 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 017 .. 0 . 017  rows= 36  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4502209844672987136 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4502214242719498240 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 017 .. 0 . 017  rows= 40  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4502227436859031552 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4502231834905542656 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 014 .. 0 . 014  rows= 25  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4501594118161432576 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501598516207943680 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 015 .. 0 . 015  rows= 32  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4502205446626476032 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4502209844672987136 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 013 .. 0 . 013  rows= 28  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4501567729882365952 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501572127928877056 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 015 .. 0 . 015  rows= 31  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4501994340393943040 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501998738440454144 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 017 .. 0 . 017  rows= 37  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4501774438068387840 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501778836114898944 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 016 .. 0 . 016  rows= 36  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4501783234161410048 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501787632207921152 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 015 .. 0 . 015  rows= 31  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4501796428300943360 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501800826347454464 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 015 .. 0 . 015  rows= 29  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4501831612673032192 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501836010719543296 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 014 .. 0 . 014  rows= 34  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4502007534533476352 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4502011932579987456 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 016 .. 0 . 016  rows= 36  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4502218640766009344 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4502223038812520448 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 015 .. 0 . 015  rows= 31  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4502231834905542656 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4502236232952053760 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 016 .. 0 . 016  rows= 27  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4501466574812610560 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501470972859121664 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 017 .. 0 . 017  rows= 37  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4501479768952143872 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501484166998654976 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 017 .. 0 . 017  rows= 34  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4501484166998654976 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501488565045166080 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 82  rows= 136  width= 0 ) (actual time= 0 . 016 .. 0 . 016  rows= 40  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  4501602914254454784 ::bigint) AND (q3c_ang2ipix(ra, "dec") <  4501607312300965888 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
                           ->  Bitmap Index Scan on twomass_q3c_idx  (cost= 0 . 00 .. 2 . 01  rows= 1  width= 0 ) (actual time= 0 . 008 .. 0 . 008  rows= 0  loops= 1 )
                                 Index Cond: ((q3c_ang2ipix(ra, "dec") >=  1 ::bigint) AND (q3c_ang2ipix(ra, "dec") < - 1 ::bigint))
         ->  Bitmap Heap Scan on phototag b  (cost= 1376385 . 84 .. 17711439 . 84  rows= 157446300  width= 288 ) (actual time= 0 . 034 .. 0 . 036  rows= 2  loops= 1127 )
               Recheck Cond: (((q3c_ang2ipix(b.ra, b."dec") >= q3c_nearby_it("outer".ra, "outer"."dec",  0 . 000138888888888889 ::double precision,  0 )) AND (q3c_ang2ipix(b.ra, b."dec") <= q3c_nearby_it("outer".ra, "outer"."dec",  0 . 000138888888888889 ::double precision,  1 ))) OR ((q3c_ang2ipix(b.ra, b."dec") >= q3c_nearby_it("outer".ra, "outer"."dec",  0 . 000138888888888889 ::double precision,  2 )) AND (q3c_ang2ipix(b.ra, b."dec") <= q3c_nearby_it("outer".ra, "outer"."dec",  0 . 000138888888888889 ::double precision,  3 ))) OR ((q3c_ang2ipix(b.ra, b."dec") >= q3c_nearby_it("outer".ra, "outer"."dec",  0 . 000138888888888889 ::double precision,  4 )) AND (q3c_ang2ipix(b.ra, b."dec") <= q3c_nearby_it("outer".ra, "outer"."dec",  0 . 000138888888888889 ::double precision,  5 ))) OR ((q3c_ang2ipix(b.ra, b."dec") >= q3c_nearby_it("outer".ra, "outer"."dec",  0 . 000138888888888889 ::double precision,  6 )) AND (q3c_ang2ipix(b.ra, b."dec") <= q3c_nearby_it("outer".ra, "outer"."dec",  0 . 000138888888888889 ::double precision,  7 ))))
               ->  BitmapOr  (cost= 1376385 . 84 .. 1376385 . 84  rows= 157446300  width= 0 ) (actual time= 0 . 032 .. 0 . 032  rows= 0  loops= 1127 )
                     ->  Bitmap Index Scan on q3c_phototag_idx  (cost= 0 . 00 .. 344096 . 46  rows= 39361575  width= 0 ) (actual time= 0 . 009 .. 0 . 009  rows= 1  loops= 1127 )
                           Index Cond: ((q3c_ang2ipix(b.ra, b."dec") >= q3c_nearby_it("outer".ra, "outer"."dec",  0 . 000138888888888889 ::double precision,  0 )) AND (q3c_ang2ipix(b.ra, b."dec") <= q3c_nearby_it("outer".ra, "outer"."dec",  0 . 000138888888888889 ::double precision,  1 )))
                     ->  Bitmap Index Scan on q3c_phototag_idx  (cost= 0 . 00 .. 344096 . 46  rows= 39361575  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 1  loops= 1127 )
                           Index Cond: ((q3c_ang2ipix(b.ra, b."dec") >= q3c_nearby_it("outer".ra, "outer"."dec",  0 . 000138888888888889 ::double precision,  2 )) AND (q3c_ang2ipix(b.ra, b."dec") <= q3c_nearby_it("outer".ra, "outer"."dec",  0 . 000138888888888889 ::double precision,  3 )))
                     ->  Bitmap Index Scan on q3c_phototag_idx  (cost= 0 . 00 .. 344096 . 46  rows= 39361575  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1127 )
                           Index Cond: ((q3c_ang2ipix(b.ra, b."dec") >= q3c_nearby_it("outer".ra, "outer"."dec",  0 . 000138888888888889 ::double precision,  4 )) AND (q3c_ang2ipix(b.ra, b."dec") <= q3c_nearby_it("outer".ra, "outer"."dec",  0 . 000138888888888889 ::double precision,  5 )))
                     ->  Bitmap Index Scan on q3c_phototag_idx  (cost= 0 . 00 .. 344096 . 46  rows= 39361575  width= 0 ) (actual time= 0 . 007 .. 0 . 007  rows= 0  loops= 1127 )
                           Index Cond: ((q3c_ang2ipix(b.ra, b."dec") >= q3c_nearby_it("outer".ra, "outer"."dec",  0 . 000138888888888889 ::double precision,  6 )) AND (q3c_ang2ipix(b.ra, b."dec") <= q3c_nearby_it("outer".ra, "outer"."dec",  0 . 000138888888888889 ::double precision,  7 )))
 Total runtime:  74 . 314  ms
( 220  rows)


V obshem nichego vpechiatliaushego...
...
Рейтинг: 0 / 0
PgSQL неохотно ест память. Статьи по оптимизации.
    #34291837
BlackDan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
st_serg...для достаточно широкой и большой таблицы...
А почему ширина таблицы может повлиять на скорость выборки данных?
(или подразумевалось, что скорость seqscan зависит от ширины таблицы?)
...
Рейтинг: 0 / 0
PgSQL неохотно ест память. Статьи по оптимизации.
    #34292368
СергейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
BlackDan st_serg...для достаточно широкой и большой таблицы...
А почему ширина таблицы может повлиять на скорость выборки данных?
(или подразумевалось, что скорость seqscan зависит от ширины таблицы?)

K sojaleniu, chem shire tablitsa, tem bolshe veroiatnost' uperetsia v CPU a ne v I/O pri seq. scane.
...
Рейтинг: 0 / 0
PgSQL неохотно ест память. Статьи по оптимизации.
    #34293864
Jelis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
СергейК[quot Jelis]
А можете привести какие нитбудь агригирующие запросы с експлайном? Думаю всем будет очнь интересно!

K sojaleniu, v silu specifiki zadach imenno aggregiruiushie zaprosy fakticheski ne ispolzuyutsia. Osnovnoi krug zaprosov -- raznogo roda prostranstvennye zaprosy na sfere:

[quot]

Мдаа... запросы в самом деле очень спецефичные :-)
...
Рейтинг: 0 / 0
25 сообщений из 50, страница 2 из 2
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / PgSQL неохотно ест память. Статьи по оптимизации.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]