Skip to content

differentiate union and union-all #9

@tcql

Description

@tcql

currently union executes a union-all - every outer hull is checked against every other, even if two came from the subject, for example.

This causes really poor union performance (in the tens of ops/sec on the Huge.json test case, vs the ~480 ops/sec that intersect and subtract get on the same case).

A union-all method is currently required, as it used internally in union and intersect for dealing with holes, so I'm proposing that union-all should be a separate implementation from union. It need not be made public.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions