Re: OSD's failing to start due to failed ASSERT

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, 16 Mar 2014, Kevinsky Dy wrote:
> Hi,
> 
> I currently have 2 OSDs that won't start and it's preventing my
> cluster from running my VMs.
> My cluster is running on:
> # ceph -v
> ceph version 0.67.7 (d7ab4244396b57aac8b7e80812115bbd079e6b73)
> 
> My OSD's are found on different hosts as per the default CRUSH Map
> rules and I got the logs from the problem OSDs as follows
> 
> osd.1:
>     -10> 2014-03-16 11:51:25.183093 7f50923e4780 20 read_log
> 12794'1377363 (12794'1377357) modify
> 5ee8f77d/rb.0.1f7b.238e1f29.0000000118fb/head//2 by
> client.1077470.0:376704 2014-03-15 12:37:43.175319
>     -9> 2014-03-16 11:51:25.183122 7f50923e4780 20 read_log
> 12794'1377364 (12794'1377362) modify
> af8f477d/rb.0.24f4.238e1f29.00000000e378/head//2 by
> client.1074837.0:1295631 2014-03-15 12:38:03.613604
>     -8> 2014-03-16 11:51:25.183146 7f50923e4780 20 read_log
> 12794'1377365 (12794'1377348) modify
> cbb2fb7d/rb.0.2355.2ae8944a.00000000849e/head//2 by
> client.1077379.0:1396709 2014-03-15 12:38:33.720354
>     -7> 2014-03-16 11:51:25.183179 7f50923e4780 20 read_log
> 12794'1377366 (12794'1377365) modify
> cbb2fb7d/rb.0.2355.2ae8944a.00000000849e/head//2 by
> client.1077379.0:1396712 2014-03-15 12:38:33.726419
>     -6> 2014-03-16 11:51:25.183207 7f50923e4780 20 read_log
> 12794'1377367 (12794'1377366) modify
> cbb2fb7d/rb.0.2355.2ae8944a.00000000849e/head//2 by
> client.1077379.0:1397305 2014-03-15 12:39:09.863260
>     -5> 2014-03-16 11:51:25.183231 7f50923e4780 20 read_log
> 12794'1377368 (12794'1377367) modify
> cbb2fb7d/rb.0.2355.2ae8944a.00000000849e/head//2 by
> client.1077379.0:1398903 2014-03-15 12:40:13.096258
>     -4> 2014-03-16 11:51:25.183258 7f50923e4780 20 read_log
> 12794'1377369 (12794'1377363) modify
> 5ee8f77d/rb.0.1f7b.238e1f29.0000000118fb/head//2 by
> client.1077470.0:377159 2014-03-15 12:40:13.105469
>     -3> 2014-03-16 11:51:25.183282 7f50923e4780 20 read_log
> 12794'1377370 (12794'1377360) modify
> 19463f7d/rb.0.ecb29.238e1f29.000000000101/head//2 by
> client.1058212.1:358750 2014-03-15 12:40:24.998076
>     -2> 2014-03-16 11:51:25.183309 7f50923e4780 20 read_log
> 12794'1377371 (12794'1377368) modify
> cbb2fb7d/rb.0.2355.2ae8944a.00000000849e/head//2 by
> client.1077379.0:1399253 2014-03-15 12:40:28.134624
>     -1> 2014-03-16 11:51:25.183333 7f50923e4780 20 read_log
> 13740'1377371 (12605'1364064) modify
> 94c6137d/rb.0.d07d.2ae8944a.000000002524/head//2 by
> client.1088028.0:10498 2014-03-16 00:06:12.643968
>      0> 2014-03-16 11:51:25.185685 7f50923e4780 -1 osd/PGLog.cc: In
> function 'static bool PGLog::read_log(ObjectStore*, coll_t, hobject_t,
> const pg_info_t&, std::map<eversion_t, hobject_t>&,
> PGLog::IndexedLog&, pg_missing_t&, std::ostringstream&,
> std::set<std::basic_string<char> >*)' thread 7f50923e4780 time
> 2014-03-16 11:51:25.183350
> osd/PGLog.cc: 677: FAILED assert(last_e.version.version < e.version.version)

Any idea what might have happened to get the cluster in this state?  Was 
logging turned up leading up to the crash?

The version is an (epoch, v) pair and v is normally monotonically 
increasing.  I don't think much relies on this, though, so I pushed a 
wip-dumpling-sloppy-log branch that just drops this assert; I 
suspect it will come up after that.

