[CCBC-180] Segfault when in case server name resolved to several addresses, where first of them rejects couchbase connection Created: 28/Jan/13  Updated: 05/Mar/13  Resolved: 15/Feb/13

Status: Closed
Project: Couchbase C client library libcouchbase
Component/s: library
Affects Version/s: 2.0.3
Fix Version/s: 2.0.4
Security Level: Public

Type: Bug Priority: Critical
Reporter: Tim Ray Assignee: Sergey Avseyev
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment: linux - several


 Description   
I get a lot of segfaults using the client when trying to connect to _external_ couchbase servers (i.e. when there is no couchbase server on localhost).

I've tested this on a couple different machines, with both ruby REE and 1.9.3 - same results every time.

To reproduce:
1) setup couchbase server / cluster on machine-1
2) setup ruby development environment on machine-2
-- I'm using rvm
-- I've install the couchbase library
3) run simple ruby program to test connections:
#simple_test.rb
require 'couchbase'
Couchbase.connection_options = {:bucket => 'rubytest', :node_list => ['123.45.67.89:8091'], :password => 'password'}
Couchbase.connect
4) watch it segfault when you run it

Essentially, it seems that setting the 'connection_optoins' has no effect on creating new buckets, they keep trying to connect to the built-in default of 'localhost'

This is especially problematic because of what it means trying to use couchbase in production: If I work around this by passing connection options to a new bucket, I will eventually run into this same segfault issue whenever the cluster I am connecting to is rebalancing - I've gotten quite a few segfaults when adding / removing nodes and then rebalancing.

 Comments   
Comment by Matt Ingenthron [ 28/Jan/13 ]
Sergey: do you think we can reproduce this and solve it for 1.2.2? Let's review on Tues.
Comment by Sergey Avseyev [ 08/Feb/13 ]
There are actually several resolution matching:

Cannot reproduce: I cannot cause segfault

Won't fix: connection_options are for cases when you need to use singleton method Couchbase.bucket, if I had name default_options if it was supposed to setup the defaults. If you decuded to use Couchbase.connect, then just pass options you need to this method directly. In your case try to access the connection using Couchbase.bucket it should be ok

