Re: Multiple OSDs suicide because of client issues?

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

 



Thanks for the log dump command, I'll keep that in the back pocket, it
would have been helpful in a few situations.

I'm trying to microbenchmark the new Weighted Round Robin queue I've
been working on and just trying to dump the info to the logs so that I
can see it at runtime. So this is in a branch that isn't published
yet.

In file included from osd/OSD.cc:37:0:
osd/OSD.h: In member function ‘virtual void
OSD::ShardedOpWQ::_process(uint32_t, ceph::heartbeat_handle_d*)’:
osd/OSD.h:1072:7: error: invalid use of non-static data member ‘OSD::whoami’
   int whoami;
       ^
osd/OSD.cc:8270:388: error: from this location
   dout(15) << "Wrr (" << dendl;


               ^
osd/OSD.cc:8270:413: error: cannot call member function ‘epoch_t
OSD::get_osdmap_epoch()’ without object
   dout(15) << "Wrr (" << dendl;


                                        ^
In file included from osd/OSD.cc:37:0:
osd/OSD.h: In member function ‘virtual void
OSD::ShardedOpWQ::_enqueue(std::pair<boost::intrusive_ptr<PG>,
PGQueueable>)’:
osd/OSD.h:1072:7: error: invalid use of non-static data member ‘OSD::whoami’
   int whoami;
       ^
osd/OSD.cc:8361:388: error: from this location
   dout(15) << "Wrr (" << std::this_thread::get_id() << ") " <<
sdata->pqueue.get_queue() <<


               ^
osd/OSD.cc:8361:413: error: cannot call member function ‘epoch_t
OSD::get_osdmap_epoch()’ without object
   dout(15) << "Wrr (" << std::this_thread::get_id() << ") " <<
sdata->pqueue.get_queue() <<


The second set of errors just gets a string from the get_queue()
function, but the problem seems to be with just "dout(15) << "Wrr ("
<< dendl;" I would think that there is already an object of the OSD
created, so I'm a bit confused. Thanks for helping with a simple
issue.
----------------
Robert LeBlanc
PGP Fingerprint 79A2 9CA4 6CC4 45DD A904  C70E E654 3BB2 FA62 B9F1


On Mon, Nov 23, 2015 at 12:32 PM, Sage Weil <sweil@xxxxxxxxxx> wrote:
> On Mon, 23 Nov 2015, Robert LeBlanc wrote:
>> -----BEGIN PGP SIGNED MESSAGE-----
>> Hash: SHA256
>>
>> Is there a way through the admin socket or inject args that can tell
>> the OSD process to dump the in memory logs without crashing? Do you
>
> Yep, 'ceph daemon osd.NN log dump'.
>
>> have an idea of the overhead? From the code it looks like it is always
>> evaluated, just depends on if it is stored in memory or dumped to
>> disk. I'm trying to figure out an issue with dout() right now in the
>> code I'm working on (invalid use of static member) and I'm trying to
>> understand how it works.
>
> What's the error and problematic line?
>
> sage
--
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