From bbc38ba690bed3ba777817b0dda15b51cbd031f2 Mon Sep 17 00:00:00 2001 From: somideshmukh Date: Thu, 17 Dec 2015 15:18:54 +0530 Subject: [PATCH 1/2] [SPARK-12377][Python][Wrong implementation for Row.__call__ in pyspark] --- python/pyspark/sql/types.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python/pyspark/sql/types.py b/python/pyspark/sql/types.py index 5bc0773fa866..7040425085bd 100644 --- a/python/pyspark/sql/types.py +++ b/python/pyspark/sql/types.py @@ -1243,7 +1243,7 @@ def conv(obj): # let object acts like class def __call__(self, *args): """create new Row object""" - return _create_row(self, args) + return create_row(self.fields_, args) def __getitem__(self, item): if isinstance(item, (int, slice)): From 2b3e9b91a6d8a887998c556a5c30e1385efe6089 Mon Sep 17 00:00:00 2001 From: somideshmukh Date: Thu, 14 Jan 2016 17:32:04 +0530 Subject: [PATCH 2/2] [SPARK-12377][Python][Wrong implementation for Row.__call__ in pyspark,Added Regression Testing] --- python/pyspark/sql/types.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/python/pyspark/sql/types.py b/python/pyspark/sql/types.py index 7040425085bd..077f2d7f1fad 100644 --- a/python/pyspark/sql/types.py +++ b/python/pyspark/sql/types.py @@ -1240,10 +1240,13 @@ def conv(obj): else: return dict(zip(self.__fields__, self)) - # let object acts like class + # let object acts like class def __call__(self, *args): - """create new Row object""" - return create_row(self.fields_, args) + if args: + """create new Row object""" + return create_row(self.fields_, args) + else: + raise ValueError("No args") def __getitem__(self, item): if isinstance(item, (int, slice)):