Incomplete: could you attach the backtrace from the coredump?
Comment by Matt Ingenthron [ 12/Feb/13 ]
Sergey: let's carry this one a bit further. I know you and I'd talked about it the other day, but we should try to clarify further what should be done differently (I see your note there, but it's a bit confusing to me) and we should ask for a core dump or stack trace since you've not been able to reproduce it.
Comment by Matt Ingenthron [ 12/Feb/13 ]
After reading that section above a couple of times, and then reading what's in the rdoc at http://www.couchbase.com/autodocs/couchbase-ruby-client-1.2.1/index.html#USAGE, what I think you're saying is:

Either use...
1) Preferred form for production with multiple nodes:
c = Couchbase.connect(:bucket => "mybucket",
                      :node_list => ['example.com:8091', example.net'])

Or
2) If using the Couchbase.bucket singleton, set Couchbase.connection_options and then make calls through Couchbase.bucket like:
Couchbase.connection_options = {:bucket => 'blog'}
Couchbase.bucket.name #=> "blog"
Couchbase.bucket.set("foo", "bar") #=> 3289400178357895424

Do I read that correctly? We may want to tighten up the documentation there, as the next section goes back into Couchbase.connect discussion.
Comment by Sergey Avseyev [ 13/Feb/13 ]
you are correct OK n your reading
Comment by Tim Ray [ 13/Feb/13 ]
I spun up a couple machines to work on this issue. Please contact me directly if you would like access to these machines - I'm more than happy to open them up to you.

Please note that I know you're not supposed to call c = Couchbase.connect without specifying some options, but for it to segfault rather than throw an error is an issue.

A little more backstory: I originally encountered the segfault, realized I wasn't passing correct options, added the options and was on my merry way. Unfortunately, when connecting to the servers I had set up as a test cluster: when I performed rebalance operations after adding or dropping a node I would get occasional segfaults. I remembered the earlier segfaults I was having, forced that error again since it was easy to reproduce, and compared the results. It looks like the same underlying issue affects both.

My theory was that the c extension is assuming that there will always be a couchbase server on the client machine. I don't believe that this accurately reflects all use cases and certainly not mine. I'm unfortunately not familiar enough with c or the codebase to make a patch, though I spent a couple days digging around trying. I think the root cause is essentially that you get a segfault rather than throwing an error whenever the couchbase gem / c extension tries connect to the default, which appears to have a hardcoded expectation of 'localhost'.

irb session and segfault:
-----------------------------------
irb(main):001:0> require 'couchbase'
=> true
irb(main):002:0> c = Couchbase.connect
/home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/couchbase-1.2.2/lib/couchbase.rb:59: [BUG] Segmentation fault
ruby 1.9.3p385 (2013-02-06 revision 39114) [x86_64-linux]

-- Control frame information -----------------------------------------------
c:0026 p:---- s:0092 b:0092 l:000091 d:000091 CFUNC :initialize
c:0025 p:---- s:0090 b:0090 l:000089 d:000089 CFUNC :new
c:0024 p:0027 s:0087 b:0087 l:000086 d:000086 METHOD /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/couchbase-1.2.2/lib/couchbase.rb:59
c:0023 p:0015 s:0083 b:0083 l:002198 d:0006c0 EVAL (irb):2
c:0022 p:---- s:0080 b:0080 l:000079 d:000079 FINISH
c:0021 p:---- s:0078 b:0078 l:000077 d:000077 CFUNC :eval
c:0020 p:0028 s:0071 b:0071 l:000070 d:000070 METHOD /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb/workspace.rb:80
c:0019 p:0033 s:0064 b:0063 l:000062 d:000062 METHOD /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb/context.rb:254
c:0018 p:0031 s:0058 b:0058 l:000828 d:000057 BLOCK /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb.rb:159
c:0017 p:0042 s:0050 b:0050 l:000049 d:000049 METHOD /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb.rb:273
c:0016 p:0011 s:0045 b:0045 l:000828 d:000044 BLOCK /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb.rb:156
c:0015 p:0144 s:0041 b:0041 l:000024 d:000040 BLOCK /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb/ruby-lex.rb:243
c:0014 p:---- s:0038 b:0038 l:000037 d:000037 FINISH
c:0013 p:---- s:0036 b:0036 l:000035 d:000035 CFUNC :loop
c:0012 p:0009 s:0033 b:0033 l:000024 d:000032 BLOCK /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb/ruby-lex.rb:229
c:0011 p:---- s:0031 b:0031 l:000030 d:000030 FINISH
c:0010 p:---- s:0029 b:0029 l:000028 d:000028 CFUNC :catch
c:0009 p:0023 s:0025 b:0025 l:000024 d:000024 METHOD /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb/ruby-lex.rb:228
c:0008 p:0046 s:0022 b:0022 l:000828 d:000828 METHOD /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb.rb:155
c:0007 p:0011 s:0019 b:0019 l:000d08 d:000018 BLOCK /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb.rb:70
c:0006 p:---- s:0017 b:0017 l:000016 d:000016 FINISH
c:0005 p:---- s:0015 b:0015 l:000014 d:000014 CFUNC :catch
c:0004 p:0183 s:0011 b:0011 l:000d08 d:000d08 METHOD /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb.rb:69
c:0003 p:0039 s:0006 b:0006 l:001358 d:002278 EVAL /home/tray/.rbenv/versions/1.9.3-p385/bin/irb:12
c:0002 p:---- s:0004 b:0004 l:000003 d:000003 FINISH
c:0001 p:0000 s:0002 b:0002 l:001358 d:001358 TOP

-- Ruby level backtrace information ----------------------------------------
/home/tray/.rbenv/versions/1.9.3-p385/bin/irb:12:in `<main>'
/home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb.rb:69:in `start'
/home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb.rb:69:in `catch'
/home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb.rb:70:in `block in start'
/home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb.rb:155:in `eval_input'
/home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb/ruby-lex.rb:228:in `each_top_level_statement'
/home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb/ruby-lex.rb:228:in `catch'
/home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb/ruby-lex.rb:229:in `block in each_top_level_statement'
/home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb/ruby-lex.rb:229:in `loop'
/home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb/ruby-lex.rb:243:in `block (2 levels) in each_top_level_statement'
/home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb.rb:156:in `block in eval_input'
/home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb.rb:273:in `signal_status'
/home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb.rb:159:in `block (2 levels) in eval_input'
/home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb/context.rb:254:in `evaluate'
/home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb/workspace.rb:80:in `evaluate'
/home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb/workspace.rb:80:in `eval'
(irb):2:in `irb_binding'
/home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/couchbase-1.2.2/lib/couchbase.rb:59:in `connect'
/home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/couchbase-1.2.2/lib/couchbase.rb:59:in `new'
/home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/couchbase-1.2.2/lib/couchbase.rb:59:in `initialize'

-- C level backtrace information -------------------------------------------
irb() [0x5214e7]
irb() [0x56991b]
irb(rb_bug+0xb4) [0x56ac04]
irb() [0x4b43a2]
/lib/x86_64-linux-gnu/libpthread.so.0(+0xfcb0) [0x7f7d7356ecb0] arguments.c:249
/home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/couchbase-1.2.2/lib/couchbase_ext.so(+0xdd86) [0x7f7d6ee78d86] multithread_plugin.c:916
/usr/lib/libcouchbase.so.2(+0x9272) [0x7f7d6ec55272]
/home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/couchbase-1.2.2/lib/couchbase_ext.so(+0xe904) [0x7f7d6ee79904] multithread_plugin.c:460
irb(rb_ensure+0xab) [0x418dbb]
/home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/couchbase-1.2.2/lib/couchbase_ext.so(+0xdbd7) [0x7f7d6ee78bd7] multithread_plugin.c:893
/usr/lib/libcouchbase.so.2(lcb_wait+0x73) [0x7f7d6ec5b053]
/home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/couchbase-1.2.2/lib/couchbase_ext.so(+0xa028) [0x7f7d6ee75028] bucket.c:389
/home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/couchbase-1.2.2/lib/couchbase_ext.so(cb_bucket_init+0x13e) [0x7f7d6ee75e6e] bucket.c:539
irb() [0x5199f7]
irb(rb_class_new_instance+0x30) [0x44eaf0]
irb() [0x51dff9]
irb() [0x5126ab]
irb() [0x518002]
irb() [0x51845f]
irb() [0x5188ec]
irb() [0x51dff9]
irb() [0x5126ab]
irb() [0x518002]
irb() [0x518e2e]
irb() [0x51e618]
irb(rb_rescue2+0x163) [0x418993]
irb() [0x50d869]
irb() [0x51dff9]
irb() [0x5126ab]
irb() [0x518002]
irb() [0x518e2e]
irb() [0x51e67e]
irb(rb_catch_obj+0xbe) [0x50fa1e]
irb() [0x50faca]
irb() [0x51dff9]
irb() [0x5126ab]
irb() [0x518002]
irb() [0x518e2e]
irb() [0x51e67e]
irb(rb_catch_obj+0xbe) [0x50fa1e]
irb() [0x50faca]
irb() [0x51dff9]
irb() [0x5126ab]
irb() [0x518002]
irb(rb_iseq_eval_main+0xb1) [0x51f081]
irb() [0x41601a]
irb(ruby_run_node+0x36) [0x418506]
irb() [0x415959]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xed) [0x7f7d7288076d]
irb() [0x415989]

