thoth-station/integration-tests

(local) test tail with OSError

Closed this issue · 4 comments

goern commented

Describe the bug

$ gd 
diff --git a/app.py b/app.py                                                                                                                                                                                                                  
index 5fbd05a..a26f4a3 100755                                                                                                                                                                                                                 
--- a/app.py                                                                                                                                                                                                                                  
+++ b/app.py                                                                                                                                                                                                                                  
@@ -94,7 +94,10 @@ def main() -> None:                                                                                                                                                                                                        
     _print_info()                                                                                                                                                                                                                            
     print("Tests are executed using", args, file=sys.stderr)                                                                                                                                                                                 
                                                                                                                                                                                                                                              
-    exit_code = behave_main(args)                                                                                                                                                                                                            
+    try:                                                                                                                                                                                                                                     
+        exit_code = behave_main(args)                                                                                                                                                                                                        
+    except OSError as ose:                                                                                                                                                                                                                   
+        pass                                                                                                                                                                                                                                 
                                                                                                                                                                                                                                              
     if _GENERATE_REPORT and _MAIL_REPORT:                                                                                                                                                                                                    
         send_email()                                                                                                                                                                                                                         
 $ time ./app.py 
--------------------------------------------------------------------------------                                                                                                                                                              
> Tests are executed against zero-prod deployment                                                                                                                                                                                             
> Tests are executed against User API at api.moc.thoth-station.ninja                                                                                                                                                                          
> Tests are executed against Management API at management.moc.thoth-station.ninja                                                                                                                                                             
> Tests are executed against Amun API at amun.moc.thoth-station.ninja                                                                                                                                                                         
--------------------------------------------------------------------------------                                                                                                                                                              
Tests are executed using ['--show-timings', '-f', 'html', '-o', 'behave-report.html', '--tags', '@seizes_backend_namespace']                                                                                                                  
                                                                                                                                                                                                                                              
Failing scenarios:                                                                                                                                                                                                                            
  features/thamos_advise.feature:14  Run thamos advise on an application stack -- @1.1 Advise                                                                                                                                                 
  features/thamos_advise.feature:15  Run thamos advise on an application stack -- @1.2 Advise                                                                                                                                                 
  features/thamos_advise.feature:27  Run thamos advise on a Git repo -- @1.1 Advise                                                                                                                                                           
  features/thamos_advise.feature:28  Run thamos advise on a Git repo -- @1.2 Advise                                                                                                                                                           
  features/thamos_advise.feature:29  Run thamos advise on a Git repo -- @1.3 Advise                                                                                                                                                           
  features/thamos_advise.feature:30  Run thamos advise on a Git repo -- @1.4 Advise                                                                                                                                                           
  features/thamos_advise.feature:31  Run thamos advise on a Git repo -- @1.5 Advise                                                                                                                                                           
  features/thamos_advise.feature:32  Run thamos advise on a Git repo -- @1.6 Advise                                                                                                                                                           
  features/thamos_provenance_check.feature:13  Run provenance check for a Python software stack -- @1.1 Provenance                                                                                                                            
                                                                                                                                                                                                                                              
0 features passed, 2 failed, 11 skipped                                                                                                                                                                                                       
0 scenarios passed, 9 failed, 30 skipped                                                                                                                                                                                                      
18 steps passed, 9 failed, 127 skipped, 0 undefined                                                                                                                                                                                           
Took 42m36.051s
Exception ignored in: <function ApiClient.__del__ at 0x7f97db083c10>
Traceback (most recent call last):
  File "/home/goern/.local/share/virtualenvs/integration-tests-Me6nOCO7/lib/python3.8/site-packages/thamos/swagger_client/api_client.py", line 78, in __del__
    self.pool.close()
  File "/usr/lib64/python3.8/multiprocessing/pool.py", line 649, in close
    self._change_notifier.put(None)
  File "/usr/lib64/python3.8/multiprocessing/queues.py", line 368, in put
    self._writer.send_bytes(obj)
  File "/usr/lib64/python3.8/multiprocessing/connection.py", line 200, in send_bytes
    self._send_bytes(m[offset:offset + size])
  File "/usr/lib64/python3.8/multiprocessing/connection.py", line 411, in _send_bytes
    self._send(header + buf)
  File "/usr/lib64/python3.8/multiprocessing/connection.py", line 368, in _send
    n = write(self._handle, buf)
