cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sylvain Lebresne (JIRA)" <>
Subject [jira] [Commented] (CASSANDRA-10031) Name threads for improved ops/debugging
Date Fri, 09 Oct 2015 13:41:26 GMT


Sylvain Lebresne commented on CASSANDRA-10031:

I'll note that while I'm good with improving thread naming to some extend, I'm less sure about
the "much finer grain things". Typically, I'm unconvinced that changing the thread name for
every partition during compaction is a good because 1) I'm not sure changing a thread name
too frequently (potentially multiple time per seconds in that example) is gonna help much
(I can see it hurting in fact), 2) we have to be a bit careful with what we do as we could
have long partition key names and 3) converting partition keys to strings (and applying a
truncation heuristic if it's too long) ain't totally free so I'm not convinced the gains are
worth the costs (tbc, I don't mean that the costs are very high, just that they do exists
and that I'm unconvinced of any practical gain).

Again, not against that ticket in principle, but with a preference for a light touch.

> Name threads for improved ops/debugging
> ---------------------------------------
>                 Key: CASSANDRA-10031
>                 URL:
>             Project: Cassandra
>          Issue Type: Improvement
>            Reporter: T Jake Luciani
>            Priority: Minor
>              Labels: lhf
>             Fix For: 3.x
> We currently provide basic names for threads in threads like {{STREAM-IN-1}}  which gives
some basic information about what the job of the thread is.  
> When looking at a log statement or jstack it's helpful to have this context.
> For our work stealing thread pool we share threads across all thread pools so we lose
this insight.  
> I'd like to propose we start using the Thread.currentThread().setName("")
> In different aspects of the code to improve insight as to what cassandra is doing at
any given moment.
>    * At a minimum in the start of each run() method.
>   Ideally for much finer grain things.
>    * In compaction include the partition name currently being working on.  
>    * In SP include the client ip
> Etc...

This message was sent by Atlassian JIRA

View raw message