Hi xinxin,

It's merged!  We've hit one other snag, though.. rocksdb is failing to 
build in i386.  See

        
http://gitbuilder.sepia.ceph.com/gitbuilder-ceph-deb-trusty-i386-basic/log.cgi?log=52c2182fe833e8a0206787ecd878bd010cc2e529

Do you mind taking a look?  Probably the int type in the parent class 
doesn't match.

Thanks!
sage


On Thu, 31 Jul 2014, Shu, Xinxin wrote:

> Hi sage , 
>  
> I create a pull request https://github.com/ceph/rocksdb/pull/3 , please help 
> review.
> 
> Cheers,
> xinxin
> 
> -----Original Message-----
> From: Shu, Xinxin 
> Sent: Thursday, July 31, 2014 4:42 PM
> To: 'Sage Weil'
> Cc: Mark Nelson; [email protected]
> Subject: RE: First attempt at rocksdb monitor store stress testing
> 
> Hi sage , 
> 
> This maybe due to  $(shell) is a feature of GNU make ,   I think there are 
> two solutions:
> 1)  run the script at configure time rather than at run time.
> 2)  $(shell (./build_tools/build_detect_version)) will generated 
> util/build_version.cc , the file only contain some version info (git version 
> , compile time) , since we may not care about thess infos , we can remove 
> this line from Makefile.am , generate util/build_version.cc by myself.
> 
> Cheers,
> xinxin
> 
> -----Original Message-----
> From: Sage Weil [mailto:[email protected]]
> Sent: Thursday, July 31, 2014 10:08 AM
> To: Shu, Xinxin
> Cc: Mark Nelson; [email protected]
> Subject: RE: First attempt at rocksdb monitor store stress testing
> 
> By the way, I'm getting closer to getting wip-rocksdb in a state where it can 
> be merged, but it is failing to build due to this line:
> 
>       $(shell (./build_tools/build_detect_version))
> 
> in Makefile.am which results in
> 
> automake: warnings are treated as errors
> warning: Makefile.am:59: shell (./build_tools/build_detect_version: 
> non-POSIX variable name
> Makefile.am:59: (probably a GNU make extension)
> Makefile.am: installing './depcomp'
> autoreconf: automake failed with exit status: 1
> 
> Any suggestions?  You can see these build results at
> 
>       http://ceph.com/gitbuilder.cgi
>       
> http://gitbuilder.sepia.ceph.com/gitbuilder-ceph-deb-trusty-amd64-basic/log.cgi?log=92212c722100065922468e4185759be0435877ff
> 
> sage
> 
> 
> On Thu, 31 Jul 2014, Shu, Xinxin wrote:
> 
> > Does your report base on wip-rocksdb-mark branch?
> > 
> > Cheers,
> > xinxin
> > 
> > -----Original Message-----
> > From: [email protected] 
> > [mailto:[email protected]] On Behalf Of Mark Nelson
> > Sent: Tuesday, July 29, 2014 12:56 AM
> > To: Shu, Xinxin; [email protected]
> > Subject: Re: First attempt at rocksdb monitor store stress testing
> > 
> > Hi Xinxin,
> > 
> > Thanks, I'll give it a try.  I want to figure out what's going on in 
> > Rocksdb when the test stalls with leveled compaction.  In the mean time, 
> > here are the test results with spinning disks and SSDs:
> > 
> > http://nhm.ceph.com/mon-store-stress/Monitor_Store_Stress_Short_Tests.
> > pdf
> > 
> > Mark
> > 
> > On 07/27/2014 11:45 PM, Shu, Xinxin wrote:
> > > Hi mark,
> > >
> > > I tested this option on my setup , same issue happened , I will dig into 
> > > it , if you want to get info log , there is a workaround, set this option 
> > > to none:
> > >
> > > Rocksdb_log = ""
> > >
> > > Cheers,
> > > xinxin
> > >
> > > -----Original Message-----
> > > From: Mark Nelson [mailto:[email protected]]
> > > Sent: Saturday, July 26, 2014 12:10 AM
> > > To: Shu, Xinxin; [email protected]
> > > Subject: Re: First attempt at rocksdb monitor store stress testing
> > >
> > > Hi Xinxin,
> > >
> > > I'm trying to enable the rocksdb log file as described in config_opts 
> > > using:
> > >
> > > rocksdb_log = <path to log file>
> > >
> > > The file gets created but is empty.  Any ideas?
> > >
> > > Mark
> > >
> > > On 07/24/2014 08:28 PM, Shu, Xinxin wrote:
> > >> Hi mark,
> > >>
> > >> I am looking forward to your results on SSDs .
> > >> rocksdb generates a crc of data to be written , this cannot be switch 
> > >> off (but can be subsititued with xxhash),  there are two options , 
> > >> Option. verify_checksums_in_compaction and ReadOptions. 
> > >> verify_checksums,  If we disable these two options , i think cpu usage 
> > >> will goes down . If we use universal compaction , this is not friendly 
> > >> with read operation.
> > >>
> > >> Btw , can you list your rocksdb configuration?
> > >>
> > >> Cheers,
> > >> xinxin
> > >>
> > >> -----Original Message-----
> > >> From: Mark Nelson [mailto:[email protected]]
> > >> Sent: Friday, July 25, 2014 7:45 AM
> > >> To: Shu, Xinxin; [email protected]
> > >> Subject: Re: First attempt at rocksdb monitor store stress testing
> > >>
> > >> Earlier today I modified the rocksdb options so I could enable universal 
> > >> compaction.  Over all performance is lower but I don't see the 
> > >> hang/stall in the middle of the test either.  Instead the disk is 
> > >> basically pegged with 100% writes.  I suspect average latency is higher 
> > >> than leveldb, but the highest latency is about 5-6s while we were seeing 
> > >> 30s spikes for leveldb with levelled (heh) compaction.
> > >>
> > >> I haven't done much tuning either way yet.  It may be that if we keep 
> > >> level 0 and level 1 roughly the same size we can reduce stalls in the 
> > >> levelled setups.  It will also be interesting to see what happens in 
> > >> these tests on SSDs.
> > >>
> > >> Mark
> > >>
> > >> On 07/24/2014 06:13 AM, Mark Nelson wrote:
> > >>> Hi Xinxin,
> > >>>
> > >>> Thanks! I wonder as well if it might be interesting to expose the 
> > >>> options related to universal compaction?  It looks like rocksdb 
> > >>> provides a lot of interesting knobs you can adjust!
> > >>>
> > >>> Mark
> > >>>
> > >>> On 07/24/2014 12:08 AM, Shu, Xinxin wrote:
> > >>>> Hi mark,
> > >>>>
> > >>>> I think this maybe related to 'verify_checksums' config option 
> > >>>> ,when ReadOptions is initialized, default this option is  true , 
> > >>>> all data read from underlying storage will be verified against 
> > >>>> corresponding checksums,  however,  this option cannot be 
> > >>>> configured in wip-rocksdb branch. I will modify code to make this 
> > >>>> option configurable .
> > >>>>
> > >>>> Cheers,
> > >>>> xinxin
> > >>>>
> > >>>> -----Original Message-----
> > >>>> From: [email protected] 
> > >>>> [mailto:[email protected]] On Behalf Of Mark 
> > >>>> Nelson
> > >>>> Sent: Thursday, July 24, 2014 7:14 AM
> > >>>> To: [email protected]
> > >>>> Subject: First attempt at rocksdb monitor store stress testing
> > >>>>
> > >>>> Hi Guys,
> > >>>>
> > >>>> So I've been interested lately in leveldb 99th percentile latency 
> > >>>> (and the amount of write amplification we are seeing) with leveldb.
> > >>>> Joao mentioned he has written a tool called mon-store-stress in 
> > >>>> wip-leveldb-misc to try to provide a means to roughly guess at 
> > >>>> what's happening on the mons under heavy load.  I cherry-picked 
> > >>>> it over to wip-rocksdb and after a couple of hacks was able to 
> > >>>> get everything built and running with some basic tests.  There 
> > >>>> was little tuning done and I don't know how realistic this 
> > >>>> workload is, so don't assume this means anything yet, but some initial 
> > >>>> results are here:
> > >>>>
> > >>>> http://nhm.ceph.com/mon-store-stress/First%20Attempt.pdf
> > >>>>
> > >>>> Command that was used to run the tests:
> > >>>>
> > >>>> ./ceph-test-mon-store-stress --mon-keyvaluedb <leveldb|rocksdb> 
> > >>>> --write-min-size 50K --write-max-size 2M --percent-write 70 
> > >>>> --percent-read 30 --keep-state --test-seed 1406137270 --stop-at
> > >>>> 5000 foo
> > >>>>
> > >>>> The most interesting bit right now is that rocksdb seems to be 
> > >>>> hanging in the middle of the test (left it running for several 
> > >>>> hours).  CPU usage on one core was quite high during the hang.
> > >>>> Profiling using perf with dwarf symbols I see:
> > >>>>
> > >>>> -  49.14%  ceph-test-mon-s  ceph-test-mon-store-stress  [.] 
> > >>>> unsigned int 
> > >>>> rocksdb::crc32c::ExtendImpl<&rocksdb::crc32c::Fast_CRC32>(unsigne
> > >>>> d
> > >>>> int, char const*, unsigned long)
> > >>>>        - unsigned int
> > >>>> rocksdb::crc32c::ExtendImpl<&rocksdb::crc32c::Fast_CRC32>(unsigne
> > >>>> d
> > >>>> int, char const*, unsigned long)
> > >>>>             51.70%
> > >>>> rocksdb::ReadBlockContents(rocksdb::RandomAccessFile*,
> > >>>> rocksdb::Footer const&, rocksdb::ReadOptions const&, 
> > >>>> rocksdb::BlockHandle const&, rocksdb::BlockContents*, 
> > >>>> rocksdb::Env*,
> > >>>> bool)
> > >>>>             48.30%
> > >>>> rocksdb::BlockBasedTableBuilder::WriteRawBlock(rocksdb::Slice
> > >>>> const&, rocksdb::CompressionType, rocksdb::BlockHandle*)
> > >>>>
> > >>>> Not sure what's going on yet, may need to try to enable 
> > >>>> logging/debugging in rocksdb.  Thoughts/Suggestions welcome. :)
> > >>>>
> > >>>> Mark
> > >>>> --
> > >>>> To unsubscribe from this list: send the line "unsubscribe ceph-devel"
> > >>>> in the body of a message to [email protected] 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 [email protected] 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 [email protected] 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 [email protected]
> 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 [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to