OSError: [Errno 9] Bad file descriptor
./app.py  42,05s user 5,01s system 1% cpu 42:37,33 total
                                                                                                                                                                    

To Reproduce
Steps to reproduce the behavior:

  1. check out repo
  2. pipenv shell
  3. ./app.py
  4. See error

Expected behavior
no errors

Additional context

MAIL_REPORT="0"
GENERATE_REPORT="1"
THOTH_DEPLOYMENT_NAME="zero-prod"
THOTH_USER_API_HOST="api.moc.thoth-station.ninja"
THOTH_MANAGEMENT_API_HOST="management.moc.thoth-station.ninja"
THOTH_AMUN_API_HOST="amun.moc.thoth-station.ninja"
THOTH_MANAGEMENT_API_SECRET='***'
THOTH_INTEGRATION_TESTS_TAGS="@seizes_backend_namespace"
 ARTIFACTS="/tmp/"

/kind bug
/assign @fridex
/label deployment/zero-prod

@goern: The label(s) /label deployment/zero-prod cannot be applied. These labels are supported: community/discussion, community/group-programming, community/maintenance, community/question, deployment_name/ocp4-stage, deployment_name/ocp4-test, deployment_name/zero-prod, hacktoberfest, hacktoberfest-accepted, kind/cleanup, kind/demo, kind/deprecation, kind/documentation, kind/question, sig/advisor, sig/build, sig/cyborgs, sig/devops, sig/documentation, sig/indicators, sig/investigator, sig/knowledge-graph, sig/slo, sig/solvers, thoth/group-programming, thoth/human-intervention-required, thoth/potential-observation, tide/merge-method-merge, tide/merge-method-rebase, tide/merge-method-squash, triage/duplicate, triage/needs-information, triage/not-reproducible, triage/unresolved

In response to this:

Describe the bug

$ gd 
diff --git a/app.py b/app.py                                                                                                                                                                                                                  
index 5fbd05a..a26f4a3 100755                                                                                                                                                                                                                 
--- a/app.py                                                                                                                                                                                                                                  
+++ b/app.py                                                                                                                                                                                                                                  
@@ -94,7 +94,10 @@ def main() -> None:                                                                                                                                                                                                        
    _print_info()                                                                                                                                                                                                                            
    print("Tests are executed using", args, file=sys.stderr)                                                                                                                                                                                 
                                                                                                                                                                                                                                             
-    exit_code = behave_main(args)                                                                                                                                                                                                            
+    try:                                                                                                                                                                                                                                     
+        exit_code = behave_main(args)                                                                                                                                                                                                        
+    except OSError as ose:                                                                                                                                                                                                                   
+        pass                                                                                                                                                                                                                                 
                                                                                                                                                                                                                                             
    if _GENERATE_REPORT and _MAIL_REPORT:                                                                                                                                                                                                    
        send_email()                                                                                                                                                                                                                         
$ time ./app.py 
--------------------------------------------------------------------------------                                                                                                                                                              
> Tests are executed against zero-prod deployment                                                                                                                                                                                             
> Tests are executed against User API at api.moc.thoth-station.ninja                                                                                                                                                                          
> Tests are executed against Management API at management.moc.thoth-station.ninja                                                                                                                                                             
> Tests are executed against Amun API at amun.moc.thoth-station.ninja                                                                                                                                                                         
--------------------------------------------------------------------------------                                                                                                                                                              
Tests are executed using ['--show-timings', '-f', 'html', '-o', 'behave-report.html', '--tags', '@seizes_backend_namespace']                                                                                                                  
                                                                                                                                                                                                                                             
