awslabs / awslabs/python-deequ

check with hasSize/hasMin etc fails with below error. Pydeequ version 1.0.0

Ouverte
#64 3 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
bug help wanted
Langage dominant
Jupyter Notebook
Étoiles
826
Forks
158
Merge moyen
9 j 22 h
PR mergées (30 j)
3

Description

**Describe the bug**
verificationSuite check with has fails with error -
Traceback (most recent call last):
File "/Downloads/spark-2.4.4-bin-hadoop2.7/python/lib/py4j-0.10.7-src.zip/py4j/java_gateway.py", line 2146, in start
OSError: [Errno 48] Address already in use

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/DeequPy/adhoc_tasks/test_checks.py", line 19, in
check.hasSize(lambda x: x >= 100)
File "/opt/anaconda3/envs/DeequPy/lib/python3.7/site-packages/pydeequ/checks.py", line 134, in hasSize
assertion_func = ScalaFunction1(self._spark_session.sparkContext._gateway, assertion)
File "/opt/anaconda3/envs/DeequPy/lib/python3.7/site-packages/pydeequ/scala_utils.py", line 32, in __init__
super().__init__(gateway)
File "/opt/anaconda3/envs/DeequPy/lib/python3.7/site-packages/pydeequ/scala_utils.py", line 16, in __init__
self.gateway.start_callback_server()
File "/Downloads/spark-2.4.4-bin-hadoop2.7/python/lib/py4j-0.10.7-src.zip/py4j/java_gateway.py", line 1836, in start_callback_server
File "/Downloads/spark-2.4.4-bin-hadoop2.7/python/lib/py4j-0.10.7-src.zip/py4j/java_gateway.py", line 2155, in start
py4j.protocol.Py4JNetworkError: An error occurred while trying to start the callback server (127.0.0.1:25334)

**To Reproduce**
Steps to reproduce the behavior:

check.hasSize(lambda x: x >= 100)

result = VerificationSuite(spark).onData(df).addCheck(check).run()

result_df = VerificationResult.checkResultsAsDataFrame(spark, result)

result_df.show()

Guide de contribution

Ouvrir le guide de contribution

Piste de recherche

Commencez par exécuter la reproduction signalée de hasSize avec Spark 2.4.4, Pydeequ 1.0.0 et Python 3.7, puis inspectez pydeequ/checks.py et pydeequ/scala_utils.py autour de ScalaFunction1 et du démarrage du callback-server. C’est terminé lorsque hasSize et les vérifications hasMin associées s’exécutent jusqu’au bout sans l’erreur Py4J d’adresse déjà utilisée et que le résultat de la vérification peut être affiché.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
python, spark
Domaine
data-engineering, testing-qa
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
Calme
Clarté
Plutôt claire
Accessibilité débutants
45/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.