hbase-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "zheng wang" <18031...@qq.com>
Subject 回复: a problem of long STW because of GC ref-proc
Date Mon, 30 Sep 2019 02:52:18 GMT
Even if set to 64KB,it also has more than 100w softRef ,and will cost too long still.


this "GC ref-proc" process 50w softRef and cost 700ms:


2019-09-18T03:16:42.088+0800: 125161.477: 
[GC remark 
	2019-09-18T03:16:42.088+0800: 125161.477: 
	[Finalize Marking, 0.0018076 secs] 
	2019-09-18T03:16:42.089+0800: 125161.479: 
	[GC ref-proc
		2019-09-18T03:16:42.089+0800: 125161.479: [SoftReference, 499278 refs, 0.1382086 secs]
		2019-09-18T03:16:42.228+0800: 125161.617: [WeakReference, 3750 refs, 0.0049171 secs]
		2019-09-18T03:16:42.233+0800: 125161.622: [FinalReference, 1040 refs, 0.0009375 secs]
		2019-09-18T03:16:42.234+0800: 125161.623: [PhantomReference, 0 refs, 21921 refs, 0.0058014
secs]
		2019-09-18T03:16:42.239+0800: 125161.629: [JNI Weak Reference, 0.0001070 secs]
	, 0.6667733 secs] 
	2019-09-18T03:16:42.756+0800: 125162.146: 
	[Unloading, 0.0224078 secs]
, 0.6987032 secs] 


------------------ 原始邮件 ------------------
发件人: "OpenInx"<openinx@gmail.com>;
发送时间: 2019年9月30日(星期一) 上午10:27
收件人: "Hbase-User"<user@hbase.apache.org>;

主题: Re: a problem of long STW because of GC ref-proc



100% get is not the right reason for choosing 16KB I think, because  if you
read a block, there's larger possibility that we
will read the adjacent cells in the same block... I think caching a 16KB
block or caching a 64KB block in BucketCache won't
make a big difference ?  (but if you cell byte size is quite small,  then
it will have so many cells encoded in a 64KB block,
then block with smaller size will be better because we search the cells in
a block one by one , means O(N) complexity).


On Mon, Sep 30, 2019 at 10:08 AM zheng wang <18031031@qq.com> wrote:

> Yes,it will be remission by your advise,but there only get request in our
> business,so 16KB is better.
> IMO,the locks of offset will always be used,so is the strong reference a
> better choice?
>
>
>
>
> ------------------ 原始邮件 ------------------
> 发件人: "OpenInx"<openinx@gmail.com>;
> 发送时间: 2019年9月30日(星期一) 上午9:46
> 收件人: "Hbase-User"<user@hbase.apache.org>;
>
> 主题: Re: a problem of long STW because of GC ref-proc
>
>
>
> Seems your block size is very small (16KB), so there will be
> 70*1024*1024/16=4587520 block (at most) in your BucketCache.
> For each block, the RS will maintain a soft reference idLock and a
> BucketEntry in its bucket cache.  So maybe you can try to
> enlarge the block size ?
>
> On Sun, Sep 29, 2019 at 10:14 PM zheng wang <18031031@qq.com> wrote:
>
> > Hi~
> >
> >
> > My live cluster env config below:
> > hbase version:cdh6.0.1(apache hbase2.0.0)
> > hbase config: bucketCache(70g),blocksize(16k)
> >
> >
> > java version:1.8.0_51
> > javaconfig:heap(32g),-XX:+UseG1GC  -XX:MaxGCPauseMillis=100
> > -XX:+ParallelRefProcEnabled
> >
> >
> > About 1-2days ,regionServer would occur a old gen gc that cost 1~2s in
> > remark phase:
> >
> >
> > 2019-09-29T01:55:45.186+0800: 365222.053:
> > [GC remark
> >         2019-09-29T01:55:45.186+0800: 365222.053:
> >         [Finalize Marking, 0.0016327 secs]
> >         2019-09-29T01:55:45.188+0800: 365222.054:
> >         [GC ref-proc
> >                 2019-09-29T01:55:45.188+0800: 365222.054: [SoftReference,
> > 1264586 refs, 0.3151392 secs]
> >                 2019-09-29T01:55:45.503+0800: 365222.370: [WeakReference,
> > 4317 refs, 0.0024381 secs]
> >                 2019-09-29T01:55:45.505+0800: 365222.372:
> [FinalReference,
> > 9791 refs, 0.0037445 secs]
> >                 2019-09-29T01:55:45.509+0800: 365222.376:
> > [PhantomReference, 0 refs, 1963 refs, 0.0018941 secs]
> >                 2019-09-29T01:55:45.511+0800: 365222.378: [JNI Weak
> > Reference, 0.0001156 secs]
> >         , 1.4554361 secs]
> >         2019-09-29T01:55:46.643+0800: 365223.510:
> >         [Unloading, 0.0211370 secs]
> > , 1.4851728 secs]
> >
> > The SoftReference seems used by offsetLock in BucketCache, there is two
> > questions :
> > 1:SoftReference proc cost 0.31s,but why GC ref-proc cost 1.45s at all?
> > 2:Is this a good choice to use SoftReference here?
Mime
  • Unnamed multipart/alternative (inline, 8-Bit, 0 bytes)
View raw message