ankane/dexter

undefined method `build' error while trying to execute dexter

ayushbindlish opened this issue · 4 comments

dexter                                                                              
/var/lib/gems/3.0.0/gems/pg_query-4.2.3/lib/pg_query/pg_query_pb.rb:6:in `<top (required)>': undefined method `build' for #<Google::Protobuf::DescriptorPool:0x00005625843f3400> (NoMethodError)
	from <internal:/usr/lib/ruby/vendor_ruby/rubygems/core_ext/kernel_require.rb>:85:in `require'
	from <internal:/usr/lib/ruby/vendor_ruby/rubygems/core_ext/kernel_require.rb>:85:in `require'
	from /var/lib/gems/3.0.0/gems/pg_query-4.2.3/lib/pg_query.rb:4:in `<top (required)>'
	from <internal:/usr/lib/ruby/vendor_ruby/rubygems/core_ext/kernel_require.rb>:85:in `require'
	from <internal:/usr/lib/ruby/vendor_ruby/rubygems/core_ext/kernel_require.rb>:85:in `require'
	from /var/lib/gems/3.0.0/gems/pgdexter-0.5.3/lib/dexter.rb:3:in `<top (required)>'
	from <internal:/usr/lib/ruby/vendor_ruby/rubygems/core_ext/kernel_require.rb>:85:in `require'
	from <internal:/usr/lib/ruby/vendor_ruby/rubygems/core_ext/kernel_require.rb>:85:in `require'
	from /var/lib/gems/3.0.0/gems/pgdexter-0.5.3/exe/dexter:6:in `<top (required)>'
	from /usr/local/bin/dexter:25:in `load'
	from /usr/local/bin/dexter:25:in `<main>'

Hi @ayushbindlish, thanks for reporting! Fixed in the commit above, and will push a new release shortly.

@ankane
I ran the following to install main:

gem install specific_install
gem specific_install https://github.com/ankane/dexter.git

dexter -d testglue --pg-stat-statements
/var/lib/gems/3.0.0/gems/pgdexter-0.5.4/lib/dexter/indexer.rb:548:in exec_params': ERROR: pg_stat_statements must be loaded via shared_preload_libraries (PG::ObjectNotInPrerequisiteState) from /var/lib/gems/3.0.0/gems/pgdexter-0.5.4/lib/dexter/indexer.rb:548:in block in execute'
from /var/lib/gems/3.0.0/gems/pgdexter-0.5.4/lib/dexter/indexer.rb:544:in synchronize' from /var/lib/gems/3.0.0/gems/pgdexter-0.5.4/lib/dexter/indexer.rb:544:in execute'
from /var/lib/gems/3.0.0/gems/pgdexter-0.5.4/lib/dexter/indexer.rb:685:in stat_statements' from /var/lib/gems/3.0.0/gems/pgdexter-0.5.4/lib/dexter/indexer.rb:30:in process_stat_statements'
from /var/lib/gems/3.0.0/gems/pgdexter-0.5.4/lib/dexter/client.rb:27:in perform' from /var/lib/gems/3.0.0/gems/pgdexter-0.5.4/lib/dexter/client.rb:9:in start'
from /var/lib/gems/3.0.0/gems/pgdexter-0.5.4/exe/dexter:7:in <top (required)>' from /usr/local/bin/dexter:25:in load'
from /usr/local/bin/dexter:25:in `

'

The postgres.conf solution worked. Thanks.