Commit graph

71 commits

Author SHA1 Message Date
Takashi Kokubun
881bc2a176
Skip running a DRb test on MinGW
It hangs even after a retry
7966439530

We contacted GitHub Suppport about this before, and we concluded that
the problem is on our end. Unfortunately we don't have a bandwidth to
fix this MinGW problem, so until we get to work on it, this should be
just skipped to avoid a sporadic CI timeout.
2022-08-25 11:37:39 -07:00
Takashi Kokubun
1a63468831
Prepare for removing RubyVM::JIT (#5262) 2021-12-13 23:07:46 -08:00
Hiroshi SHIBATA
f6c3228794 [ruby/drb] Use omit instead of skip for test-unit
0da149e7a9
2021-09-28 17:31:08 +09:00
Takashi Kokubun
e1fee7f949
Rename RubyVM::MJIT to RubyVM::JIT
because the name "MJIT" is an internal code name, it's inconsistent with
--jit while they are related to each other, and I want to discourage future
JIT implementation-specific (e.g. MJIT-specific) APIs by this rename.

[Feature #17490]
2021-01-13 22:46:51 -08:00
Benoit Daloze
b4ec4a41c2 Guard all accesses to RubyVM::MJIT with defined?(RubyVM::MJIT) &&
* Otherwise those tests, etc cannot run on alternative Ruby implementations.
2020-12-04 16:45:54 +01:00
Hiroshi SHIBATA
7473b4c106
Explicitly loading with envutil.rb 2020-05-28 14:41:08 +09:00
Takashi Kokubun
d8fcc67642
Skip test_06_timeout for --jit-wait CI
This test has been too unstable on trunk-mjit-wait
http://ci.rvm.jp/results/trunk-mjit-wait@silicon-docker/2782206
2020-03-08 22:34:33 -07:00
Kazuhiro NISHIYAMA
7be550d046
Stop Thread.new in DRb::TimerIdConv::TimerHolder2#on_gc
and add more stop_pool after stop_service
2019-12-10 12:43:49 +09:00
Kazuhiro NISHIYAMA
88ee375dd6
Revert "Add debug option to check ci failures on solaris"
This reverts commit f289e3994b.
2019-12-05 09:44:09 +09:00
Kazuhiro NISHIYAMA
a0bc0e1ba1 Fix thread leak in drb 2019-12-04 20:57:24 +09:00
Jeremy Evans
d0ed935d5b Fix some DRb issues (#2552)
* Handle BasicObject in drb

Also fix a bug in rescue clause of any_to_s because sprintf
does not handle the %l modifier.

Fixes [Bug #7833]

* Do not send a reply to the client if there is a connection error

This allows for normal TCP shutdown (fin-ack-fin-ack instead of
fin-ack-push-rst).

Patch from pierre@mouraf.org (Pierre-Alexandre Meyer).

Fixes [Bug #2339]

* Detect fork and do not reuse forked connections in drb

This associates each DRbConn with a pid, and if the pid changes,
it closes any DRbConns in the pool with a pid that no longer
matches.  This fixes DRb servers from sending messages intended
for one client to another client after forking.

Fixes [Bug #2718]
Fixes [Bug #14471]
2019-10-14 14:20:32 +09:00
Yusuke Endoh
53a7abe2cd test/drb/drbtest.rb: Skip test_06_timeout on Solaris10s
The test seems to have a race condition, which fails on very slow
machine like Solaris10s.  So skip it.

In addition, this change restores timeout guard that was removed at
0660d7cb53.  This is because the test gets
stuck forever when something wrong occurs.  It is better to fail the
test than stuck.
2019-09-02 22:33:27 +09:00
Yusuke Endoh
007d6d15f4 test/drb/drbtest.rb: Use EnvUtil.timeout for timeout scale factor 2019-09-01 23:29:39 +09:00
Yusuke Endoh
188c2b67c9 Revert "Revert "Revert "Skip BUGs on Solaris"""
This reverts commit 3be3948870.

The Solaris environment couldn't lookup the hostname itself by a wrong
setting.  Now it is fixed, so try again.
2019-09-01 23:27:44 +09:00
Yusuke Endoh
3be3948870 Revert "Revert "Skip BUGs on Solaris""
This reverts commit 84dca8eff0.

"exceution expired" occurred on Solaris.
20190901T072504Z.fail.html.gz
2019-09-01 18:57:40 +09:00
Yusuke Endoh
84dca8eff0 Revert "Skip BUGs on Solaris"
This reverts commit 8adefd4cf2.

I couldn't see any failure on Solaris if the guard is removed.
Give it a try.
2019-09-01 15:16:19 +09:00
naruse
0660d7cb53 Just skip on armv7l-linux
it seems ssl.close doesn't cause EOFError on client side, but just skip
because it breaks test-all.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65518 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-03 23:08:08 +00:00
naruse
df58e74e02 Add timeout
it breaks armv7 CI.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65499 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-02 13:30:48 +00:00
kazu
8adefd4cf2 Skip BUGs on Solaris
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65333 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-23 15:05:09 +00:00
kazu
f289e3994b Add debug option to check ci failures on solaris
failed to start extserv?:
- 20181020T132506Z.fail.html.gz

BUG in sysread of OpenSSL:
- 20181020T132408Z.fail.html.gz
- 20181020T131807Z.fail.html.gz

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65304 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-22 12:21:19 +00:00
kazu
4757c7eead Run background threads while testing drb
Do not start background thread on load test/drb/drbtest.rb,
and stop threads on each test.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65247 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-20 13:14:02 +00:00
kazu
310e91f505 Remove unused test files related $SAFE>=2
unused since r14024

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60143 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-10-09 11:20:00 +00:00
nobu
08e74bfa2c use dedicated assertions
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58272 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-07 13:26:12 +00:00
nobu
434fc4c8a0 drbtest.rb: make command an array
* test/drb/drbtest.rb (DRbService): make @@ruby an array to be
  consistent with r35424.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53812 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-02-12 04:24:10 +00:00
naruse
3e92b635fb Add frozen_string_literal: false for all files
When you change this to true, you may need to add more tests.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53141 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-16 05:07:31 +00:00
nobu
beb1c085d5 use Timeout.timeout
* time: Object#timeout has been deprecated a long time ago, use
  Timeout.timeout.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51225 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-07-13 10:07:01 +00:00
nobu
2049c58dfd drbtest.rb: refactor
* test/drb/drbtest.rb (test_07_public_private_protected_missing):
  refactor by splitting and using assert_raise.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49574 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-12 02:47:29 +00:00
akr
fb2008a73a * test/lib/envutil.rb: Moved from test/ruby/.
* test/lib/find_executable.rb: Ditto.

* test/lib/memory_status.rb: Ditto.

* test/lib/test/unit.rb: require envutil.

* test/: Don't require envutil in test files.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@48409 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-11-13 16:05:37 +00:00
normal
9bb7dfa247 normalize reference to Timeout::Error
From: John Bachir <j@jjb.cc>

* bootstraptest/test_io.rb (assert_finish):
  normalize rescue for Timeout::Error
* lib/net/ftp.rb (Net#read_timeout): ditto for doc
* lib/resolv.rb (Resolv::ResolvTimeout): ditto for subclass
* lib/webrick/httprequest.rb (_read_data): ditto for rescue
* sample/timeout.rb (p timeout): ditto for call
* test/drb/drbtest.rb (test_06_timeout): ditto
* test/ruby/test_readpartial.rb (test_open_pipe): ditto
* test/thread/test_queue.rb (test_queue_thread_raise): ditto
* thread.c (rb_thread_s_handle_interrupt): ditto for doc
  [ruby-core:65481] [misc #10339]

TimeoutError is a legacy constant, Timeout::Error is the canonical constant.
This patch normalizes all code and comments to reference Timeout::Error.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47838 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-10-07 20:00:09 +00:00
akr
59ae4924b0 Join threads.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46315 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-02 11:34:50 +00:00
akr
5cd71131b8 * test/drb: Wrap tests definitions by DRbTests module. This makes
several tests (ACLEntryTest, TestBug4409, etc.) easier to understand
  that they are tests for DRb.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46293 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-06-01 03:07:58 +00:00
nobu
73cf9abd1c drbtest.rb: avoid leaking threads
* test/drb/drbtest.rb (test_06_timeout): clean up worker threads
  to avoid leaking threads.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46208 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-28 08:03:55 +00:00
nobu
b0f623f5f4 drbtest.rb: DRbBase
* test/drb/drbtest.rb (DRbBase): extract from DRbCore and DRbAry for
  setup_service and teardown.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41426 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-19 07:47:38 +00:00
usa
13fb747c37 * test/drb/drbtest.rb (Drb{Core,Ary}#teardown): retry Process.kill
if it fails with Errno::EPERM on Windows (workaround).
  [ruby-dev:47245] [Bug #8251]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40232 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-04-11 04:21:34 +00:00
marcandre
0003ac99cc Remove very obsolete test code
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39631 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-03-08 01:21:41 +00:00
shirosaki
d0df0547c6 drbtest.rb: use :KILL on Windows
* test/drb/drbtest.rb (DRbCore#teardown):
  Use Process.kill :KILL on Windows because Process.kill :INT silently
  fails on Windows 7 and raises EINVAL on Windows XP for spawned
  process with new_pgroup: false.

* test/drb/drbtest.rb (DRbAry#teardown): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37055 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-29 11:19:02 +00:00
naruse
796700aca7 check @there if it is nil to prevent infinite loop
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36998 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-20 08:05:05 +00:00
eregon
fd7dc23d28 Kernel#inspect: improve consistency and do not call #to_s.
* object.c (rb_obj_inspect): Kernel#inspect: do not call #to_s. A class
  can now benefit from the nice default #inspect even if it defines #to_s.
  Also, there is no more unexpected change in #inspect result.
* NEWS: Add note about the change.
* bignum.c, io.c, numeric.c, object.c, proc.c, vm.c (Init_*):
  Adapt internal structures (by aliasing #inspect to #to_s) so they
  don't rely on the removed behavior (#inspect calling overridden #to_s).
* test/ruby/test_object.rb (test_inspect): add tests for Kernel#inspect.
* lib/pp.rb (class PP): do not call #to_s anymore, as #inspect
  no more does (mame).
* test/test_pp.rb (class PPInspectTest): remove related assertion (mame).
  [ruby-core:43238][Feature #6130]
* test/drb/drbtest.rb (DRbCore#teardown, DRbAry#teardown):
  adapt DRb tests with the new change (shirosaki).
  [ruby-core:47182][Bug #6866]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36709 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-08-15 11:50:01 +00:00
seki
939b0e9c7d fixed: can't delete unix domain sockets problem
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36456 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-07-18 22:39:28 +00:00
usa
b05c95d93f * test/drb/drbtest.rb ({DRbCore,DRbAry}#teardown}: cannot pass SIGTERM
to another process on Windows, so use SIGINT instead.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35451 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-24 01:56:35 +00:00
akr
8f16d22e99 * test/drb/drbtest.rb: rescue Errno::ESRCH for Process.kill.
[ruby-dev:45551] reported by NARUSE, Yui.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35433 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-23 10:55:39 +00:00
akr
e16e961bab * lib/drb/extservm.rb (DRb::ExtServManager): don't use /bin/sh to
invoke service subprocess.  mark detach threads for clean up.

* test/drb/drbtest.rb: clean up the service subprocess in teardown.

* test/drb/test_drb.rb: set @service_name for teardown.

* test/drb/test_drbunix.rb: ditto.

* test/drb/test_drbssl.rb: ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35424 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-04-22 11:35:03 +00:00
seki
190bc7ae0e fix [Bug #4409]. add DRbServer#here?
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32254 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-27 15:18:22 +00:00
seki
b54b86d898 raise DRbConnError instead of ArgumentError if too many arguments.
[ruby-dev:41481]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28316 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-06-14 08:52:30 +00:00
nobu
d3fc1d3e3a * test/drb/drbtest.rb (DRbService.add_service_command): quotes
rubybin only, not including -d.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26157 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-12-23 01:31:37 +00:00
naruse
6bbed0e31b * test: use require_relative.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24878 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-09-12 17:00:51 +00:00
nobu
287a34ae0d * {ext,lib,test}/**/*.rb: removed trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22784 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-06 03:56:38 +00:00
nobu
00b4a3f9c4 * test: assert_raises has been deprecated since a long time ago.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19536 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-24 17:44:39 +00:00
seki
5e8e08d74e * test/drb/drbtest.rb (test_07_public_private_protected_missing):
followed current Ruby specification.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14338 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-19 15:11:37 +00:00
ko1
860b40fd63 * compile.c (iseq_compile_each): remove "retry" in block.
("iter{retry}" cause syntax error)
  Currently, "begin; ...; rescue; iter{retry}; end" cause
  syntax error too.
* bootstraptest/test_jump.rb: ditto.
* lib/drb/invokemethod.rb: ditto.
* sample/drb/darrayc.rb: ditto.
* sample/test.rb: ditto.
* test/drb/drbtest.rb: ditto.
* test/ruby/test_iterator.rb: ditto.
* sample/test.rb: add a 'test' directory on the SYSTEM test.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14326 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-19 08:46:49 +00:00