Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Google::Protobuf::TypeError: Unable to add defs to DescriptorPool: out of memory #8197

Closed
connorgallopo opened this issue Jan 8, 2021 · 3 comments
Labels

Comments

@connorgallopo
Copy link

connorgallopo commented Jan 8, 2021

What version of protobuf and what language are you using?
Version: 3.1.2 as defined in https://github.com/googleads/google-ads-ruby/blob/master/google-ads-googleads.gemspec
Language: Ruby

What operating system (Linux, Windows, ...) and version?
red hat el6
Linux version 2.6.32-754.25.1.el6.i686 (mockbuild@x86-031.build.eng.bos.redhat.com) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-23) (GCC) ) #1 SMP Wed Nov 20 15:06:20 EST 2019
What runtime / compiler are you using (e.g., python version or gcc version)

What did you do?
Steps to reproduce the behavior:

  1. Try to deploy with capistrano
  2. Deploy reaches db migrations
  3. see error
  4. See error

What did you expect to see
Expected to see db:migrate complete
What did you see instead?
Google::Protobuf::TypeError: Unable to add defs to DescriptorPool: out of memory

Google::Protobuf::TypeError: Unable to add defs to DescriptorPool: out of memory
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/google-ads-googleads-8.1.0/lib/google/ads/google_ads/v4/errors/keyword_plan_ad_group_error_pb.rb:8:in `add_file'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/google-ads-googleads-8.1.0/lib/google/ads/google_ads/v4/errors/keyword_plan_ad_group_error_pb.rb:8:in `block in <main>'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/google-ads-googleads-8.1.0/lib/google/ads/google_ads/v4/errors/keyword_plan_ad_group_error_pb.rb:7:in `instance_eval'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/google-ads-googleads-8.1.0/lib/google/ads/google_ads/v4/errors/keyword_plan_ad_group_error_pb.rb:7:in `build'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/google-ads-googleads-8.1.0/lib/google/ads/google_ads/v4/errors/keyword_plan_ad_group_error_pb.rb:7:in `<main>'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `block in require_with_bootsnap_lfi'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/loaded_features_index.rb:92:in `register'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:21:in `require_with_bootsnap_lfi'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:30:in `require'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/activesupport-5.2.3/lib/active_support/dependencies.rb:291:in `block in require'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/activesupport-5.2.3/lib/active_support/dependencies.rb:257:in `load_dependency'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/activesupport-5.2.3/lib/active_support/dependencies.rb:291:in `require'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/google-ads-googleads-8.1.0/lib/google/ads/google_ads/v4/errors/errors_pb.rb:72:in `<main>'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `block in require_with_bootsnap_lfi'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/loaded_features_index.rb:92:in `register'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:21:in `require_with_bootsnap_lfi'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:30:in `require'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/activesupport-5.2.3/lib/active_support/dependencies.rb:291:in `block in require'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/activesupport-5.2.3/lib/active_support/dependencies.rb:257:in `load_dependency'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/activesupport-5.2.3/lib/active_support/dependencies.rb:291:in `require'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/google-ads-googleads-8.1.0/lib/google/ads/google_ads/errors.rb:118:in `block in <module:Errors>'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/google-ads-googleads-8.1.0/lib/google/ads/google_ads/errors.rb:117:in `each'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/google-ads-googleads-8.1.0/lib/google/ads/google_ads/errors.rb:117:in `each_with_object'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/google-ads-googleads-8.1.0/lib/google/ads/google_ads/errors.rb:117:in `<module:Errors>'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/google-ads-googleads-8.1.0/lib/google/ads/google_ads/errors.rb:22:in `<module:GoogleAds>'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/google-ads-googleads-8.1.0/lib/google/ads/google_ads/errors.rb:21:in `<module:Ads>'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/google-ads-googleads-8.1.0/lib/google/ads/google_ads/errors.rb:20:in `<module:Google>'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/google-ads-googleads-8.1.0/lib/google/ads/google_ads/errors.rb:19:in `<main>'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `block in require_with_bootsnap_lfi'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/loaded_features_index.rb:92:in `register'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:21:in `require_with_bootsnap_lfi'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:30:in `require'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/activesupport-5.2.3/lib/active_support/dependencies.rb:291:in `block in require'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/activesupport-5.2.3/lib/active_support/dependencies.rb:257:in `load_dependency'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/activesupport-5.2.3/lib/active_support/dependencies.rb:291:in `require'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/google-ads-googleads-8.1.0/lib/google/ads/google_ads/google_ads_client.rb:32:in `<main>'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `block in require_with_bootsnap_lfi'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/loaded_features_index.rb:92:in `register'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:21:in `require_with_bootsnap_lfi'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:30:in `require'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/activesupport-5.2.3/lib/active_support/dependencies.rb:291:in `block in require'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/activesupport-5.2.3/lib/active_support/dependencies.rb:257:in `load_dependency'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/activesupport-5.2.3/lib/active_support/dependencies.rb:291:in `require'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/google-ads-googleads-8.1.0/lib/google/ads/google_ads.rb:19:in `<main>'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `block in require_with_bootsnap_lfi'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/loaded_features_index.rb:92:in `register'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:21:in `require_with_bootsnap_lfi'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/bootsnap-1.4.5/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:30:in `require'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/activesupport-5.2.3/lib/active_support/dependencies.rb:291:in `block in require'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/activesupport-5.2.3/lib/active_support/dependencies.rb:257:in `load_dependency'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/activesupport-5.2.3/lib/active_support/dependencies.rb:291:in `require'
/http/www/e/einsteinapps.com/google-ads-task/releases/20210107230512/config/application.rb:14:in `<top (required)>'
/http/www/e/einsteinapps.com/google-ads-task/releases/20210107230512/Rakefile:4:in `require_relative'
/http/www/e/einsteinapps.com/google-ads-task/releases/20210107230512/Rakefile:4:in `<top (required)>'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/rake-12.3.3/lib/rake/rake_module.rb:29:in `load'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/rake-12.3.3/lib/rake/rake_module.rb:29:in `load_rakefile'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/rake-12.3.3/lib/rake/application.rb:703:in `raw_load_rakefile'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/rake-12.3.3/lib/rake/application.rb:104:in `block in load_rakefile'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/rake-12.3.3/lib/rake/application.rb:186:in `standard_exception_handling'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/rake-12.3.3/lib/rake/application.rb:103:in `load_rakefile'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/rake-12.3.3/lib/rake/application.rb:82:in `block in run'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/rake-12.3.3/lib/rake/application.rb:186:in `standard_exception_handling'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/rake-12.3.3/lib/rake/application.rb:80:in `run'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/gems/rake-12.3.3/exe/rake:27:in `<top (required)>'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/bin/rake:23:in `load'
/http/www/e/einsteinapps.com/google-ads-task/shared/bundle/ruby/2.6.0/bin/rake:23:in `<top (required)>'
/usr/local/rvm/rubies/ruby-2.6.3/lib/ruby/2.6.0/bundler/cli/exec.rb:74:in `load'
/usr/local/rvm/rubies/ruby-2.6.3/lib/ruby/2.6.0/bundler/cli/exec.rb:74:in `kernel_load'
/usr/local/rvm/rubies/ruby-2.6.3/lib/ruby/2.6.0/bundler/cli/exec.rb:28:in `run'
/usr/local/rvm/rubies/ruby-2.6.3/lib/ruby/2.6.0/bundler/cli.rb:463:in `exec'
/usr/local/rvm/rubies/ruby-2.6.3/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
/usr/local/rvm/rubies/ruby-2.6.3/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor/invocation.rb:126:in `invoke_command'
/usr/local/rvm/rubies/ruby-2.6.3/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor.rb:387:in `dispatch'
/usr/local/rvm/rubies/ruby-2.6.3/lib/ruby/2.6.0/bundler/cli.rb:27:in `dispatch'
/usr/local/rvm/rubies/ruby-2.6.3/lib/ruby/2.6.0/bundler/vendor/thor/lib/thor/base.rb:466:in `start'
/usr/local/rvm/rubies/ruby-2.6.3/lib/ruby/2.6.0/bundler/cli.rb:18:in `start'
/usr/local/rvm/rubies/ruby-2.6.3/lib/ruby/gems/2.6.0/gems/bundler-1.17.2/exe/bundle:30:in `block in <top (required)>'
/usr/local/rvm/rubies/ruby-2.6.3/lib/ruby/2.6.0/bundler/friendly_errors.rb:124:in `with_friendly_errors'
/usr/local/rvm/rubies/ruby-2.6.3/lib/ruby/gems/2.6.0/gems/bundler-1.17.2/exe/bundle:22:in `<top (required)>'
/usr/local/rvm/gems/ruby-2.6.3/bin/bundle:23:in `load'
/usr/local/rvm/gems/ruby-2.6.3/bin/bundle:23:in `<main>'

Make sure you include information that can help us debug (full error message, exception listing, stack trace, logs).

Anything else we should know about your project / environment

The entire config lives in application.rb:

require_relative 'boot'

require "rails"
# Pick the frameworks you want:
require "active_model/railtie"
require "active_job/railtie"
require "active_record/railtie"
require "active_storage/engine"
require "action_controller/railtie"
require "action_mailer/railtie"
require "action_view/railtie"
require "action_cable/engine"
require "sprockets/railtie"
require "google/ads/google_ads"
# require "rails/test_unit/railtie"

# Require the gems listed in Gemfile, including any gems
# you've limited to :test, :development, or :production.
Bundler.require(*Rails.groups)

module GoogleAdsTask
  class Application < Rails::Application
    # Initialize configuration defaults for originally generated Rails version.
    config.load_defaults 5.2

    # Settings in config/environments/* take precedence over those specified here.
    # Application configuration can go into files in config/initializers
    # -- all .rb files in that directory are automatically loaded after loading
    # the framework and any gems in your application.

    # Don't generate system test files.
    config.generators.system_tests = nil

    # Set up the Google Ads API client for use in the app
    # Accessible by Rails.application.config.gclient
    config.gclient = Google::Ads::GoogleAds::GoogleAdsClient.new do |config|
      config.client_id = Rails.application.credentials.client_id
      config.client_secret = Rails.application.credentials.client_secret
      config.refresh_token = Rails.application.credentials.refresh_token
      config.developer_token = Rails.application.credentials.developer_token
      config.login_customer_id = Rails.application.credentials.login_customer_id

      config.logger = Logger.new(STDOUT)
    end
  end
end
@haberman haberman added the ruby label Jan 29, 2021
@haberman
Copy link
Member

The Ruby implementation has been extensively changed in #8184, are you able to test with the master branch?

If not, please try again after the next release, which should be in a few weeks.

@haberman
Copy link
Member

Please try out the newest release and let me know if you still see this problem.

@haberman
Copy link
Member

haberman commented Apr 3, 2021

I'm closing this, please leave a comment if you see this again.

@haberman haberman closed this as completed Apr 3, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants