GitHub user davies opened a pull request:
https://github.com/apache/spark/pull/4808
[SPARK-6055] [PySpark] fix incorrect __eq__ of DataType
The _eq_ of DataType is not correct, class cache is not use correctly
(created class can not be find by dataType), then it will create lots of
classes (saved in _cached_cls), never released.
Also, all same DataType have same hash code, there will be many object in a
dict with the same hash code, end with hash attach, it's very slow to access
this dict (depends on the implementation of CPython).
This PR also improve the performance of inferSchema (avoid the unnecessary
converter of object).
cc @pwendell @JoshRosen
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/davies/spark leak
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/spark/pull/4808.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #4808
----
commit d9ae973ecf2f5171f521da1d898c9f3c13ca8255
Author: Davies Liu <[email protected]>
Date: 2015-02-27T07:17:05Z
fix memory leak in sql
----
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]