sage

> 
> osd.2:
> -10> 2014-03-16 11:28:45.015366 7fe5a7539780 20 read_log 12794'1377363
> (12794'1377357) modify
> 5ee8f77d/rb.0.1f7b.238e1f29.0000000118fb/head//2 by
> client.1077470.0:376704 2014-03-15 12:37:43.175319
>     -9> 2014-03-16 11:28:45.015381 7fe5a7539780 20 read_log
> 12794'1377364 (12794'1377362) modify
> af8f477d/rb.0.24f4.238e1f29.00000000e378/head//2 by
> client.1074837.0:1295631 2014-03-15 12:38:03.613604
>     -8> 2014-03-16 11:28:45.015394 7fe5a7539780 20 read_log
> 12794'1377365 (12794'1377348) modify
> cbb2fb7d/rb.0.2355.2ae8944a.00000000849e/head//2 by
> client.1077379.0:1396709 2014-03-15 12:38:33.720354
>     -7> 2014-03-16 11:28:45.015405 7fe5a7539780 20 read_log
> 12794'1377366 (12794'1377365) modify
> cbb2fb7d/rb.0.2355.2ae8944a.00000000849e/head//2 by
> client.1077379.0:1396712 2014-03-15 12:38:33.726419
>     -6> 2014-03-16 11:28:45.015418 7fe5a7539780 20 read_log
> 12794'1377367 (12794'1377366) modify
> cbb2fb7d/rb.0.2355.2ae8944a.00000000849e/head//2 by
> client.1077379.0:1397305 2014-03-15 12:39:09.863260
>     -5> 2014-03-16 11:28:45.015428 7fe5a7539780 20 read_log
> 12794'1377368 (12794'1377367) modify
> cbb2fb7d/rb.0.2355.2ae8944a.00000000849e/head//2 by
> client.1077379.0:1398903 2014-03-15 12:40:13.096258
>     -4> 2014-03-16 11:28:45.015441 7fe5a7539780 20 read_log
> 12794'1377369 (12794'1377363) modify
> 5ee8f77d/rb.0.1f7b.238e1f29.0000000118fb/head//2 by
> client.1077470.0:377159 2014-03-15 12:40:13.105469
>     -3> 2014-03-16 11:28:45.015452 7fe5a7539780 20 read_log
> 12794'1377370 (12794'1377360) modify
> 19463f7d/rb.0.ecb29.238e1f29.000000000101/head//2 by
> client.1058212.1:358750 2014-03-15 12:40:24.998076
>     -2> 2014-03-16 11:28:45.015464 7fe5a7539780 20 read_log
> 12794'1377371 (12794'1377368) modify
> cbb2fb7d/rb.0.2355.2ae8944a.00000000849e/head//2 by
> client.1077379.0:1399253 2014-03-15 12:40:28.134624
>     -1> 2014-03-16 11:28:45.015475 7fe5a7539780 20 read_log
> 13740'1377371 (12605'1364064) modify
> 94c6137d/rb.0.d07d.2ae8944a.000000002524/head//2 by
> client.1088028.0:10498 2014-03-16 00:06:12.643968
>      0> 2014-03-16 11:28:45.016656 7fe5a7539780 -1 osd/PGLog.cc: In
> function 'static bool PGLog::read_log(ObjectStore*, coll_t, hobject_t,
> const pg_info_t&, std::map<eversion_t, hobject_t>&,
> PGLog::IndexedLog&, pg_missing_t&, std::ostringstream&,
> std::set<std::basic_string<char> >*)' thread 7fe5a7539780 time
> 2014-03-16 11:28:45.015497
> osd/PGLog.cc: 677: FAILED assert(last_e.version.version < e.version.version)
> 
> It seems that the latest version of the object taken from omap is not
> newer than the ones represented in the logs and this failed assert is
> preventing those 2 OSDs to start.
> 
> Here's a link to the code.
> https://github.com/ceph/ceph/blob/dumpling/src/osd/PGLog.cc#L667
> 
> Any thoughts on how to recover from this?
> 
> Thanks,
> Skye Dy
> 
> P.S. I apologize to those who will receive this multiple times.
> --
> To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 
> 
--
To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [CEPH Users]     [Ceph Large]     [Information on CEPH]     [Linux BTRFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux