[
https://issues.apache.org/jira/browse/ATLAS-1403?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Sarath Subramanian updated ATLAS-1403:
--------------------------------------
Attachment: ATLAS-1403.1.patch
Patch for master
> Perf and stability improvements to DSL search and lineage to search only by
> typeNames
> -------------------------------------------------------------------------------------
>
> Key: ATLAS-1403
> URL: https://issues.apache.org/jira/browse/ATLAS-1403
> Project: Atlas
> Issue Type: Bug
> Affects Versions: 0.7-incubating
> Reporter: Suma Shivaprasad
> Assignee: Suma Shivaprasad
> Fix For: 0.8-incubating, 0.7.1-incubating
>
> Attachments: ATLAS-1403_0.7-incubating.patch, ATLAS-1403.1.patch
>
>
> Currently DSL uses a fill function during Gremlin Translation to merge
> results by typeName and superTypeName and fill function loads the resulting
> vertices in memory. This causes significant memory usage and ATLAS server
> spends lot of time doing GC instead of useful work resulting in OOO sometimes
> ( when GC is not able to recover and search queries are run in parallel)
> The proposal is to replace this with typeName checks along by finding all the
> subtypes for a given type and using an IN clause in the filter.
> For eg:
> Query = Person where (birthday < "1950-01-01T02:35:58.440Z") limit 40 offset
> 0
> Optimized query
> Gremlin Query = L:{g.V.has("__typeName", T.in,
> ['Person','Manager']).and(_().has("Person.birthday", T.lt, -631142641560))
> [0..<40].toList()}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)