[Taginfo-dev] Trouble running own instance on ubuntu 14.04

Stephan Knauss osm at stephans-server.de
Tue Mar 17 12:55:32 UTC 2015


Hi,

is anybody running an instance on Ubuntu 14.04 LTS?

I managed to install it by following the instructions on the wiki.

The ruby requirements are a bit unclear. What version of Ruby does it 
expect? Ubuntu comes with 1.9.3. This version is not compatible with the 
"mongrel" gem. Googling suggested to use "thin" instead.

I don't know whether this is sort of drop-in replacement, but I found no 
reference in the source to "mongrel". So either it is obsolete or 
drop-in works.

the r18n-core also turned out to be incompatible with sinatra. Google 
search results told me that the 1.9 branch of ruby is too old, so I 
switched to the 2.1 branch by adding a ppa.

with these changes I am now able to run my instance by calling 
"taginfo.rb" in the web folder.

Running with libapache2-mod-passenger unfortunately fails on me with an 
internal server error.

In the logfile is this callstack:

utils.rb:68 ]: *** Exception NameError in Rack application object 
(uninitialized constant Rack::Request::QUERY_STRING) (process 27936, 
thread 0x000000025ef928(Worker 1)):
         from 
/var/lib/gems/2.1.0/gems/rack-1.6.0/lib/rack/request.rb:24:in `query_string'
         from 
/var/lib/gems/2.1.0/gems/rack-1.6.0/lib/rack/request.rb:188:in `GET'
         from 
/var/lib/gems/2.1.0/gems/rack-1.6.0/lib/rack/request.rb:230:in `params'
         from 
/var/lib/gems/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:893:in `call!'
         from 
/var/lib/gems/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:886:in `call'
         from 
/var/lib/gems/2.1.0/gems/rack-contrib-1.2.0/lib/rack/contrib/jsonp.rb:38:in 
`call'
         from 
/var/lib/gems/2.1.0/gems/rack-1.6.0/lib/rack/logger.rb:15:in `call'
         from 
/var/lib/gems/2.1.0/gems/rack-1.6.0/lib/rack/commonlogger.rb:33:in `call'
         from 
/var/lib/gems/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:217:in `call'
         from 
/var/lib/gems/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:210:in `call'
         from /var/lib/gems/2.1.0/gems/rack-1.6.0/lib/rack/head.rb:13:in 
`call'
         from 
/var/lib/gems/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:180:in `call'
         from 
/var/lib/gems/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:2014:in `call'
         from 
/var/lib/gems/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:1478:in 
`block in call'
         from 
/var/lib/gems/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:1788:in 
`synchronize'
         from 
/var/lib/gems/2.1.0/gems/sinatra-1.4.5/lib/sinatra/base.rb:1478:in `call'
         from 
/usr/lib/ruby/vendor_ruby/phusion_passenger/rack/thread_handler_extension.rb:77:in 
`process_request'
         from 
/usr/lib/ruby/vendor_ruby/phusion_passenger/request_handler/thread_handler.rb:142:in 
`accept_and_process_next_request'
         from 
/usr/lib/ruby/vendor_ruby/phusion_passenger/request_handler/thread_handler.rb:110:in 
`main_loop'
         from 
/usr/lib/ruby/vendor_ruby/phusion_passenger/request_handler.rb:448:in 
`block (3 levels) in start_threads'


The faulty line is this:
    def query_string;    @env[QUERY_STRING].to_s                  end


I am quite illiteral with Ruby. Is the given line in the rack library 
correct? I would have expected a quoted string like in the surrounding 
lines.

But it really does not explain to me why it only fails in Apache.

Any idea how to proceed? What versions of the libraries/Ruby are 
required for taginfo? Why could it fail with apache but work standalone?
Is it a different codepath?

Stephan



More information about the Taginfo-dev mailing list