#133 asynchat.pyc|handle_read|88 error

open
nobody
None
5
2007-08-11
2007-08-11
Mosman
No

I use Outlook Express 6 and Spambayes 1.0.4 with Python 2.5.

Outlook 6 polls my email server and receives a list of messages, but then hangs on attempting to download the messages.

The log shows -

Service not available. Using thread.
Loading database... Listener on port 110 is proxying [My POP3 account]:110
User interface url is http://localhost:8880/
error: uncaptured python exception, closing channel <sb_server.ServerLineReader connected [My POP3 account]:110 at 0x12588f0> (socket.error:(10035, 'The socket operation could not complete without blocking') [asynchat.pyc|handle_read|88] [asyncore.pyc|recv|356])
error: uncaptured python exception, closing channel <sb_server.ServerLineReader connected [My POP3 account]:110 at 0x12589e0> (socket.error:(10035, 'The socket operation could not complete without blocking') [asynchat.pyc|handle_read|88] [asyncore.pyc|recv|356])

... and so on repeated each time the email client calls the POP3 server

The messages readily download using an account which substitutes the POP3 server address for spambayes' "localhost".

Having regard to earlier threads, I have cleaned out the mailbox leaving only 2 (spam) messages and the sourceforge.net account registration, each of 1Kb, available for download on the server. However the spambayes access still hangs.

I have replaced the pop3uidl.dbx file in an attempt to ensure it was not corrupt. (unlikely as other accounts are readily accessed)

This problem was notified twice before but without resolution - see [ 824589 ] sb_server.py doesn't recover after a 'connection timed out'
http://sourceforge.net/tracker/index.php?func=detail&aid=824589&group_id=61702&atid=498103

and

https://sourceforge.net/tracker/?func=detail&atid=498104&aid=1235058&group_id=61702

Finally I have no difficulty accessing the account from another machine also running Outlook 6 and Spambayes 1.0 rc1

