oracle / truffleruby

A high performance implementation of the Ruby programming language, built on GraalVM.
https://www.graalvm.org/ruby/
Other
3.02k stars 185 forks source link

rb_define_virtual_variable is needed by memcached #2750

Closed nirvdrum closed 2 years ago

nirvdrum commented 2 years ago

While trying to run the memcached gem, I ran into an issue with rb_define_virtual_variable not having been implemented:

/Users/nirvdrum/.gem/truffleruby/3.0.3/bundler/gems/memcached-bc704e00ad20/ext/rlibmemcached/rlibmemcached_wrap.c:13447:in `Init_rlibmemcached': External LLVMFunction rb_define_virtual_variable cannot be found. (Polyglot::ForeignException)
    from /Users/nirvdrum/.gem/truffleruby/3.0.3/bundler/gems/memcached-bc704e00ad20/lib/memcached.rb:19:in `<unknown>'
    from /Users/nirvdrum/.gem/truffleruby/3.0.3/bundler/gems/memcached-bc704e00ad20/lib/memcached.rb:19:in `Kernel#gem_original_require'
    from /Users/nirvdrum/.gem/truffleruby/3.0.3/bundler/gems/memcached-bc704e00ad20/lib/memcached.rb:19:in `<top (required)>'
    from <internal:core> core/kernel.rb:234:in `Kernel#gem_original_require'
    from /Users/nirvdrum/.gem/truffleruby/3.0.3/gems/bundler-2.3.22/lib/bundler/runtime.rb:60:in `block (2 levels) in Bundler::Runtime#require'
    from /Users/nirvdrum/.gem/truffleruby/3.0.3/gems/bundler-2.3.22/lib/bundler/runtime.rb:55:in `Array#each'
    from /Users/nirvdrum/.gem/truffleruby/3.0.3/gems/bundler-2.3.22/lib/bundler/runtime.rb:55:in `block in Bundler::Runtime#require'
    from /Users/nirvdrum/.gem/truffleruby/3.0.3/gems/bundler-2.3.22/lib/bundler/runtime.rb:44:in `Array#each'
    from /Users/nirvdrum/.gem/truffleruby/3.0.3/gems/bundler-2.3.22/lib/bundler/runtime.rb:44:in `Bundler::Runtime#require'
    from /Users/nirvdrum/.gem/truffleruby/3.0.3/gems/bundler-2.3.22/lib/bundler.rb:187:in `Bundler.require'
    from /Users/nirvdrum/dev/workspaces/shopify_metrics/spec/dummy/config/application.rb:22:in `<top (required)>'
    from <internal:core> core/kernel.rb:293:in `Kernel#require_relative'
    from /Users/nirvdrum/dev/workspaces/shopify_metrics/spec/dummy/config/environment.rb:4:in `<top (required)>'
    from <internal:core> core/kernel.rb:234:in `Kernel#gem_original_require'
    from <internal:/Users/nirvdrum/dev/workspaces/truffleruby-ws/graal/sdk/mxbuild/darwin-aarch64/GRAALVM_A33290E019_JAVA11/graalvm-a33290e019-java11-23.0.0-dev/Contents/Home/languages/ruby/lib/mri/rubygems/core_ext/kernel_require.rb>:64:in `Kernel#require'
    from /Users/nirvdrum/dev/workspaces/shopify_metrics/spec/spec_helper.rb:4:in `<top (required)>'
    from <internal:core> core/kernel.rb:234:in `Kernel#gem_original_require'
    from <internal:/Users/nirvdrum/dev/workspaces/truffleruby-ws/graal/sdk/mxbuild/darwin-aarch64/GRAALVM_A33290E019_JAVA11/graalvm-a33290e019-java11-23.0.0-dev/Contents/Home/languages/ruby/lib/mri/rubygems/core_ext/kernel_require.rb>:64:in `Kernel#require'
    from spec/statsd_subscribers_spec.rb:3:in `<main>'
nirvdrum commented 2 years ago

Fixed by cb44f1b.