• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

catmaid / CATMAID / 4459 / 3
45%
master: 45%

Build:
Build:
LAST BUILD BRANCH: dev
DEFAULT BRANCH: master
Ran 05 Mar 2018 07:27PM UTC
Files 92
Run time 4s
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

05 Mar 2018 06:58PM UTC coverage: 48.612% (+1.6%) from 47.052%
4459.3

push

travis-ci

tomka
Node providers: improve 2D Z index node providers

Separating the Z filtering and 2D PostGIS index lookups forces Postgres
to only apply the PostGIS filters on the z filter results. Using both in
the same query results in applying the PostGIS filter to all of the
treenode edges. Using a CTE as optimization fence forces Postgres to
evaluate both filters separately. This is of course mainly useful for
large views.

The resulting performance improvement can be substantial. The query
below returns about 5000 nodes and is about ten times faster in the new
version.

This is a typical query plan for the old version of the query:

 Limit  (cost=13069.20..13659.79 rows=132 width=50) (actual time=730.973..751.266 rows=5197 loops=1)
   Buffers: shared hit=62558
   CTE bb_edge
     ->  Bitmap Heap Scan on treenode_edge te  (cost=12432.10..12994.67 rows=16 width=8) (actual time=703.980..713.017 rows=3008 loops=1)
           Recheck Cond: ((floatrange(st_zmin((edge)::box3d), st_zmax((edge)::box3d), '[]'::text) && '[61720,61760)'::floatrange) AND (edge && '01030000000100000005000000C414F3F727321A412CB03E87E1F20841C414F3F727321A41EAA7603C6F8619419E750604DCE62141EAA7603C6F8619419E750604DCE621412CB03E87E1F20841C414F3F727321A412CB03E87E1F20841'::geometry) AND (edge && '01030000800100000005000000C414F3F7D7311A412CB03E8741F20841000000000023EE40C414F3F7D7311A41EAA7603CBF861941000000000023EE409E75060404E72141EAA7603CBF861941000000000028EE409E75060404E721412CB03E8741F20841000000000028EE40C414F3F7D7311A412CB03E8741F20841000000000023EE40'::geometry))
           Filter: ((project_id = 1) AND ('01030000800100000005000000C414F3F727321A412CB03E87E1F20841000000008025EE409E750604DCE621412CB03E87E1F20841000000008025EE409E750604DCE62141EAA7603C6F861941000000008025EE40C414F3F727321A41EAA7603C6F861941000000008025EE40C414F3F727321A412CB03E87E1F20841000000008025EE40'::geometry && st_expand(edge, '20'::double precision)) AND _st_3ddwithin(edge, '01030000800100000005000000C414F3F727321A412C... (continued)

7147 of 14702 relevant lines covered (48.61%)

0.49 hits per line

Source Files on job 4459.3
  • Tree
  • List 0
  • Changed 5
  • Source Changed 1
  • Coverage Changed 5
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Build 1
  • Travis Job 4459.3
  • f33fd47b on github
  • Prev Job for on dev (#4458.5)
  • Next Job for on dev (#4460.5)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc