For Programmers: Free Programming Magazines  


Home > Archive > Smalltalk > March 2005 > Mail Reading Problem Using IMAPClient in VW7.3









You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

 

Author Mail Reading Problem Using IMAPClient in VW7.3
Suresh Kumar

2005-03-11, 4:01 pm


Hi All

I am using IMAPClient to fetch the messages from my mailbox using a process.
If the number of messages in the mailbox is greater than 150, the program
failed to read all the mails.
It reads only about 100 messages and the process go to the blocked state.
The waiting context is Net.TimedPromise>>Value.
Is it related to timedout error?
But I didn't got any exception.

I am attaching the stack report below.

Any help me out?

Thanks in advance,

Suresh.






Debug process
Semaphore>>wait
Net.TimedPromise>>value
optimized [] in Net.IMAPCommand>>waitFor:
BlockClosure>>on:do:
Net.IMAPCommand>>waitFor:
Net.IMAPClient>>executeAndWait:arguments:
Net.IMAPSelectedState>>fetch:retrieve:
Net.IMAPClient>>fetch:retrieve:
Net.IMAPClient>>fetch:with:
Net.IMAPClient>>fetchMessage:

----------------------------------------------------------------------
Semaphore>>wait
Receiver:
a Semaphore
Instance Variables:
firstLink = nil
lastLink = nil
excessSignals = 2
Context PC = 1

----------------------------------------------------------------------
Net.TimedPromise>>value
Receiver:
a Net.TimedPromise
Instance Variables:
sync = a Semaphore[0]
value = #done
hasValue = true
exception = nil
delay = a Delay
ms = 20000
Temporaries:
result = nil
Context PC = 16

----------------------------------------------------------------------
optimized [] in Net.IMAPCommand>>waitFor:
Receiver:
an UndefinedObject
Temporaries:
.self = imapv4_14 fetch 11 (RFC822)
Context PC = 7

----------------------------------------------------------------------
BlockClosure>>on:do:
Receiver:
a BlockClosure
Instance Variables:
method = CompiledBlock [] in Net.IMAPCommand>>waitFor:
outerContext = nil
copiedValues = imapv4_14 fetch 11 (RFC822)
Arguments:
anExceptionSelector = OsNeedRetryError
handlerBlock = BlockClosure [] in Net.IMAPCommand>>waitFor:
Context PC = 18

----------------------------------------------------------------------
Net.IMAPCommand>>waitFor:
Receiver:
an Net.IMAPCommand
Instance Variables:
client = a Net.IMAPProtocolInterpreter
sequenceID = 'imapv4_14'
name = 'fetch'
arguments = an OrderedCollection[2]
status = #done
responses = an OrderedCollection[1]
completionResponse = imapv4_14 OK Completed

promise = a Net.TimedPromise
Arguments:
ms = 20000
Context PC = 19

----------------------------------------------------------------------
Net.IMAPClient>>executeAndWait:arguments:
Receiver:
an Net.IMAPClient
Instance Variables:
user = sms.news
hostName = 'mail.ventaglio.com'
portNumber = nil
clientPI = a Net.IMAPProtocolInterpreter
retries = 5
timeout = 20000
delaySeconds = nil
state = a Net.IMAPSelectedState
handler = a Net.IMAPClientHandler
Arguments:
aString = 'fetch'
anArray = an OrderedCollection[2]
Temporaries:
command = imapv4_14 fetch 11 (RFC822)
Context PC = 17

----------------------------------------------------------------------
Net.IMAPSelectedState>>fetch:retrieve:
Receiver:
an Net.IMAPSelectedState
Instance Variables:
client = aIMAPClient on: mail.ventaglio.com:143
Arguments:
messageNumbers = an Array[1]
criteria = an Array[1]
Temporaries:
msgString = '11'
args = an OrderedCollection[2]
Context PC = 21

----------------------------------------------------------------------
Net.IMAPClient>>fetch:retrieve:
Receiver:
an Net.IMAPClient
Instance Variables:
user = sms.news
hostName = 'mail.ventaglio.com'
portNumber = nil
clientPI = a Net.IMAPProtocolInterpreter
retries = 5
timeout = 20000
delaySeconds = nil
state = a Net.IMAPSelectedState
handler = a Net.IMAPClientHandler
Arguments:
messageNumbers = an Array[1]
criteria = an Array[1]
Context PC = 7

----------------------------------------------------------------------
Net.IMAPClient>>fetch:with:
Receiver:
an Net.IMAPClient
Instance Variables:
user = sms.news
hostName = 'mail.ventaglio.com'
portNumber = nil
clientPI = a Net.IMAPProtocolInterpreter
retries = 5
timeout = 20000
delaySeconds = nil
state = a Net.IMAPSelectedState
handler = a Net.IMAPClientHandler
Arguments:
anArrayOfNumbers = an Array[1]
qualifierOrListOfQualifiers = an Array[1]
Temporaries:
args = an Array[1]
result = nil
dict = nil
data = nil
messageNumber = nil
Context PC = 19

----------------------------------------------------------------------
Net.IMAPClient>>fetchMessage:
Receiver:
an Net.IMAPClient
Instance Variables:
user = sms.news
hostName = 'mail.ventaglio.com'
portNumber = nil
clientPI = a Net.IMAPProtocolInterpreter
retries = 5
timeout = 20000
delaySeconds = nil
state = a Net.IMAPSelectedState
handler = a Net.IMAPClientHandler
Arguments:
messageNumber = 11
Temporaries:
result = nil
Context PC = 9



Sponsored Links







Also available: Server administration forum archive | Web Design forum archive | Software forum archive | Hardware reviews archive

Copyright 2008 codecomments.com