Failing scenarios:                                                                                                                                                                                                                            
 features/thamos_advise.feature:14  Run thamos advise on an application stack -- @1.1 Advise                                                                                                                                                 
 features/thamos_advise.feature:15  Run thamos advise on an application stack -- @1.2 Advise                                                                                                                                                 
 features/thamos_advise.feature:27  Run thamos advise on a Git repo -- @1.1 Advise                                                                                                                                                           
 features/thamos_advise.feature:28  Run thamos advise on a Git repo -- @1.2 Advise                                                                                                                                                           
 features/thamos_advise.feature:29  Run thamos advise on a Git repo -- @1.3 Advise                                                                                                                                                           
 features/thamos_advise.feature:30  Run thamos advise on a Git repo -- @1.4 Advise                                                                                                                                                           
 features/thamos_advise.feature:31  Run thamos advise on a Git repo -- @1.5 Advise                                                                                                                                                           
 features/thamos_advise.feature:32  Run thamos advise on a Git repo -- @1.6 Advise                                                                                                                                                           
 features/thamos_provenance_check.feature:13  Run provenance check for a Python software stack -- @1.1 Provenance                                                                                                                            
                                                                                                                                                                                                                                             
0 features passed, 2 failed, 11 skipped                                                                                                                                                                                                       
0 scenarios passed, 9 failed, 30 skipped                                                                                                                                                                                                      
18 steps passed, 9 failed, 127 skipped, 0 undefined                                                                                                                                                                                           
Took 42m36.051s
Exception ignored in: <function ApiClient.__del__ at 0x7f97db083c10>
Traceback (most recent call last):
 File "/home/goern/.local/share/virtualenvs/integration-tests-Me6nOCO7/lib/python3.8/site-packages/thamos/swagger_client/api_client.py", line 78, in __del__
   self.pool.close()
 File "/usr/lib64/python3.8/multiprocessing/pool.py", line 649, in close
   self._change_notifier.put(None)
 File "/usr/lib64/python3.8/multiprocessing/queues.py", line 368, in put
   self._writer.send_bytes(obj)
 File "/usr/lib64/python3.8/multiprocessing/connection.py", line 200, in send_bytes
   self._send_bytes(m[offset:offset + size])
 File "/usr/lib64/python3.8/multiprocessing/connection.py", line 411, in _send_bytes
   self._send(header + buf)
 File "/usr/lib64/python3.8/multiprocessing/connection.py", line 368, in _send
   n = write(self._handle, buf)
OSError: [Errno 9] Bad file descriptor
./app.py  42,05s user 5,01s system 1% cpu 42:37,33 total
                                                                                                                                                                   

To Reproduce
Steps to reproduce the behavior:

  1. check out repo
  2. pipenv shell
  3. ./app.py
  4. See error

Expected behavior
no errors

Additional context

MAIL_REPORT="0"
GENERATE_REPORT="1"
THOTH_DEPLOYMENT_NAME="zero-prod"
THOTH_USER_API_HOST="api.moc.thoth-station.ninja"
THOTH_MANAGEMENT_API_HOST="management.moc.thoth-station.ninja"
THOTH_AMUN_API_HOST="amun.moc.thoth-station.ninja"
THOTH_MANAGEMENT_API_SECRET='***'
THOTH_INTEGRATION_TESTS_TAGS="@seizes_backend_namespace"
ARTIFACTS="/tmp/"

/kind bug
/assign @fridex
/label deployment/zero-prod

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

Stale issues rot after 30d of inactivity.
Mark the issue as fresh with /remove-lifecycle rotten.
Rotten issues close after an additional 30d of inactivity.

If this issue is safe to close now please do so with /close.

/lifecycle rotten

goern commented

/close

@goern: Closing this issue.

In response to this:

/close

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.