Discussion

  • Skip Montanaro
    Skip Montanaro
    2007-08-11

    Logged In: YES
    user_id=44345
    Originator: NO

    Can you try downloading and installing the 1.1a4 installer? It's available at

    http://starship.python.net/crew/mhammond/spambayes-1.1a4.exe

    A lot of bugs have been fixed since 1.0.4.

    Thx,

    Skip Montanaro

     
  • Skip Montanaro
    Skip Montanaro
    2007-08-11

    Logged In: YES
    user_id=44345
    Originator: NO

    Also, note the new retrieval_timeout in the 1.1 series. Read through the comments for 1235058.

    Skip

     
  • Mosman
    Mosman
    2007-08-14

    Logged In: YES
    user_id=1865284
    Originator: YES

    Uninstalling (to the point of manually removing all directories) and reinstalling Spambayes 1.0.4 does not overcome the problem. Installing Spambayes 1.1a4 has not been possible - the installation hangs after reporting that "user interface url is http://localhost:8880/" and "loading database"; after 60 minutes traceback report is "'file [...]/scripts/sb_server.py', line 1109, in <module> run<>; 'file [...]/scripts/sb_server.py', line 1103, in run<start>; 'file [...]/scripts/sb_server.py', line 1040, in start state.close<>; 'file [...]/scripts/sb_server.py', line 789, in close assert self.prepared, 'closed without being prepared!"

    Re "the new retrieval_timeout in the 1.1 series," apart from the circumstance that I can't install 1.1a4, the problem does not seem to be a server timeout at the ISP level, as IE6 downloads messages using an account constructed to access the server directly (ie bypassing spambayes, at the cost of 100+ spam messages daily) with no delay at all; large files (10 mb attachments are not uncommon) cause it no problem and have caused spambayes no problem in the past.

    The proxy cache directories (under C:\Documents and Settings\{user}\Application Data\SpamBayes\Proxy\) have collected some but not all of the messages on the server, received after the problem to which this thread is directed manifested itself. Unfortunately I cleared the server and the cache directories before recording them for comparison.

    Should I go back to 1.0.4? What do I have to delete from the disk and the registry to get a clean install?

    Thanks for your help!

     
  • Mosman
    Mosman
    2007-08-14

    Logged In: YES
    user_id=1865284
    Originator: YES

    Incidentally "http://starship.python.net/crew/mhammond/spambayes-1.1a4.exe" returns a 404 error and the file spambayes-1.1a4.exe isn't locatable on http://starship.python.net/crew/mhammond/ - the link "The SpamBayes project is at sourceforge <http://spambayes.sourceforge.net/>" only leads to version 1.0.4 and a zip file for 1.1a4, which produced the installation problem reported

     
  • Mosman
    Mosman
    2007-08-16

    Logged In: YES
    user_id=1865284
    Originator: YES

    After failing to install 1.1a4, reinstalled 1.0.4, but with no success. IE6 correctly reports the number of messages on the server (eg, "receiving message 1 of 31") but goes no further. No messages appear in the pop3proxy-... directories. The ini file is -

    [Headers]
    notate_to:spam unsure
    [Storage]
    messageinfo_storage_file:g:\outlook express\spambayes.messageinfo.db
    persistent_storage_file:g:\outlook express\hammie.db
    cache_messages:True
    [pop3proxy]
    listen_ports:110
    remote_servers:[my ISP provider]

    The port and ISP server are those on which another OE6 account successfully (without using localhost) downloads messages from the ISP. There are no delays or time-outs on the other account.

    Spambayes is listed among authorised applications under firewall policy in the local machine section of the registry (as C:\Program Files\SpamBayes\bin\sb_tray.exe:*:Enabled:sb_tray) but not materially elsewhere in the registry.

    None of this appears to be any different from my other machines which are successfully running spambayes (except that the python version now used on this machine is 2.5 not 2.3) - which perplexes me!

     
  • Mark Hammond
    Mark Hammond
    2007-08-16

    Logged In: YES
    user_id=14198
    Originator: NO

    The latest installer is at http://starship.python.net/crew/mhammond/spambayes-1.1a4-070629.exe and if skip's lead about the new option doesn't help, I'd try rolling back to python 2.4, just to see if it fixes anything.

     
  • Mosman
    Mosman
    2007-08-22

    Logged In: YES
    user_id=1865284
    Originator: YES

    This is a comparison of two computers where the program works with the one on which it does not - does it illuminate the problem?

    First laptop:
    This configuration of bayescustomize.ini (on a laptop) works with my ISP:

    [Headers]
    notate_to:spam unsure
    [pop3proxy]
    listen_ports:110
    remote_servers:mail.counselschambers.com.au
    [smtpproxy]
    listen_ports:110
    remote_servers:mail.counselschambers.com.au
    ham_address:G:\Outlook Express\spambayes_ham@localhost
    spam_address:G:\Outlook Express\spambayes_spam@localhost
    [Storage]
    messageinfo_storage_file:G:\Outlook Express\spambayes.messageinfo.db
    persistent_storage_file:G:\Outlook Express\hammie.db

    Messages are downloaded without difficulty. SpamBayesService4.log shows this –

    Services are supposed to be run by the system after they have been installed.
    These command line options are available for (de)installation:
    -help
    -install
    -remove
    -auto
    -disabled
    -interactive
    -user: <arg>
    -password: <arg>

    Connecting to the Service Control Manager
    Loading database... SMTP Listener on port 25 is proxying mail.counselschambers.com.au:25
    Listener on port 110 is proxying mail.counselschambers.com.au:110
    User interface url is http://localhost:8880/
    Loading database... SMTP Listener on port 25 is proxying mail.counselschambers.com.au:25
    Listener on port 110 is proxying mail.counselschambers.com.au:110

    ===
    Second laptop

    This configuration of bayescustomize.ini (on another laptop) works with my ISP:

    [Headers]
    notate_to:spam unsure
    [Storage]
    messageinfo_storage_file:g:\outlook express\spambayes.messageinfo.db
    persistent_storage_file:g:\outlook express\hammie.db
    [pop3proxy]
    listen_ports:110
    remote_servers:mail.counselschambers.com.au
    [smtpproxy]
    listen_ports:25
    remote_servers:mail.counselschambers.com.au

    Messages are downloaded without difficulty. SpamBayesService1.log shows this –

    Service not available. Using thread.
    Loading database... SMTP Listener on port 25 is proxying mail.counselschambers.com.au:25
    Listener on port 110 is proxying mail.counselschambers.com.au:110
    User interface url is http://localhost:8880/

    Configuration page on this machine shows:
    POP3 proxy running on 110, proxying to mail.counselschambers.com.au:110.
    Active POP3 conversations: 0.
    POP3 conversations this session: 0.
    Emails classified this session: 0 spam, 0 ham, 0 unsure.
    Total emails trained: Spam: 44786 Ham: 12926
    ===

    This configuration of bayescustomize.ini (on a desktop) does not work with my ISP:

    [Headers]
    notate_to:spam unsure
    [Storage]
    messageinfo_storage_file:G:\Outlook Express\spambayes.messageinfo.db
    persistent_storage_file:G:\Outlook Express\hammie.db
    [pop3proxy]
    listen_ports:110
    remote_servers:mail.counselschambers.com.au
    [smtpproxy]
    listen_ports:110
    remote_servers:mail.counselschambers.com.au
    ham_address:spambayes_ham@localhost
    spam_address:spambayes_spam@localhost

    When the account using “localhost” as server is called, a list of messages is received and acknowledged, but the email client (OE6) hangs on attempting to download messages.
    SpamBayesService1.log shows this –

    Service not available. Using thread.
    Loading database... SMTP Listener on port 110 is proxying mail.counselschambers.com.au:25
    Listener on port 110 is proxying mail.counselschambers.com.au:110
    User interface url is http://localhost:8880/
    error: uncaptured python exception, closing channel <sb_server.ServerLineReader connected mail.counselschambers.com.au:110 at 0xed65d0> (socket.error:(10035, 'The socket operation could not complete without blocking') [asynchat.pyc|handle_read|89] [asyncore.pyc|recv|343])

    The spambayes home page (localhost:8880) records

    POP3 proxy running on 110, proxying to mail.counselschambers.com.au:110.
    Active POP3 conversations: 0.
    POP3 conversations this session: 1.
    Emails classified this session: 0 spam, 0 ham, 0 unsure.
    Total emails trained: Spam: 0 Ham: 0

    Timeout on OE6 is set to 60 seconds (and times out)
    Timeout on spambayes is not set (ie is set to 30 seconds). However, when it is set to 120 seconds (“retrieval_timeout:120”) the same error is recorded in the log (and it is OE6 which times out at 60 seconds) –

    Loading database... SMTP Listener on port 110 is proxying mail.counselschambers.com.au:25
    Listener on port 110 is proxying mail.counselschambers.com.au:110
    error: uncaptured python exception, closing channel <sb_server.ServerLineReader connected mail.counselschambers.com.au:110 at 0x1c0de40> (socket.error:(10035, 'The socket operation could not complete without blocking') [asynchat.pyc|handle_read|89] [asyncore.pyc|recv|343])

    In case “[ 1235058 ] Email timeout” it is suggested that there is a “configurable timeout” in ver 1.1, but making the timeout either shorter or longer seems to make no difference.

    The problem is not apparently with the ISP: both laptops readily access messages through the IE6/Spambayes combination and the desktop readily accesses messages when the server is set to the ISP address rather than “localhost”.

    What is the uncaptured python exception, closing channel <sb_server.ServerLineReader connected mail.counselschambers.com.au:110 at 0x1c0de40>?