Re: Let's Not Destroy the World in 2038

2015-12-23 Thread Adam C. Emerson
On 22/12/2015, Gregory Farnum wrote: [snip] > So I think we're stuck with creating a new utime_t and incrementing > the struct_v on everything that contains them. :/ [snip] > We'll also then need the full feature bit system to make > sure we send the old encoding to clients which don't understand

Let's Not Destroy the World in 2038

2015-12-22 Thread Adam C. Emerson
Comrades, Ceph's victory is assured. It will be the storage system of The Future. Matt Benjamin has reminded me that if we don't act fastĀ¹ Ceph will be responsible for destroying the world. utime_t() uses a 32-bit second count internally. This isn't great, but it's something we can fix.

Why FailedAssertion is not my favorite exception

2015-12-04 Thread Adam C. Emerson
Noble Creators of the Squid Cybernetic Swimming in a Distributed Data Sea, There is a spectre haunting src/common/assert.cc: The spectre of throw FailedAssertion. This seemingly inconsequential yet villainous statement destroys the stack frame in which a failing assert statement is evaluated-- a

Re: Why FailedAssertion is not my favorite exception

2015-12-04 Thread Adam C. Emerson
On 04/12/2015, Gregory Farnum wrote: > I must be missing something here. As far as I can tell, "throw > FailedAssertion" only happens in assert.cc, and I know that stuff > doesn't destroy the relevant stack frames since I've pulled the info > out of core dumps when debugging? > -Greg The behavior

wip-cxx11time and wip-cxx11concurrency

2015-12-04 Thread Adam C. Emerson
Sage and Fellow Ceph Developers, Someone poked at me and asked me to rebased and repush the time and concurrency branches for merge. They have been so rebased and the loicbot tester seems happy with them. Thank you. -- Senior Software Engineer Red Hat Storage, Ann Arbor, MI, US IRC:

Re: queue_transaction interface + unique_ptr + performance

2015-12-03 Thread Adam C. Emerson
On 03/12/2015, Somnath Roy wrote: > Yes, I posted the new result after adding -O2 in the compiler flag and it > shows almost no overhead with unique_ptr. > I will add the test of adding to list overhead and start implementing the new > interface. > But, regarding my other point of changing all

Re: queue_transaction interface + unique_ptr + performance

2015-12-03 Thread Adam C. Emerson
On 03/12/2015, Somnath Roy wrote: > I don't think make_shared / make_unique is part of c++11 (and ceph is using > that). It is part of c++14 I guess.. std::make_shared is in C++11, std::make_unique is in C++14. In addition to performance, std::make_shared is also more correct, in that:

Re: Undefined Ref for simple prog

2015-12-03 Thread Adam C. Emerson
On 03/12/2015, Robert LeBlanc wrote: > I'm trying to do some testing of Ceph components specifically around > the OP queues. I'm trying to use the class in a simple program where I > will do my testing, but I can't resolve one problem. I've had to > include types.h as forward defining the

Re: queue_transaction interface + unique_ptr + performance

2015-12-03 Thread Adam C. Emerson
On 03/12/2015, Casey Bodley wrote: [snip] > The queue_transactions() interface could take a container of Transactions, > rather than pointers to Transactions, and the ObjectStore would move them > out of the container into whatever representation it prefers. [snip] Or a pointer and count (or we

Re: queue_transaction interface + unique_ptr + performance

2015-12-03 Thread Adam C. Emerson
On 04/12/2015, Somnath Roy wrote: [snip] > # Test Shared Smart ptr ## > micros_used for shared ptr: 27105354 One thing to keep in mind is that, if there are any cases where we really DO want to use shared_ptr, if we find ourselves assigning a new pointer then releasing an old one, it's

Re: Async reads, sync writes, op thread model discussion

2015-10-30 Thread Adam C. Emerson
. We are not (yet) working on Objecter, but we would love to collaborate with anyone wanting to do this work. -- Adam C. Emerson, Senior Software Engineer Red Hat Storage, Ann Arbor, Michigan, United States -- To unsubscribe from this list: send the line "unsubscribe ceph-devel" in the

Re: Review Request

2015-09-17 Thread Adam C. Emerson
On 09/16/2015 06:15 PM, John Spray wrote: > This is neat, I had been hankering to lambda-ize various things, but > hadn't worked through what the allocation would looked like in > practice. > > Do you know if there's a reason the standard is defined so as to not > let us override the reserved

Re: Review Request

2015-09-16 Thread Adam C. Emerson
On 09/16/2015 02:31 PM, Gregory Farnum wrote: > Can you provide a little background (links or text) for those of us > who aren't up on C++11x/14x? I looked at them briefly but having only > the vaguest idea about some of them quickly got lost. :) Surely, sir. So, in summary, Context* is the

Review Request

2015-09-16 Thread Adam C. Emerson
Creators of the Storage Squid, If you're interested in less use of the allocator, you are interested in Context* elimination. If so, please review the top two commits on the wip-decontextualization branch of: https://github.com/cohortfsllc/cohortfs-ceph They provide an enhanced version of

WIP for C++11 Time Support

2015-08-18 Thread Adam C. Emerson
I've pushed a branch, wip-cxx11time for inspection. It includes basic support for std::chrono (including clocks linked to specific POSIX CLOCK_* identifiers) and a new timer class that doesn't require Context*. As was suggested to me, I updated one subsystem to use std::chrono as an example,

Re: [ceph-users] dropping old distros: el6, precise 12.04, debian wheezy?

2015-07-31 Thread Adam C. Emerson
On 31/07/2015, Mariusz Gronczewski wrote: Well, Centos 6 will be supported to 2020, and centos 7 was released a year ago so I'd imagine a lot of people haven't migrated yet and migration process is nontrivial if you already did some modificiations to c6 (read: fix broken as fuck init scripts

Re: loadable objectstore

2015-06-22 Thread Adam C. Emerson
On 22/06/2015, Varada Kari wrote: Hi Matt, Majority of the changes are segregating the files to corresponding shared object and creating a factory object. And the naming is mostly taken from Erasure-coding plugins. Want a good naming convention :-), hence a preliminary review. Do agree,

Re: parent xattrs on file objects

2012-10-17 Thread Adam C. Emerson
. Respectfully yours, Adam C. Emerson aemer...@linuxbox.com -- To unsubscribe from this list: send the line unsubscribe ceph-devel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html

Re: Fwd: userland nfs server

2011-08-01 Thread Adam C. Emerson
vinodeno_t is not accessible via libceph (was it previously?) though it's still used and it's in mdstypes.h, though it doesn't look like it'll include in a straight C compile. Is there a missing include? Sorry about that. We made a few changes to the ceph client library, which can be found

Attempt to create a new file in a snapshot crashes the MDS

2010-07-09 Thread Adam C. Emerson
I know it's not supported, but I tried it out to see what kind of error behaviour I would get. The following were preformed on a simple ceph filesystem (one monitor, one mds, one osd all on the same machine) running current unstable with the filesystem mounted via cfuse: /mnt# mkdir foo /mnt# cd