Uploaded image for project: 'Apache Arrow'
  1. Apache Arrow
  2. ARROW-14076

Unable to use `red-arrow` gem on Heroku/Ubuntu 20.04 (focal)

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 4.0.0
    • 6.0.0
    • Ruby
    • None
    • Ruby 2.7.4 on Ubuntu 20.04/Heroku

    Description

       

      Hello,

       

      I am not able to get the Ruby gems, `red-arrow` and `red-parquet`, to work properly on Heroku.  Heroku itself is merely an Ubuntu 20.04 LTS (focal) container so this really is a question about what dependencies must be installed to get these gems to work on Focal?

      So far I have specified the following in Heroku's `Aptfile`: 

      # Get Heroku's Ubuntu distro for your Stack.  Heroku-20 = focal
      # Running bash on ⬢ <app_name>... up, run.1471 (Hobby)
      # ~ $ lsb_release --codename --short
      
      :repo:deb [trusted=yes arch=amd64] https://apache.jfrog.io/artifactory/arrow/ubuntu/ focal mainlibarrow-dev
      
      libparquet-dev
      libarrow-glib-dev
      libparquet-glib-dev
      libgirepository-1.0-1
      libgirepository1.0-dev
      libglib2.0-dev
      libglib2.0-0
      gir1.2-glib-2.0
      gobject-introspection
      

      Note: the above contains additional packages that were required by `red-arrow` that WERE NOT SPECIFIED in the Installation guide at https://arrow.apache.org/install/.

      Despite all my efforts, I am unable to solve this issue:

      2021-09-21T23:05:11.469561+00:00 heroku[worker.1]: Process exited with status 1
      2021-09-21T23:05:11.263179+00:00 app[worker.1]: bundler: failed to load command: sidekiq (/app/vendor/bundle/ruby/2.7.0/bin/sidekiq)
      2021-09-21T23:05:11.263465+00:00 app[worker.1]: /app/vendor/bundle/ruby/2.7.0/gems/zeitwerk-2.4.2/lib/zeitwerk/kernel.rb:34:in `require': /tmp/build_29fd2902/vendor/bundle/ruby/2.7.0/gems/extpp-0.0.9/ext/extpp/libruby-extpp.so: cannot open shared object file: No such file or directory - /app/vendor/bundle/ruby/2.7.0/gems/red-arrow-4.0.0/lib/arrow.so (LoadError)
      2021-09-21T23:05:11.263508+00:00 app[worker.1]: from /app/vendor/bundle/ruby/2.7.0/gems/zeitwerk-2.4.2/lib/zeitwerk/kernel.rb:34:in `require'
      2021-09-21T23:05:11.263521+00:00 app[worker.1]: from /app/vendor/bundle/ruby/2.7.0/gems/red-arrow-4.0.0/lib/arrow/loader.rb:112:in `require_extension_library'
      2021-09-21T23:05:11.263532+00:00 app[worker.1]: from /app/vendor/bundle/ruby/2.7.0/gems/red-arrow-4.0.0/lib/arrow/loader.rb:31:in `post_load'
      2021-09-21T23:05:11.263544+00:00 app[worker.1]: from /app/vendor/bundle/ruby/2.7.0/gems/gobject-introspection-3.4.4/lib/gobject-introspection/loader.rb:45:in `load'
      2021-09-21T23:05:11.263565+00:00 app[worker.1]: from /app/vendor/bundle/ruby/2.7.0/gems/gobject-introspection-3.4.4/lib/gobject-introspection/loader.rb:25:in `load'
      

       What is super frustrating is that the directory, `/app/vendor/bundle/ruby/2.7.0/gems/red-arrow-4.0.0/lib`, is specified in `LD_LIBRARY_PATH`, so I'm not sure why it's not being found.

      Any help determining the full list of dependent packages for Ubuntu 20.04 (focal) would be greatly appreciated.  

       

      Extra environment details:

       

      Ruby 2.7.4 on Ubuntu 20.04/Heroku

       

      Relevant gem versions:

      red-arrow (4.0.0)

      red-parquet (4.0.0)

      gio2 (3.4.4)

      gobject-introspection (3.4.4)

       

       

       

      Attachments

        Activity

          People

            kou Kouhei Sutou
            danielricecodes Daniel Rice
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: