Package: libjffi-jni
Version: 1.3.12+ds-1
Severity: normal

Hello,

I'm encountering unexpected failures when running the JRuby testsuite on aarch64 with libjffi-jni_1.3.12+ds-1:

===============================================================================
Failure: test_tcp_info(SocketTest)

/tmp/autopkgtest.LCcGF4/autopkgtest_tmp/test/jruby/test_socket.rb:60:in `block in test_tcp_info' 57: t.join

58: tcp_info = client.getsockopt(Socket::IPPROTO_TCP, Socket::TCP_INFO) 59: state = tcp_info.unpack("C")[0]

=> 60: assert_equal(8, state) # CLOSE_WAIT

61: ensure

62: server.close if server && !server.closed?

63: end

/tmp/autopkgtest.LCcGF4/autopkgtest_tmp/test/jruby/test_socket.rb:49:in `test_tcp_info'
org/jruby/RubyKernel.java:1308:in `catch'
org/jruby/RubyKernel.java:1303:in `catch'
org/jruby/RubyKernel.java:1308:in `catch'
org/jruby/RubyKernel.java:1303:in `catch'
<8> expected but was
<nil>
===============================================================================
..E
===============================================================================
Error: test_tcp_socket_get_keep_cnt(SocketTest): TypeError: size differ. expected as sizeof(int)=4 but 0
org/jruby/ext/socket/Option.java:201:in `int'
/tmp/autopkgtest.LCcGF4/autopkgtest_tmp/test/jruby/test_socket.rb:197:in `test_tcp_socket_get_keep_cnt'
     194:
     195:     def test_tcp_socket_get_keep_cnt
196: socket = Socket.new(Socket::AF_INET, Socket::SOCK_STREAM, 0) => 197: assert_instance_of(Integer, socket.getsockopt(Socket::SOL_TCP, Socket::TCP_KEEPCNT).int)
     198:     ensure
     199:       socket.close
     200:     end
org/jruby/RubyKernel.java:1308:in `catch'
org/jruby/RubyKernel.java:1303:in `catch'
org/jruby/RubyKernel.java:1308:in `catch'
org/jruby/RubyKernel.java:1303:in `catch'
===============================================================================
E
===============================================================================
Error: test_tcp_socket_get_keep_idle(SocketTest): TypeError: size differ. expected as sizeof(int)=4 but 0
org/jruby/ext/socket/Option.java:201:in `int'
/tmp/autopkgtest.LCcGF4/autopkgtest_tmp/test/jruby/test_socket.rb:183:in `test_tcp_socket_get_keep_idle'
     180:   if RbConfig::CONFIG['target_os'] == 'linux'
     181:     def test_tcp_socket_get_keep_idle
182: socket = Socket.new(Socket::AF_INET, Socket::SOCK_STREAM, 0) => 183: assert_instance_of(Integer, socket.getsockopt(Socket::SOL_TCP, Socket::TCP_KEEPIDLE).int)
     184:     ensure
     185:       socket.close
     186:     end
org/jruby/RubyKernel.java:1308:in `catch'
org/jruby/RubyKernel.java:1303:in `catch'
org/jruby/RubyKernel.java:1308:in `catch'
org/jruby/RubyKernel.java:1303:in `catch'
===============================================================================
E
===============================================================================
Error: test_tcp_socket_get_keep_intvl(SocketTest): TypeError: size differ. expected as sizeof(int)=4 but 0
org/jruby/ext/socket/Option.java:201:in `int'
/tmp/autopkgtest.LCcGF4/autopkgtest_tmp/test/jruby/test_socket.rb:190:in `test_tcp_socket_get_keep_intvl'
     187:
     188:     def test_tcp_socket_get_keep_intvl
189: socket = Socket.new(Socket::AF_INET, Socket::SOCK_STREAM, 0) => 190: assert_instance_of(Integer, socket.getsockopt(Socket::SOL_TCP, Socket::TCP_KEEPINTVL).int)
     191:     ensure
     192:       socket.close
     193:     end
===============================================================================

These failures are *not* present when running the testsuite with libjffi-jni_1.3.9+ds-6 shipped in bookworm, nor with the upstream-built 1.3.12 binary version of this library.

I'm not sure but I suspect maybe some element deeper in the build chain changed between bookworm and sid, causing these new issues.

These tests pass fine on amd64.

Thanks,

-- Jérôme

Reply via email to