-- Other runtime information -----------------------------------------------

* Loaded script: irb

* Loaded features:

    0 enumerator.so
    1 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/enc/encdb.so
    2 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/enc/trans/transdb.so
    3 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/defaults.rb
    4 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/rbconfig.rb
    5 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/deprecate.rb
    6 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/exceptions.rb
    7 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/custom_require.rb
    8 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems.rb
    9 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/pathname.so
   10 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/pathname.rb
   11 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/version.rb
   12 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/etc.so
   13 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/config_file.rb
   14 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/requirement.rb
   15 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/dependency.rb
   16 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/platform.rb
   17 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/specification.rb
   18 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/path_support.rb
   19 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/psych/syntax_error.rb
   20 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/psych.so
   21 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/stringio.so
   22 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/psych/nodes/node.rb
   23 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/psych/nodes/stream.rb
   24 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/psych/nodes/document.rb
   25 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/psych/nodes/sequence.rb
   26 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/psych/nodes/scalar.rb
   27 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/psych/nodes/mapping.rb
   28 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/psych/nodes/alias.rb
   29 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/psych/nodes.rb
   30 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/psych/streaming.rb
   31 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/psych/visitors/visitor.rb
   32 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/strscan.so
   33 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/psych/scalar_scanner.rb
   34 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/psych/visitors/to_ruby.rb
   35 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/psych/visitors/emitter.rb
   36 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/psych/visitors/yaml_tree.rb
   37 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/psych/json/ruby_events.rb
   38 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/psych/visitors/json_tree.rb
   39 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/psych/visitors/depth_first.rb
   40 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/psych/visitors.rb
   41 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/psych/handler.rb
   42 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/psych/tree_builder.rb
   43 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/psych/parser.rb
   44 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/psych/omap.rb
   45 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/psych/set.rb
   46 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/psych/coder.rb
   47 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/psych/core_ext.rb
   48 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/date_core.so
   49 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/date/format.rb
   50 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/date.rb
   51 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/psych/deprecated.rb
   52 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/psych/stream.rb
   53 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/psych/json/yaml_events.rb
   54 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/psych/json/tree_builder.rb
   55 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/psych/json/stream.rb
   56 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/psych/handlers/document_stream.rb
   57 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/psych.rb
   58 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/psych_additions.rb
   59 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/psych_tree.rb
   60 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/yaml.rb
   61 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/syck_hack.rb
   62 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/bundler-1.2.3/lib/bundler/rubygems_integration.rb
   63 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/bundler-1.2.3/lib/bundler/shared_helpers.rb
   64 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/fileutils.rb
   65 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/bundler-1.2.3/lib/bundler/gem_path_manipulation.rb
   66 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/bundler-1.2.3/lib/bundler/psyched_yaml.rb
   67 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/bundler-1.2.3/lib/bundler/gem_helpers.rb
   68 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/bundler-1.2.3/lib/bundler/match_platform.rb
   69 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/bundler-1.2.3/lib/bundler/rubygems_ext.rb
   70 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/bundler-1.2.3/lib/bundler/version.rb
   71 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/bundler-1.2.3/lib/bundler.rb
   72 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/bundler-1.2.3/lib/bundler/settings.rb
   73 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/digest.so
   74 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/digest.rb
   75 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/digest/sha1.so
   76 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/set.rb
   77 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/bundler-1.2.3/lib/bundler/definition.rb
   78 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/bundler-1.2.3/lib/bundler/dependency.rb
   79 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/bundler-1.2.3/lib/bundler/dsl.rb
   80 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/uri/common.rb
   81 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/uri/generic.rb
   82 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/uri/ftp.rb
   83 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/uri/http.rb
   84 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/uri/https.rb
   85 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/uri/ldap.rb
   86 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/uri/ldaps.rb
   87 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/uri/mailto.rb
   88 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/uri.rb
   89 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/user_interaction.rb
   90 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/package/f_sync_dir.rb
   91 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/package/tar_header.rb
   92 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/enc/iso_8859_1.so
   93 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/zlib.so
   94 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/package/tar_input.rb
   95 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/package/tar_output.rb
   96 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/package/tar_reader/entry.rb
   97 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/package/tar_reader.rb
   98 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/package/tar_writer.rb
   99 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/package.rb
  100 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/format.rb
  101 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/ext/builder.rb
  102 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/ext/configure_builder.rb
  103 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/optparse.rb
  104 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/command.rb
  105 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/ext/ext_conf_builder.rb
  106 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/ext/rake_builder.rb
  107 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/ext.rb
  108 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/require_paths_builder.rb
  109 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/installer.rb
  110 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/remote_fetcher.rb
  111 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/errors.rb
  112 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/text.rb
  113 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/spec_fetcher.rb
  114 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/bundler-1.2.3/lib/bundler/gem_installer.rb
  115 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/bundler-1.2.3/lib/bundler/source.rb
  116 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/bundler-1.2.3/lib/bundler/lockfile_parser.rb
  117 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/bundler-1.2.3/lib/bundler/lazy_specification.rb
  118 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/tsort.rb
  119 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/forwardable.rb
  120 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/bundler-1.2.3/lib/bundler/spec_set.rb
  121 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/bundler-1.2.3/lib/bundler/environment.rb
  122 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/bundler-1.2.3/lib/bundler/runtime.rb
  123 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/bundler-1.2.3/lib/bundler/index.rb
  124 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/bundler-1.2.3/lib/bundler/remote_specification.rb
  125 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/bundler-1.2.3/lib/bundler/endpoint_specification.rb
  126 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/bundler-1.2.3/lib/bundler/dep_proxy.rb
  127 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/rubygems/source_index.rb
  128 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/bundler-1.2.3/lib/bundler/setup.rb
  129 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/e2mmap.rb
  130 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb/init.rb
  131 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb/workspace.rb
  132 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb/inspector.rb
  133 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb/context.rb
  134 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb/extend-command.rb
  135 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb/output-method.rb
  136 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb/notifier.rb
  137 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb/slex.rb
  138 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb/ruby-token.rb
  139 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb/ruby-lex.rb
  140 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb/src_encoding.rb
  141 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb/magic-file.rb
  142 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/readline.so
  143 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb/input-method.rb
  144 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb/locale.rb
  145 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/irb.rb
  146 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/couchbase-1.2.2/lib/couchbase/version.rb
  147 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/multi_json-1.6.0/lib/multi_json.rb
  148 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/json/version.rb
  149 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/json/common.rb
  150 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/enc/utf_16be.so
  151 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/enc/utf_16le.so
  152 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/enc/utf_32be.so
  153 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/enc/utf_32le.so
  154 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/json/ext/parser.so
  155 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/json/ext/generator.so
  156 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/json/ext.rb
  157 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/json.rb
  158 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/multi_json-1.6.0/lib/multi_json/adapters/json_common.rb
  159 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/multi_json-1.6.0/lib/multi_json/adapters/json_gem.rb
  160 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/multi_json-1.6.0/lib/multi_json/version.rb
  161 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/couchbase-1.2.2/lib/ext/multi_json_fix.rb
  162 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/yaji-0.3.3/lib/yaji/version.rb
  163 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/yaji-0.3.3/lib/parser_ext.so
  164 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/yaji-0.3.3/lib/yaji.rb
  165 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/couchbase-1.2.2/lib/couchbase_ext.so
  166 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/couchbase-1.2.2/lib/couchbase/constants.rb
  167 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/couchbase-1.2.2/lib/couchbase/utils.rb
  168 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/couchbase-1.2.2/lib/couchbase/bucket.rb
  169 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/couchbase-1.2.2/lib/couchbase/view_row.rb
  170 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/base64.rb
  171 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/couchbase-1.2.2/lib/couchbase/view.rb
  172 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/couchbase-1.2.2/lib/couchbase/result.rb
  173 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/couchbase-1.2.2/lib/couchbase/cluster.rb
  174 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/couchbase-1.2.2/lib/couchbase.rb

