aboutsummaryrefslogtreecommitdiff
path: root/python
diff options
context:
space:
mode:
authorMahmoud Lababidi <mahmoud@thehumangeo.com>2015-10-18 11:39:19 -0700
committerJosh Rosen <joshrosen@databricks.com>2015-10-18 11:39:19 -0700
commita337c235a12d4ea6a7d6db457acc6b32f1915241 (patch)
tree7f89553dfac85283074c9a316f1d6d586c599fde /python
parent8d4449c7f5d528410306c288a042c4594b81a881 (diff)
downloadspark-a337c235a12d4ea6a7d6db457acc6b32f1915241.tar.gz
spark-a337c235a12d4ea6a7d6db457acc6b32f1915241.tar.bz2
spark-a337c235a12d4ea6a7d6db457acc6b32f1915241.zip
[SPARK-11158][SQL] Modified _verify_type() to be more informative on Errors by presenting the Object
The _verify_type() function had Errors that were raised when there were Type conversion issues but left out the Object in question. The Object is now added in the Error to reduce the strain on the user to debug through to figure out the Object that failed the Type conversion. The use case for me was a Pandas DataFrame that contained 'nan' as values for columns of Strings. Author: Mahmoud Lababidi <mahmoud@thehumangeo.com> Author: Mahmoud Lababidi <lababidi@gmail.com> Closes #9149 from lababidi/master.
Diffstat (limited to 'python')
-rw-r--r--python/pyspark/sql/types.py6
1 files changed, 3 insertions, 3 deletions
diff --git a/python/pyspark/sql/types.py b/python/pyspark/sql/types.py
index 1f86894855..5bc0773fa8 100644
--- a/python/pyspark/sql/types.py
+++ b/python/pyspark/sql/types.py
@@ -1127,15 +1127,15 @@ def _verify_type(obj, dataType):
return
_type = type(dataType)
- assert _type in _acceptable_types, "unknown datatype: %s" % dataType
+ assert _type in _acceptable_types, "unknown datatype: %s for object %r" % (dataType, obj)
if _type is StructType:
if not isinstance(obj, (tuple, list)):
- raise TypeError("StructType can not accept object in type %s" % type(obj))
+ raise TypeError("StructType can not accept object %r in type %s" % (obj, type(obj)))
else:
# subclass of them can not be fromInternald in JVM
if type(obj) not in _acceptable_types[_type]:
- raise TypeError("%s can not accept object in type %s" % (dataType, type(obj)))
+ raise TypeError("%s can not accept object %r in type %s" % (dataType, obj, type(obj)))
if isinstance(dataType, ArrayType):
for i in obj: