+1 on the RC as well.

Checked the hash.
Created a test app using the api.
Built from src.


On Mon, Feb 22, 2016 at 8:37 PM, Stack <[email protected]> wrote:

> On Mon, Feb 22, 2016 at 3:03 PM, Colin P. McCabe <[email protected]>
> wrote:
>
> > There are at least 3 RPC compatibility-breaking changes in
> > htrace-htraced between 4.0.1 and 4.1.0:
> >
> > HTRACE-315 changed the default port for htraced's HTTP interface from
> > 9095 to 9096.
> > HTRACE-237 changes the HTTP wire format slightly for htraced.
> > Previous to this, we just sent a whitespace-separated list of trace
> > spans.  After this, we send an actual JSON object.
> > HTRACE-308 (Deserialize WriteSpans requests incrementally rather than
> > all at once) changes the field "Spans" in the HRPC header to
> > "NumSpans".  It also decreases the maximum RPC size,
> > MAX_HRPC_BODY_LENGTH, from 64 MB to 32 MB.
> >
> >
> Thanks Colin.
>
>
> > To be honest, the main point of 4.0.1 was to stabilize the
> > htrace-core4 API and make a first release with the GUI.  There was a
> > lot of unfinished business in htraced-- things that we only got to
> > 4.1.  htraced is way more stable in 4.1 since we dealt with things
> > like GC pressure, the client side, and so forth.  And also just fixing
> > bugs.  I think we should accept the compatibility break with 4.0.1.
> > However, I agree that it would be nice to support the "old client, new
> > server" case.  I filed HTRACE-344 to add a mechanism that makes it
> > easier to detect the case where the client is too new, and give back a
> > reasonable response.  I don't think we should adopt a formal
> > compatibility policy-- htraced is not mature enough for that.  But we
> > can strive to maintain compatibility harder than we have in 4.2 (or
> > whatever the next release ends up being.)
> >
> >
> Ok. Thats good enough I'd say.
>
> +1 on the 4.1 RC.
>
> I checked hash and signature. Built from src and all unit tests passed.
> Started up htraced and put in a few spans with the client.
>
> St.Ack
>
>
>
>
>
>
> > best,
> > Colin
> >
> >
> > On Mon, Feb 22, 2016 at 10:37 AM, Stack <[email protected]> wrote:
> > > On Mon, Feb 22, 2016 at 9:51 AM, Colin P. McCabe <[email protected]>
> > wrote:
> > >
> > >> On Sun, Feb 21, 2016 at 8:10 PM, Stack <[email protected]> wrote:
> > >> > "The rationale for this limitation is that tracing can simply be
> > disabled
> > >> > for a brief period during the rolling upgrade process."
> > >> >
> > >> > The second time an operator has to do this, they'll just throw away
> > >> tracing
> > >> > as a PITA.
> > >>
> > >> Let's put this in perspective.  Apache Spark recently transitioned
> > >> from Scala 2.10 to 2.11.  Those Scala releases aren't binary
> > >> compatible.  They aren't even source-code compatible, which means that
> > >> people potentially had to rewrite their Spark jobs just to perform an
> > >> upgrade... let alone have things continue to work during the upgrade.
> > >> And people didn't throw away Spark; it's more popular than ever.
> > >>
> > >>
> > > By 'perspective', you mean others made a mess so we can too?
> > >
> > >
> > >
> > >> Now: It makes sense for a storage system (particularly a mature and
> > >> widely-deployed one) to bend over backwards to stay up during
> > >> upgrades.  That's why HDFS is so strict about this, and HBase as well.
> > >> But they weren't always that strict; we used to break RPC
> > >> compatibility with every release in the earlier days.  Also, HTrace is
> > >> not a storage system!  It's a tracing system.  It can be unavailable
> > >> for a few hours.  It will be OK.
> > >>
> > >> What's not OK is for us to have CLASSPATH conflicts within a minor
> > >> version of htrace-core4 that will create problems during rolling
> > >> upgrades.  It is not OK to remove APIs in htrace-core4, and so forth
> > >> and so on.  We thought about this stuff very carefully when coming up
> > >> with the compatibility policy to determine what was acceptable and
> > >> what was not.
> > >>
> > >>
> > > I'm not talking about CLASSPATH, I'm talking about the sending of
> spans.
> > >
> > > Do you know for sure that a 4.0.1 client can't talk to a 4.1.0-based
> > sink?
> > > If so, do you know what is broke?
> > >
> > > Thanks Colin,
> > > St.Ack
> > >
> > >
> > >
> > >
> > >> As the project matures, we can think about adopting a more generous
> > >> (and much more difficult to implement) compatibility policy on a
> > >> component-by-component basis.  But currently, a lot of the components
> > >> are not very mature.  For example, htrace-flume has seen very little
> > >> development.  htrace-htraced is probably the most mature component,
> > >> but a lot of its features are new.  4.0.1 was the first release with a
> > >> real GUI and usable client support.  Trying to implement an HDFS or
> > >> HBase-style compatibility policy right now would slow down development
> > >> greatly, for no gain.
> > >>
> > >> best,
> > >> Colin
> > >>
> > >>
> > >> >
> > >> > Tracing needs to bend to serve the traced systems, not the other way
> > >> around.
> > >> >
> > >> > A 4.0.1 can't talk to a 4.1.0? Do you know how it is broken?
> > >> >
> > >> > St.Ack
> > >> >
> > >> >
> > >> > On Fri, Feb 19, 2016 at 5:17 PM, Colin P. McCabe <
> [email protected]>
> > >> wrote:
> > >> >
> > >> >> Our compatibility policy (see
> > >> >>
> > >> >>
> > >>
> >
> http://mail-archives.apache.org/mod_mbox/htrace-dev/201509.mbox/%[email protected]%3E
> > >> >> ) only covers the htrace-core4 API right now.  So we can guarantee
> > >> >> that any projects using htrace-core 4.0.1 can upgrade to
> htrace-core
> > >> >> 4.1.0 without breaking anything.  (This is a more painful guarantee
> > >> >> than it sounds since it means we can't remove functions, only
> > >> >> deprecate them...  And so forth.)  But it's a very useful guarantee
> > >> >> for our downstream projects.
> > >> >>
> > >> >> However, we don't support mixing and matching versions of the
> > >> >> SpanReceiver client and server components.  The admin has to roll
> out
> > >> >> a uniform version of those components-- for example, using htraced
> > >> >> 4.0.1 with htrace-htraced.jar 4.1.0 is not supported.  The
> rationale
> > >> >> for this limitation is that tracing can simply be disabled for a
> > brief
> > >> >> period during the rolling upgrade process.  Also, the different
> > >> >> SpanReceiver subprojects are at different levels of maturity, and
> > >> >> imposing heavy compatibility guarantees would slow down development
> > >> >> for no real gain.
> > >> >>
> > >> >> best,
> > >> >> Colin
> > >> >>
> > >> >>
> > >> >> On Fri, Feb 19, 2016 at 4:32 PM, Stack <[email protected]> wrote:
> > >> >> > Can a 4.0.1 client talk to a 4.1.0 htrace? Has it been tested?
> > >> >> > St.Ack
> > >> >> >
> > >> >> > On Tue, Feb 9, 2016 at 7:00 PM, Colin P. McCabe <
> > [email protected]>
> > >> >> wrote:
> > >> >> >
> > >> >> >> Hi all,
> > >> >> >>
> > >> >> >> I've posted the second release candidate for HTrace 4.1 here:
> > >> >> >>
> > >> >> >> http://people.apache.org/~cmccabe/htrace/releases/4.1.0/rc2/
> > >> >> >>
> > >> >> >> The jars have been staged here:
> > >> >> >>
> > >> >> >>
> > >>
> https://repository.apache.org/content/repositories/orgapachehtrace-1022
> > >> >> >>
> > >> >> >> Compared to rc1, this rc includes HTRACE-334 and HTRACE-342.
> > >> >> >>
> > >> >> >> HTrace 4.1 brings a lot of robustness improvements.  There were
> > major
> > >> >> >> improvements to htraced and the web UI, as well as new metrics
> > added.
> > >> >> >> There were numerous build fixups, and we added Docker support,
> to
> > >> >> >> ensure a repeatable build.
> > >> >> >>
> > >> >> >> Check it out.  The vote will run for 5 days.
> > >> >> >>
> > >> >> >> cheers,
> > >> >> >> Colin
> > >> >> >>
> > >> >> >>
> > >> >> >> Release Notes - HTrace - Version 4.1
> > >> >> >> ** Bug
> > >> >> >>     * [HTRACE-114] - Fix compilation error of htrace-hbase
> against
> > >> >> >> hbase-1.0.0
> > >> >> >>     * [HTRACE-238] - Change maven compiler source level to 1.7
> to
> > >> >> >> match targetJdk
> > >> >> >>     * [HTRACE-243] - Remove duplicate maven-assembly-plugin
> > >> >> >> configuration section in htrace-htraced/pom.xml
> > >> >> >>     * [HTRACE-245] - NOTICE.txt: change "developed by The Apache
> > >> >> >> Software...” to "developed at The Apache Software...”
> > >> >> >>     * [HTRACE-246] - HTrace WebApp not properly defined and
> > therefore
> > >> >> >> not packaged into .war
> > >> >> >>     * [HTRACE-248] - HTraced should gracefully shutdown if
> stopped
> > >> >> >>     * [HTRACE-249] - Script and doc on how to publish website
> > >> >> >>     * [HTRACE-251] - Fix "mvn clean" target
> > >> >> >>     * [HTRACE-253] - Tracer loadSamplers and loadSpanReceivers
> > logs
> > >> >> >> are too chatty
> > >> >> >>     * [HTRACE-256] - Change the artifactId for htrace-core in
> > branch
> > >> >> >> 4.0 to be htrace-core4
> > >> >> >>     * [HTRACE-257] - htrace-htraced: add web symlink rather than
> > >> >> >> generating programmatically
> > >> >> >>     * [HTRACE-262] - Temporarily suppress doclint for Java 8 to
> > >> >> >> prevent build failure
> > >> >> >>     * [HTRACE-266] - Make the
> CLIENT_REST_MAX_SPANS_AT_A_TIME_KEY
> > >> >> >> config key more consistent with other configs
> > >> >> >>     * [HTRACE-267] - Move owl logo licensing information from
> > NOTICE
> > >> to
> > >> >> >> LICENSE
> > >> >> >>     * [HTRACE-268] - Remove Units and go-codec from LICENSE
> since
> > >> they
> > >> >> >> are not contained in the source release
> > >> >> >>     * [HTRACE-272] - TracerPool must not load multiple inscance
> of
> > >> >> >> same receiver class when a simple classname is given
> > >> >> >>     * [HTRACE-279] - Fix issues where the HTracedSpanReceiver
> was
> > >> >> >> using the wrong JSON serialization for spans and add validation
> to
> > >> >> >> htraced REST ingest path
> > >> >> >>     * [HTRACE-280] - htraced: add metrics about total spans
> added
> > and
> > >> >> >> dropped per address
> > >> >> >>     * [HTRACE-281] - htraced: add example/htraced-conf.xml
> > >> >> >>     * [HTRACE-282] - htraced: reap spans which are older than a
> > >> >> >> configurable interval
> > >> >> >>     * [HTRACE-283] - Heartbeater should wait for goroutine to
> > finish
> > >> on
> > >> >> >> close
> > >> >> >>     * [HTRACE-284] - htrace-htraced, htrace-flume: do not treat
> > the
> > >> >> >> shaded version of commons-logging as provided
> > >> >> >>     * [HTRACE-285] - htraced tool: fix query parsing and add
> > >> query_test
> > >> >> >>     * [HTRACE-289] - Fix TraceEnabled, etc. logger methods for
> > >> >> >> conditional logging
> > >> >> >>     * [HTRACE-294] - htraced: fix some metrics issues
> > >> >> >>     * [HTRACE-297] - htraced: avoid serializing spans to json
> > unless
> > >> >> >> TRACE logging is enabled
> > >> >> >>     * [HTRACE-300] - Reaper should be initialized before shards
> > are
> > >> >> >> activated
> > >> >> >>     * [HTRACE-301] - htraced: fix unit tests that aren't waiting
> > for
> > >> >> >> spans to be written, use semaphore for WrittenSpans
> > >> >> >>     * [HTRACE-302] - htraced: Add admissions control to HRPC to
> > limit
> > >> >> >> the number of incoming messages
> > >> >> >>     * [HTRACE-304] - htraced: fix bug with GREATER_THAN queries
> > >> >> >>     * [HTRACE-307] - htraced: queries sometimes return no
> results
> > >> even
> > >> >> >> when many results exist due to confusion in iterator usage
> > >> >> >>     * [HTRACE-311] - htraced: Fix logging to stdout via
> > -Dlog.path=
> > >> >> >>     * [HTRACE-316] - htrace-web: span.js issue: span ID string
> > length
> > >> >> >> is 32, not 36
> > >> >> >>     * [HTRACE-317] - Fix the documentation for adding tracing to
> > an
> > >> >> >> application to reflect HTrace 4.x API changes
> > >> >> >>     * [HTRACE-328] - htraced continues scanning in some cases
> even
> > >> >> >> when no more results are possible
> > >> >> >>
> > >> >> >> ** Improvement
> > >> >> >>     * [HTRACE-342] - centralize building instructions in
> > BUILDING.txt
> > >> >> >>     * [HTRACE-334] - htrace-web: Make limit of search and
> children
> > >> API
> > >> >> >> configurable
> > >> >> >>     * [HTRACE-129] - htraced: add /server/stats REST endpoint
> > >> >> >>     * [HTRACE-156] - HTrace GUI: add about view
> > >> >> >>     * [HTRACE-181] - gui: Split "about" screen
> > >> >> >>     * [HTRACE-237] - Optimize htraced span receiver
> > >> >> >>     * [HTRACE-239] - Add htrace/impl/TestZipkinSpanReceiver.java
> > >> >> >>     * [HTRACE-260] - htrace-zipkin should not set the obsolete
> > >> >> >> duration field in thrift
> > >> >> >>     * [HTRACE-271] - Add log4j.properties to all submodule tests
> > >> >> >>     * [HTRACE-276] - Shade classes into org.apache.htrace.shaded
> > >> >> >> rather than org.apache.htrace
> > >> >> >>     * [HTRACE-286] - htraced: improvements to logging, daemon
> > >> startup,
> > >> >> >> and configuration
> > >> >> >>     * [HTRACE-290] - htraced: Fix per-faculty log level settings
> > and
> > >> >> >> add unit tests for conditional logging
> > >> >> >>     * [HTRACE-291] - rename bin/htrace to bin/htracedTool
> > >> >> >>     * [HTRACE-292] - "htracedTool version" should display the
> git
> > >> >> >> hash, and -Dgit.version option should be available for build
> > >> >> >>     * [HTRACE-295] - htraced: setting span.expiry.ms to 0
> should
> > >> >> >> disable span expiry
> > >> >> >>     * [HTRACE-296] - htraced tests: make sure local settings for
> > >> >> >> HTRACED_WEB_DIR and HTRACE_CONF_DIR don't affect unit tests
> > >> >> >>     * [HTRACE-298] - htraced: improve datastore serialization
> and
> > >> >> metrics
> > >> >> >>     * [HTRACE-303] - Add client-side htraceDropped log file to
> > track
> > >> >> >> dropped spans
> > >> >> >>     * [HTRACE-305] - htrace-web: Use greater-than-or-equal
> rather
> > >> than
> > >> >> >> greater-than in more places
> > >> >> >>     * [HTRACE-306] - htraced: logs should use UTC
> > >> >> >>     * [HTRACE-308] - Deserialize WriteSpans requests
> incrementally
> > >> >> >> rather than all at once to optimize GC
> > >> >> >>     * [HTRACE-310] - htracedTool: when there is an error
> response,
> > >> >> >> print the body of the response
> > >> >> >>     * [HTRACE-312] - htraced: if GOMAXPROCS is left at 1, set it
> > to
> > >> >> >> the number of CPUs
> > >> >> >>     * [HTRACE-313] - htraced span receiver clientDropped file
> > should
> > >> >> >> include timestamps
> > >> >> >>     * [HTRACE-314] - htraced: make datastore loading safer
> > >> >> >>     * [HTRACE-327] - HTRACE-327: improve htraced command-line
> > parsing
> > >> >> >> and add version command
> > >> >> >>     * [HTRACE-334] - htrace-web: Make limit of search and
> children
> > >> API
> > >> >> >> configurable
> > >> >> >>     * [HTRACE-335] - htrace-web: Adjust size of span widget
> > >> >> >>     * [HTRACE-339] - Major type in htrace-flume README
> > >> >> >>
> > >> >> >> ** New Feature
> > >> >> >>     * [HTRACE-235] - htrace-zipkin - add Kafka transport support
> > >> >> >>     * [HTRACE-277] - htraced: Add /server/conf endpoint to get
> > server
> > >> >> >> configuration
> > >> >> >>     * [HTRACE-278] - htraced: dump thread stacks and GC
> statistics
> > >> >> >> when SIGQUIT is sent
> > >> >> >>     * [HTRACE-288] - htraced: Add a user interface to view
> server
> > >> >> >> version, metrics, and configuration
> > >> >> >>     * [HTRACE-293] - htrace-web: control-click should fully
> expand
> > >> trace
> > >> >> >> trees
> > >> >> >>     * [HTRACE-299] - htraced: add /server/debugInfo REST
> endpoint
> > to
> > >> >> >> get stack traces and GC stats
> > >> >> >>     * [HTRACE-309] - htraced: improve leveldb configuration
> > >> >> >>     * [HTRACE-323] - htrace-web: change the cursor to a spinner
> > while
> > >> >> >> a search is in progress
> > >> >> >>     * [HTRACE-332] - htraced: optionally enable leveldb LRU
> cache
> > >> >> >>
> > >> >> >> ** Task
> > >> >> >>     * [HTRACE-241] - Docker image for HTrace
> > >> >> >>     * [HTRACE-315] - htraced: change default web port from 9095
> to
> > >> 9096
> > >> >> >>     * [HTRACE-319] - mark versions 4.0 and 4.0.1 as released
> > >> >> >>     * [HTRACE-331] - create git tags for 4.0 and 4.0.1 releases
> > >> >> >>
> > >> >> >> ** Wish
> > >> >> >>     * [HTRACE-269] - HTraceConfiguration support to get the map
> of
> > >> >> >> configurations
> > >> >> >>
> > >> >>
> > >>
> >
>

Reply via email to