* Process memory map:

00400000-0061c000 r-xp 00000000 ca:01 164081 /home/tray/.rbenv/versions/1.9.3-p385/bin/ruby
0081c000-0081d000 r--p 0021c000 ca:01 164081 /home/tray/.rbenv/versions/1.9.3-p385/bin/ruby
0081d000-0081f000 rw-p 0021d000 ca:01 164081 /home/tray/.rbenv/versions/1.9.3-p385/bin/ruby
0081f000-0083c000 rw-p 00000000 00:00 0
00e44000-01bc8000 rw-p 00000000 00:00 0 [heap]
7f7d6e829000-7f7d6e83e000 r-xp 00000000 ca:01 608378 /lib/x86_64-linux-gnu/libgcc_s.so.1
7f7d6e83e000-7f7d6ea3d000 ---p 00015000 ca:01 608378 /lib/x86_64-linux-gnu/libgcc_s.so.1
7f7d6ea3d000-7f7d6ea3e000 r--p 00014000 ca:01 608378 /lib/x86_64-linux-gnu/libgcc_s.so.1
7f7d6ea3e000-7f7d6ea3f000 rw-p 00015000 ca:01 608378 /lib/x86_64-linux-gnu/libgcc_s.so.1
7f7d6ea3f000-7f7d6ea4b000 r-xp 00000000 ca:01 608534 /lib/x86_64-linux-gnu/libnss_files-2.15.so
7f7d6ea4b000-7f7d6ec4a000 ---p 0000c000 ca:01 608534 /lib/x86_64-linux-gnu/libnss_files-2.15.so
7f7d6ec4a000-7f7d6ec4b000 r--p 0000b000 ca:01 608534 /lib/x86_64-linux-gnu/libnss_files-2.15.so
7f7d6ec4b000-7f7d6ec4c000 rw-p 0000c000 ca:01 608534 /lib/x86_64-linux-gnu/libnss_files-2.15.so
7f7d6ec4c000-7f7d6ec69000 r-xp 00000000 ca:01 592591 /usr/lib/libcouchbase.so.2.0.3
7f7d6ec69000-7f7d6ee69000 ---p 0001d000 ca:01 592591 /usr/lib/libcouchbase.so.2.0.3
7f7d6ee69000-7f7d6ee6a000 r--p 0001d000 ca:01 592591 /usr/lib/libcouchbase.so.2.0.3
7f7d6ee6a000-7f7d6ee6b000 rw-p 0001e000 ca:01 592591 /usr/lib/libcouchbase.so.2.0.3
7f7d6ee6b000-7f7d6ee88000 r-xp 00000000 ca:01 230155 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/couchbase-1.2.2/lib/couchbase_ext.so
7f7d6ee88000-7f7d6f087000 ---p 0001d000 ca:01 230155 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/couchbase-1.2.2/lib/couchbase_ext.so
7f7d6f087000-7f7d6f088000 r--p 0001c000 ca:01 230155 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/couchbase-1.2.2/lib/couchbase_ext.so
7f7d6f088000-7f7d6f089000 rw-p 0001d000 ca:01 230155 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/couchbase-1.2.2/lib/couchbase_ext.so
7f7d6f089000-7f7d6f08a000 rw-p 00000000 00:00 0
7f7d6f08a000-7f7d6f095000 r-xp 00000000 ca:01 230035 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/yaji-0.3.3/lib/parser_ext.so
7f7d6f095000-7f7d6f294000 ---p 0000b000 ca:01 230035 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/yaji-0.3.3/lib/parser_ext.so
7f7d6f294000-7f7d6f295000 r--p 0000a000 ca:01 230035 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/yaji-0.3.3/lib/parser_ext.so
7f7d6f295000-7f7d6f296000 rw-p 0000b000 ca:01 230035 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/gems/1.9.1/gems/yaji-0.3.3/lib/parser_ext.so
7f7d6f296000-7f7d6f29f000 r-xp 00000000 ca:01 172042 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/json/ext/generator.so
7f7d6f29f000-7f7d6f49e000 ---p 00009000 ca:01 172042 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/json/ext/generator.so
7f7d6f49e000-7f7d6f49f000 r--p 00008000 ca:01 172042 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/json/ext/generator.so
7f7d6f49f000-7f7d6f4a0000 rw-p 00009000 ca:01 172042 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/json/ext/generator.so
7f7d6f4a0000-7f7d6f4a1000 r-xp 00000000 ca:01 164108 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/enc/utf_32le.so
7f7d6f4a1000-7f7d6f6a0000 ---p 00001000 ca:01 164108 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/enc/utf_32le.so
7f7d6f6a0000-7f7d6f6a1000 r--p 00000000 ca:01 164108 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/enc/utf_32le.so
7f7d6f6a1000-7f7d6f6a2000 rw-p 00001000 ca:01 164108 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/enc/utf_32le.so
7f7d6f6a2000-7f7d6f6a3000 r-xp 00000000 ca:01 164106 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/enc/utf_32be.so
7f7d6f6a3000-7f7d6f8a2000 ---p 00001000 ca:01 164106 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/enc/utf_32be.so
7f7d6f8a2000-7f7d6f8a3000 r--p 00000000 ca:01 164106 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/enc/utf_32be.so
7f7d6f8a3000-7f7d6f8a4000 rw-p 00001000 ca:01 164106 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/enc/utf_32be.so
7f7d6f8a4000-7f7d6f8a5000 r-xp 00000000 ca:01 164110 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/enc/utf_16le.so
7f7d6f8a5000-7f7d6faa4000 ---p 00001000 ca:01 164110 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/enc/utf_16le.so
7f7d6faa4000-7f7d6faa5000 r--p 00000000 ca:01 164110 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/enc/utf_16le.so
7f7d6faa5000-7f7d6faa6000 rw-p 00001000 ca:01 164110 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/enc/utf_16le.so
7f7d6faa6000-7f7d6faa7000 r-xp 00000000 ca:01 164093 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/enc/utf_16be.so
7f7d6faa7000-7f7d6fca6000 ---p 00001000 ca:01 164093 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/enc/utf_16be.so
7f7d6fca6000-7f7d6fca7000 r--p 00000000 ca:01 164093 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/enc/utf_16be.so
7f7d6fca7000-7f7d6fca8000 rw-p 00001000 ca:01 164093 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/enc/utf_16be.so
7f7d6fca8000-7f7d6fcad000 r-xp 00000000 ca:01 172041 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/json/ext/parser.so
7f7d6fcad000-7f7d6fead000 ---p 00005000 ca:01 172041 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/json/ext/parser.so
7f7d6fead000-7f7d6feae000 r--p 00005000 ca:01 172041 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/json/ext/parser.so
7f7d6feae000-7f7d6feaf000 rw-p 00006000 ca:01 172041 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/json/ext/parser.so
7f7d6feaf000-7f7d6fed1000 r-xp 00000000 ca:01 608418 /lib/x86_64-linux-gnu/libtinfo.so.5.9
7f7d6fed1000-7f7d700d1000 ---p 00022000 ca:01 608418 /lib/x86_64-linux-gnu/libtinfo.so.5.9
7f7d700d1000-7f7d700d5000 r--p 00022000 ca:01 608418 /lib/x86_64-linux-gnu/libtinfo.so.5.9
7f7d700d5000-7f7d700d6000 rw-p 00026000 ca:01 608418 /lib/x86_64-linux-gnu/libtinfo.so.5.9
7f7d700d6000-7f7d7010f000 r-xp 00000000 ca:01 608410 /lib/x86_64-linux-gnu/libreadline.so.6.2
7f7d7010f000-7f7d7030f000 ---p 00039000 ca:01 608410 /lib/x86_64-linux-gnu/libreadline.so.6.2
7f7d7030f000-7f7d70311000 r--p 00039000 ca:01 608410 /lib/x86_64-linux-gnu/libreadline.so.6.2
7f7d70311000-7f7d70317000 rw-p 0003b000 ca:01 608410 /lib/x86_64-linux-gnu/libreadline.so.6.2
7f7d70317000-7f7d70318000 rw-p 00000000 00:00 0
7f7d70318000-7f7d7031e000 r-xp 00000000 ca:01 164149 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/readline.so
7f7d7031e000-7f7d7051d000 ---p 00006000 ca:01 164149 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/readline.so
7f7d7051d000-7f7d7051e000 r--p 00005000 ca:01 164149 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/readline.so
7f7d7051e000-7f7d7051f000 rw-p 00006000 ca:01 164149 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/readline.so
7f7d7051f000-7f7d7052d000 r-xp 00000000 ca:01 164088 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/zlib.so
7f7d7052d000-7f7d7072c000 ---p 0000e000 ca:01 164088 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/zlib.so
7f7d7072c000-7f7d7072d000 r--p 0000d000 ca:01 164088 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/zlib.so
7f7d7072d000-7f7d7072e000 rw-p 0000e000 ca:01 164088 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/zlib.so
7f7d7072e000-7f7d70730000 r-xp 00000000 ca:01 164122 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/enc/iso_8859_1.so
7f7d70730000-7f7d7092f000 ---p 00002000 ca:01 164122 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/enc/iso_8859_1.so
7f7d7092f000-7f7d70930000 r--p 00001000 ca:01 164122 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/enc/iso_8859_1.so
7f7d70930000-7f7d70931000 rw-p 00002000 ca:01 164122 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/enc/iso_8859_1.so
7f7d70931000-7f7d70934000 r-xp 00000000 ca:01 164148 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/digest.so
7f7d70934000-7f7d70b33000 ---p 00003000 ca:01 164148 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/digest.so
7f7d70b33000-7f7d70b34000 r--p 00002000 ca:01 164148 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/digest.so
7f7d70b34000-7f7d70b35000 rw-p 00003000 ca:01 164148 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/digest.so
7f7d70b35000-7f7d70b4b000 r-xp 00000000 ca:01 608425 /lib/x86_64-linux-gnu/libz.so.1.2.3.4
7f7d70b4b000-7f7d70d4a000 ---p 00016000 ca:01 608425 /lib/x86_64-linux-gnu/libz.so.1.2.3.4
7f7d70d4a000-7f7d70d4b000 r--p 00015000 ca:01 608425 /lib/x86_64-linux-gnu/libz.so.1.2.3.4
7f7d70d4b000-7f7d70d4c000 rw-p 00016000 ca:01 608425 /lib/x86_64-linux-gnu/libz.so.1.2.3.4
7f7d70d4c000-7f7d70eeb000 r-xp 00000000 ca:01 608270 /lib/x86_64-linux-gnu/libcrypto.so.1.0.0
7f7d70eeb000-7f7d710ea000 ---p 0019f000 ca:01 608270 /lib/x86_64-linux-gnu/libcrypto.so.1.0.0
7f7d710ea000-7f7d71105000 r--p 0019e000 ca:01 608270 /lib/x86_64-linux-gnu/libcrypto.so.1.0.0
7f7d71105000-7f7d71110000 rw-p 001b9000 ca:01 608270 /lib/x86_64-linux-gnu/libcrypto.so.1.0.0
7f7d71110000-7f7d71114000 rw-p 00000000 00:00 0
7f7d71114000-7f7d71115000 r-xp 00000000 ca:01 164156 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/digest/sha1.so
7f7d71115000-7f7d71314000 ---p 00001000 ca:01 164156 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/digest/sha1.so
7f7d71314000-7f7d71315000 r--p 00000000 ca:01 164156 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/digest/sha1.so
7f7d71315000-7f7d71316000 rw-p 00001000 ca:01 164156 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/digest/sha1.so
7f7d71316000-7f7d71348000 r-xp 00000000 ca:01 164178 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/date_core.so
7f7d71348000-7f7d71548000 ---p 00032000 ca:01 164178 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/date_core.so
7f7d71548000-7f7d71549000 r--p 00032000 ca:01 164178 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/date_core.so
7f7d71549000-7f7d7154a000 rw-p 00033000 ca:01 164178 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/date_core.so
7f7d7154a000-7f7d7154c000 rw-p 00000000 00:00 0
7f7d7154c000-7f7d71551000 r-xp 00000000 ca:01 164168 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/strscan.so
7f7d71551000-7f7d71750000 ---p 00005000 ca:01 164168 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/strscan.so
7f7d71750000-7f7d71751000 r--p 00004000 ca:01 164168 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/strscan.so
7f7d71751000-7f7d71752000 rw-p 00005000 ca:01 164168 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/strscan.so
7f7d71752000-7f7d71759000 r-xp 00000000 ca:01 164162 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/stringio.so
7f7d71759000-7f7d71958000 ---p 00007000 ca:01 164162 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/stringio.so
7f7d71958000-7f7d71959000 r--p 00006000 ca:01 164162 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/stringio.so
7f7d71959000-7f7d7195a000 rw-p 00007000 ca:01 164162 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/stringio.so
7f7d7195a000-7f7d7197a000 r-xp 00000000 ca:01 164070 /home/tray/.rbenv/versions/1.9.3-p385/lib/libyaml-0.so.2.0.2
7f7d7197a000-7f7d71b79000 ---p 00020000 ca:01 164070 /home/tray/.rbenv/versions/1.9.3-p385/lib/libyaml-0.so.2.0.2
7f7d71b79000-7f7d71b7a000 r--p 0001f000 ca:01 164070 /home/tray/.rbenv/versions/1.9.3-p385/lib/libyaml-0.so.2.0.2
7f7d71b7a000-7f7d71b7b000 rw-p 00020000 ca:01 164070 /home/tray/.rbenv/versions/1.9.3-p385/lib/libyaml-0.so.2.0.2
7f7d71b7b000-7f7d71b81000 r-xp 00000000 ca:01 164167 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/psych.so
7f7d71b81000-7f7d71d80000 ---p 00006000 ca:01 164167 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/psych.so
7f7d71d80000-7f7d71d81000 r--p 00005000 ca:01 164167 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/psych.so
7f7d71d81000-7f7d71d82000 rw-p 00006000 ca:01 164167 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/psych.so
7f7d71d82000-7f7d71d85000 r-xp 00000000 ca:01 164153 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/etc.so
7f7d71d85000-7f7d71f84000 ---p 00003000 ca:01 164153 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/etc.so
7f7d71f84000-7f7d71f85000 r--p 00002000 ca:01 164153 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/etc.so
7f7d71f85000-7f7d71f86000 rw-p 00003000 ca:01 164153 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/etc.so
7f7d71f86000-7f7d71f8e000 r-xp 00000000 ca:01 164180 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/pathname.so
7f7d71f8e000-7f7d7218d000 ---p 00008000 ca:01 164180 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/pathname.so
7f7d7218d000-7f7d7218e000 r--p 00007000 ca:01 164180 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/pathname.so
7f7d7218e000-7f7d7218f000 rw-p 00008000 ca:01 164180 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/pathname.so
7f7d7218f000-7f7d72191000 r-xp 00000000 ca:01 164132 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/enc/trans/transdb.so
7f7d72191000-7f7d72391000 ---p 00002000 ca:01 164132 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/enc/trans/transdb.so
7f7d72391000-7f7d72392000 r--p 00002000 ca:01 164132 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/enc/trans/transdb.so
7f7d72392000-7f7d72393000 rw-p 00003000 ca:01 164132 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/enc/trans/transdb.so
7f7d72393000-7f7d72395000 r-xp 00000000 ca:01 164095 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/enc/encdb.so
7f7d72395000-7f7d72594000 ---p 00002000 ca:01 164095 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/enc/encdb.so
7f7d72594000-7f7d72595000 r--p 00001000 ca:01 164095 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/enc/encdb.so
7f7d72595000-7f7d72596000 rw-p 00002000 ca:01 164095 /home/tray/.rbenv/versions/1.9.3-p385/lib/ruby/1.9.1/x86_64-linux/enc/encdb.so
7f7d72596000-7f7d7285f000 r--p 00000000 ca:01 590866 /usr/lib/locale/locale-archive
7f7d7285f000-7f7d72a14000 r-xp 00000000 ca:01 608524 /lib/x86_64-linux-gnu/libc-2.15.so
7f7d72a14000-7f7d72c13000 ---p 001b5000 ca:01 608524 /lib/x86_64-linux-gnu/libc-2.15.so
7f7d72c13000-7f7d72c17000 r--p 001b4000 ca:01 608524 /lib/x86_64-linux-gnu/libc-2.15.so
7f7d72c17000-7f7d72c19000 rw-p 001b8000 ca:01 608524 /lib/x86_64-linux-gnu/libc-2.15.so
7f7d72c19000-7f7d72c1e000 rw-p 00000000 00:00 0
7f7d72c1e000-7f7d72d19000 r-xp 00000000 ca:01 608532 /lib/x86_64-linux-gnu/libm-2.15.so
7f7d72d19000-7f7d72f18000 ---p 000fb000 ca:01 608532 /lib/x86_64-linux-gnu/libm-2.15.so
7f7d72f18000-7f7d72f19000 r--p 000fa000 ca:01 608532 /lib/x86_64-linux-gnu/libm-2.15.so
7f7d72f19000-7f7d72f1a000 rw-p 000fb000 ca:01 608532 /lib/x86_64-linux-gnu/libm-2.15.so
7f7d72f1a000-7f7d72f23000 r-xp 00000000 ca:01 608533 /lib/x86_64-linux-gnu/libcrypt-2.15.so
7f7d72f23000-7f7d73123000 ---p 00009000 ca:01 608533 /lib/x86_64-linux-gnu/libcrypt-2.15.so
7f7d73123000-7f7d73124000 r--p 00009000 ca:01 608533 /lib/x86_64-linux-gnu/libcrypt-2.15.so
7f7d73124000-7f7d73125000 rw-p 0000a000 ca:01 608533 /lib/x86_64-linux-gnu/libcrypt-2.15.so
7f7d73125000-7f7d73153000 rw-p 00000000 00:00 0
7f7d73153000-7f7d73155000 r-xp 00000000 ca:01 608523 /lib/x86_64-linux-gnu/libdl-2.15.so
7f7d73155000-7f7d73355000 ---p 00002000 ca:01 608523 /lib/x86_64-linux-gnu/libdl-2.15.so
7f7d73355000-7f7d73356000 r--p 00002000 ca:01 608523 /lib/x86_64-linux-gnu/libdl-2.15.so
7f7d73356000-7f7d73357000 rw-p 00003000 ca:01 608523 /lib/x86_64-linux-gnu/libdl-2.15.so
7f7d73357000-7f7d7335e000 r-xp 00000000 ca:01 608528 /lib/x86_64-linux-gnu/librt-2.15.so
7f7d7335e000-7f7d7355d000 ---p 00007000 ca:01 608528 /lib/x86_64-linux-gnu/librt-2.15.so
7f7d7355d000-7f7d7355e000 r--p 00006000 ca:01 608528 /lib/x86_64-linux-gnu/librt-2.15.so
7f7d7355e000-7f7d7355f000 rw-p 00007000 ca:01 608528 /lib/x86_64-linux-gnu/librt-2.15.so
7f7d7355f000-7f7d73577000 r-xp 00000000 ca:01 608526 /lib/x86_64-linux-gnu/libpthread-2.15.so
7f7d73577000-7f7d73776000 ---p 00018000 ca:01 608526 /lib/x86_64-linux-gnu/libpthread-2.15.so
7f7d73776000-7f7d73777000 r--p 00017000 ca:01 608526 /lib/x86_64-linux-gnu/libpthread-2.15.so
7f7d73777000-7f7d73778000 rw-p 00018000 ca:01 608526 /lib/x86_64-linux-gnu/libpthread-2.15.so
7f7d73778000-7f7d7377c000 rw-p 00000000 00:00 0
7f7d7377c000-7f7d7379e000 r-xp 00000000 ca:01 608538 /lib/x86_64-linux-gnu/ld-2.15.so
7f7d73889000-7f7d73890000 r--s 00000000 ca:01 11782 /usr/lib/x86_64-linux-gnu/gconv/gconv-modules.cache
7f7d73890000-7f7d73997000 rw-p 00000000 00:00 0
7f7d73997000-7f7d73998000 rw-p 00000000 00:00 0
7f7d73998000-7f7d73999000 ---p 00000000 00:00 0
7f7d73999000-7f7d7399e000 rw-p 00000000 00:00 0
7f7d7399e000-7f7d7399f000 r--p 00022000 ca:01 608538 /lib/x86_64-linux-gnu/ld-2.15.so
7f7d7399f000-7f7d739a1000 rw-p 00023000 ca:01 608538 /lib/x86_64-linux-gnu/ld-2.15.so
7fff3ab15000-7fff3ab36000 rw-p 00000000 00:00 0 [stack]
7fff3ab8a000-7fff3ab8b000 r-xp 00000000 00:00 0 [vdso]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]


[NOTE]
You may have encountered a bug in the Ruby interpreter or extension libraries.
Bug reports are welcome.
For details: http://www.ruby-lang.org/bugreport.html

Aborted (core dumped)
Comment by Sergey Avseyev [ 15/Feb/13 ]
http://review.couchbase.org/24620

Segmentation fault when the hostname resolved into several addresses
and first of them reject couchbase connections. In this case
libcouchbase releases socket and destroys the the event structure, so
that subsequent calls will try to dereference NULL-event.

The event struct should be deallocated only on handle destruction.

Tim, your ubuntu instance had two interfaces:

savseyev@couchbase-devel:~/code/couchtest$ host localhost
localhost has address 127.0.0.1
localhost has IPv6 address ::1

Unlike mine:

~ $ host localhost
localhost has address 127.0.0.1

This helped me to fix this particular issue.
Generated at Thu Dec 18 13:04:38 CST 2014 using JIRA 5.2.4#845-sha1:c9f4cc41abe72fb236945343a1f485c2c844dac9.