17
Mam następujący kod testowy:Rails & Couchbase - pamięć przeciekać
def loop_bucket_gets
bucket = Couchbase::Bucket.new({:node_list => ['xxx.xxx.xxx.xxx:8091', 'yyy.yyy.yyy.yyy:8091'],
:bucket => 'Foo',
:pool => 'default',
:expires_in => 1.day,
:default_format => :marshal,
:key_prefix => '_foo'
})
i = 0
loop do
begin
i += 1
bucket.get "ABC#{i}"
rescue ::Couchbase::Error::Base => e
nil
end
end
end
Kiedy wykonać metodę w konsoli Rails pamięć przecieki.
Używam:
- couchbase 1.3.10 gem
- libcouchbase 2.4.3
pomysłów?
Aktualizacja: Issue utworzona: https://www.couchbase.com/issues/browse/RCBC-187
Myślę, że potrzebujesz warunku końcowego dla pętli. –
@AlejandroBabio To jest kod testowy, używam go do potwierdzenia, że pamięć ciągle rośnie, więc nie mogę zatrzymać pętli. –
Spójrz tutaj: https://github.com/couchbase/couchbase-ruby-client/blob/324b11ae73934238ab255eaf4f1cd6dab6a239fc/ext/couchbase_ext/get.c#L229 –