Ticket #694 (closed wish: fixed)

Opened 3 years ago

Last modified 3 years ago

GEO widget crashes (NCBI ftp server down?)

Reported by: blaz Owned by: ales
Milestone: 2.6 Component: canvas
Severity: major Keywords:
Cc: Blocking:
Blocked By:

Description

It seems that NCBI's ftp server is down (or has changed something?), and hence GEO DataSets widget crashes:

Unhandled exception of type error_temp occured at 13:44:34:
Traceback:
  File: OWConcurrent.py, line 61 in execute
  Code: self.result = self.func(*self._args, **self._kwargs)
    File: OWGEODatasets.py, line 344 in getdata
    Code: gds = obiGEO.GDS(gds_id)
      File: obiGEO.py, line 72 in __init__
      Code: self._getinfo() # to get the info
        File: obiGEO.py, line 96 in _getinfo
        Code: self._download()
          File: obiGEO.py, line 87 in _download
          Code: if self.verbose else None)
            File: obiData.py, line 241 in retrieve
            Code: self.ftpWorker.retrieve(self.ftpDir+filename[0], os.path.join(self.localDir, filename[1]), update, progressCallback)
              File: obiData.py, line 88 in retrieve
              Code: size, date = self.statFtp(filename)
                File: obiData.py, line 159 in statFtp
                Code: self.ftp.dir(dir, lines.append)
                  File: ftplib.py, line 509 in dir
                  Code: self.retrlines(cmd, func)
                    File: ftplib.py, line 417 in retrlines
                    Code: conn = self.transfercmd(cmd)
                      error_temp: 450 pub/geo/DATA/SOFT/GDS/: No such file or directory 

Please change this such that 1) the widget does not crash but informs the user that "Can't connect to NCBI ftp server" (in new Info box). 2) all the files could be served from Orange file server, such that if the NCBI server is down, the code in the GEO module goes to Orange file server. If this is down as well :-(, the widget should inform the users "Can't connect to NCBI and Orange ftp servers".

Change History

comment:1 Changed 3 years ago by blaz

  • Owner changed from somebody to ales
  • Status changed from new to assigned

comment:2 Changed 3 years ago by ales

  • Status changed from assigned to closed
  • Resolution set to fixed

I changed the ftp download code to retry 3 times with a 3 second delay, before giving up (in this case the widget will display a message to try again later), but did not put the GDS files on the Orange file server. I think the retry fix is sufficient, since I have not failed to download any datasets since its implementation.

Note: See TracTickets for help on using tickets.