Project

General

Profile

Actions

Bug #1719

closed

rgw: crash in ObjectCache::touch_lru

Added by Sage Weil over 12 years ago. Updated about 6 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
-
Target version:
-
% Done:

0%

Source:
Tags:
Backport:
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

2011-11-10 12:02:18.054792 38e177de700 HTTP_CONNECTION=Close
2011-11-10 12:02:18.054798 38e177de700 HTTP_HOST=objects.dreamhost.com
2011-11-10 12:02:18.054804 38e177de700 HTTP_PRAGMA=no-cache
2011-11-10 12:02:18.054809 38e177de700 HTTP_USER_AGENT=Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0)
2011-11-10 12:02:18.054815 38e177de700 HTTP_ACCEPT=image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, image/png, */*
2011-11-10 12:02:18.054821 38e177de700 HTTP_ACCEPT_LANGUAGE=en
2011-11-10 12:02:18.054827 38e177de700 HTTP_ACCEPT_CHARSET=iso-8859-1,*,utf-8
2011-11-10 12:02:18.054832 38e177de700 HTTP_X_FORWARDED_FOR=66.33.206.110
2011-11-10 12:02:18.054838 38e177de700 PATH=/usr/local/bin:/usr/bin:/bin
2011-11-10 12:02:18.054844 38e177de700 SERVER_SIGNATURE=
2011-11-10 12:02:18.054849 38e177de700 SERVER_SOFTWARE=Apache
2011-11-10 12:02:18.054855 38e177de700 SERVER_NAME=objects.dreamhost.com
2011-11-10 12:02:18.054861 38e177de700 SERVER_ADDR=2607:f298:4:3143::5751
2011-11-10 12:02:18.054866 38e177de700 SERVER_PORT=80
2011-11-10 12:02:18.054872 38e177de700 REMOTE_ADDR=2607:f298:4:3143::5782
2011-11-10 12:02:18.054877 38e177de700 DOCUMENT_ROOT=/var/www/
2011-11-10 12:02:18.054883 38e177de700 SERVER_ADMIN=admin@dhobjects.net
2011-11-10 12:02:18.054889 38e177de700 SCRIPT_FILENAME=/var/www/dummyradosgw.fcgi
2011-11-10 12:02:18.054894 38e177de700 REMOTE_PORT=54867
2011-11-10 12:02:18.054900 38e177de700 GATEWAY_INTERFACE=CGI/1.1
2011-11-10 12:02:18.054906 38e177de700 SERVER_PROTOCOL=HTTP/1.1
2011-11-10 12:02:18.054911 38e177de700 REQUEST_METHOD=GET
2011-11-10 12:02:18.054917 38e177de700 QUERY_STRING=params=www/
2011-11-10 12:02:18.054923 38e177de700 REQUEST_URI=/www/
2011-11-10 12:02:18.054928 38e177de700 SCRIPT_NAME=/www/
2011-11-10 12:02:18.054948 38e177de700 get_obj_state: rctx=0x23859cc0 obj=.rgw:www state=0x2f97e798
2011-11-10 12:02:18.055583 38e177de700 removing entry: name=.rgw+www from cache LRU
2011-11-10 12:02:18.056243 38e177de700 moving .rgw+www to cache LRU end
*** Caught signal (Segmentation fault) **
 in thread 38e177de700
2011-11-10 12:02:18.056613 38e327c5700 -- [2607:f298:4:2243::5751]:0/1006485 mark_down 0x38d2505a3a0 -- pipe dne
2011-11-10 12:02:18.056676 38e327c5700 -- [2607:f298:4:2243::5751]:0/1006485 mark_down 0x38d2506f860 -- 0x38d250926e0
 ceph version 0.37-274-g58eb8c5 (commit:58eb8c5e46bc5641d23643eab8a01add9667bc89)
 1: /usr/bin/radosgw() [0x492d49]
 2: (()+0xef60) [0x38e36d1df60]
 3: (std::_List_node_base::unhook()+0) [0x38e3619b960]
 4: (ObjectCache::touch_lru(std::string&, std::_List_iterator<std::string>&)+0x33e) [0x482dfe]
 5: (ObjectCache::get(std::string&, ObjectCacheInfo&, unsigned int)+0x1ec) [0x4833ec]
 6: (RGWCache<RGWRados>::obj_stat(void*, rgw_obj&, unsigned long*, long*, std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >*)+0x1b3) [0x45ec03]
 7: (RGWRados::get_obj_state(RGWRadosCtx*, rgw_obj&, librados::IoCtx&, std::string&, RGWObjState**)+0x106) [0x449866]
 8: (RGWRados::prepare_get_obj(void*, rgw_obj&, long, long*, std::map<std::string, ceph::buffer::list, std::less<std::string>, std::allocator<std::pair<std::string const, ceph::buffer::list> > >*, long const*, long const*, long*, char const*, char const*, unsigned long*, unsigned long*, void**, rgw_err*)+0x13c) [0x44ae9c]
 9: (rgw_get_obj(void*, rgw_bucket&, std::string&, ceph::buffer::list&)+0xc8) [0x455918]
 10: (RGWRados::get_bucket_info(void*, std::string&, RGWBucketInfo&)+0x4e) [0x442eee]
 11: /usr/bin/radosgw() [0x46b777]
 12: (RGWHandler::do_read_permissions(bool)+0x35) [0x46b9f5]
 13: (RGWProcess::handle_request(FCGX_Request*)+0x62a) [0x48dd0a]
 14: (ThreadPool::worker()+0xa28) [0x4af2d8]
 15: (ThreadPool::WorkThread::entry()+0xd) [0x48ec6d]
 16: (()+0x68ba) [0x38e36d158ba]
 17: (clone()+0x6d) [0x38e35a0902d]
Actions #1

Updated by Yehuda Sadeh over 12 years ago

I think what happens here is that the entry that we touch happens to be the one that we dispose of (at the tail of the lru).

Actions #2

Updated by Yehuda Sadeh over 12 years ago

  • Status changed from New to Resolved

should be fixed by commit:a859763b1cba844d0d56b861a372e5f63f87c607.

Actions #3

Updated by John Spray about 6 years ago

  • Project changed from Ceph to rgw
  • Category deleted (22)
  • Target version deleted (v0.39)

Bulk reassign of radosgw category to RGW project.

Actions

Also available in: Atom PDF