20200605T020004Z.fail.html.gz
```
[ 984/20282] IMAPTest#test_connection_closed_without_greeting#<Thread:0x000055b6e9589d28 /home/mame/chkbuild/tmp/build/20200605T020004Z/ruby/test/net/imap/test_imap.rb:133 run> terminated with exception (report_on_exception is true):
/home/mame/chkbuild/tmp/build/20200605T020004Z/ruby/.ext/common/socket.rb:252:in `local_address': closed stream (IOError)
from /home/mame/chkbuild/tmp/build/20200605T020004Z/ruby/.ext/common/socket.rb:252:in `connect_address'
from /home/mame/chkbuild/tmp/build/20200605T020004Z/ruby/test/net/imap/test_imap.rb:514:in `block (2 levels) in test_connection_closed_without_greeting'
from /home/mame/chkbuild/tmp/build/20200605T020004Z/ruby/test/net/imap/test_imap.rb:514:in `each_object'
from /home/mame/chkbuild/tmp/build/20200605T020004Z/ruby/test/net/imap/test_imap.rb:514:in `each'
from /home/mame/chkbuild/tmp/build/20200605T020004Z/ruby/test/net/imap/test_imap.rb:514:in `map'
from /home/mame/chkbuild/tmp/build/20200605T020004Z/ruby/test/net/imap/test_imap.rb:514:in `block in test_connection_closed_without_greeting'
from /home/mame/chkbuild/tmp/build/20200605T020004Z/ruby/test/net/imap/test_imap.rb:134:in `block in start_server'
```
debug print does not include `in_tcp_socket_2`,
so I think other socket connected to server socket.
Add sockets to debug print, and check other socket is in same process or not.
20200604T160009Z.fail.html.gz
```
1) Failure:
IMAPTest#test_connection_closed_without_greeting [/export/home/chkbuild/chkbuild-gcc/tmp/build/20200604T160009Z/ruby/test/net/imap/test_imap.rb:523]:
[Net::IMAP::Error] exception expected, not #<RuntimeError: {:server=>#<TCPServer:(closed)>,
:port=>35490,
:server_created=>
{:server=>"#<TCPServer:fd 10, AF_INET6, ::1, 35490>", :t=>45917010.30510591},
:in_start_server_before_accept=>{:t=>45917010.305154555},
:in_tcp_socket=>
{:host=>"::1",
:port=>35490,
:server=>"#<TCPServer:fd 10, AF_INET6, ::1, 35490>",
:t=>45917010.40560127},
:in_start_server=>
{:sock_addr=>["AF_INET6", 35490, "::1", "::1"],
:sock_peeraddr=>["AF_INET6", 51584, "::1", "::1"],
:t=>45917010.40767231},
:in_start_server_sock_closed=>{:t=>45917010.40770047},
:in_rescue=>
{:e=>#<Errno::EINVAL: Invalid argument - connect(2) for [::1]:35490>,
:server_addr=>"::1",
:t=>45917010.40867455}}
>.
```
closed server doesn't have useful info.
So call inspect before close.
And add local debug code in comment.
20191215T092405Z.fail.html.gz
```
1) Failure:
IMAPTest#test_connection_closed_without_greeting [/export/home/rubyci/chkbuild-tmp/tmp/build/20191215T092405Z/ruby/test/net/imap/test_imap.rb:483]:
[Net::IMAP::Error] exception expected, not #<RuntimeError: {:e=>#<Errno::EINVAL: Invalid argument - connect(2) for [::1]:41748>, :server=>#<TCPServer:(closed)>, :port=>41748, :server_addr=>"::1"}>.
```
In some slow CI environments, the invocation of a thread seems very
slow. This causes a test failure to attempt to connect a server that
does not start yet.
20190615T002420Z.fail.html.gz
20190611T022407Z.fail.html.gz
It is possible for Mutex#sleep (via ConditionVariable#wait)
to prematurely wake up under MJIT (because Mutex#sleep can't
handle spurious wakeups). This affects @idle_done_cond in
Net::IMAP#idle and means the response handler may never
set `in_idle' to `true`.
In any case, ensure the infinite looping `raiser' thread
stops running when the test is done.
Will work on reducing the effect of spurious wakeups from
MJIT...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64387 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Thanks to ShockwaveNN (Pavel Lobashov) for reporting the bug.
[ruby-core:86990] [Bug #14750]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63396 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* The warnings are shown by Thread.report_on_exception defaulting to
true. [Feature #14143] [ruby-core:83979]
* Improves tests by narrowing down the scope where an exception
is expected.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61188 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
The IMAP server of DOCOMO returns such continuation requests.
[ruby-list:50558]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59666 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Otherwise literal data will be sent even if NO response is returned
because @exception is set to nil in receive_responses.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58844 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
timeout specified in "imap.idle(0.2)", there is no gurantee that
the server thread has done all the work before the client thread
performs the assertions. It depends on the thread scheduling.
Add checks to avoid false positives (on AIX, particularly).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54025 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
causes Errno::ECONNRESET or Errno::ECONNABORTED instead of Errno::EPIPE on
Windows.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48738 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
any exception occur.
This fixes a fd leak by IMAPTest#test_imaps_post_connection_check
which start_tls_session() raises an exception.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46210 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test/net/imap/test_imap.rb (imaps_test): join work threads not
to leak threads.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46134 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
connection is closed without a greeting response.
[ruby-core:40938] [Bug #5616]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35055 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
default_tls_port, default_ssl_port, default_imaps_port):
added methods for consistency with Net::POP.
based on the patch by art lussos. [ruby-core:38997] [Bug #5198]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33182 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
connection is closed. based on the patch by Hugo Barauna.
[Bug #5190] [ruby-core:38930]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33007 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
resolve to "127.0.0.1". On my machine it is "::1" instead.
The problem is, you have to connect to the imaps server via
the canonical name written in a server certificate, and that
of the server.cert is "localhost". So you have to listen to
the address of what "localhost" resolves to. I think this
situation cannot be resolved in a handy manner because the
test "test_imaps_post_connection_check" is actually
expecting to connect to a server via an address other than
the CN. On my machine several assertions won't pass because
the test cannot connect to the server.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29257 b2dd03c8-39d4-4d8f-98ff-823fe69b080e