Skip to content
Commits on Mar 4, 2014
  1. @sprsquish

    fix travis build

    sprsquish committed
Commits on Feb 28, 2014
  1. Merge branch 'tmp'

    Jenkins (CI) committed
  2. @mosesn

    [split] finagle: Fix Build.scala to scrooge generate again Motivation…

    mosesn committed with CI
    …: We reverted the change which pegged libthrift to 0.5.0, but forgot to change the build.scala again to scrooge generate.
    
    Modifications:
    Add back in the scrooge generating stuff, removed the bits which ignore the *.java files for doc generations.
    
    Results:
    We can build with sbt!
    
    RB_ID=298321
Commits on Feb 27, 2014
  1. @evnm

    [split] Revert pregenerated Thrift Java in finagle-{zipkin, exception}

    evnm committed with CI
    The removal of Scrooge from finagle-{zipkin,exception} caused a nightmare of
    libthrift versioning pain. This change reverts the introduction of pregenerated
    Java in finagle-{zipkin,exception}.
    
    RB_ID=296285
    TBR=true
  2. @roanta

    [split] finagle-mysql: Better failure handling for the dispatcher

    roanta committed with CI
    Motivation:
     Certain exceptions rendered the dispatcher unusable
     because the service wasn't being closed.
    
    Modification:
     - Move the dispatcher over to finagles GenSerialDispatcher
     - Better exception handling for fatal exceptions
    
    RB_ID=292177
Commits on Feb 25, 2014
  1. @stevegury

    [split] [finagle] fix dependency problem with multiple version of ser…

    stevegury committed with CI
    …versets
    
    Motivation:
    After my last commit, (and with a empty ivy cache) the sbt doc compilation was broken in finagle-serversets.
    I think (not sure) that's because of the version in the ivyXml was different than the one specified in the sbt.
    
    Modification:
    - Update all usage of c.t.common.zookeeper.server-set (finagle sbt & util sbt)
    
    Result:
    "./sbt +publish-local" is working!
    
    RB_ID=295301
  2. @zhanggl

    [split] finagle-redis: Allow an empty string as a hash field value

    zhanggl committed with CI
    Motivation:
    To fix the bug #244 according to RESP at http://redis.io/topics/protocol
    
    Modifications:
    
    1. Encoding
    In Codec.scala, we allow "" to be encoded as a normal argument by removing the if guard on (arg.readableBytes == 0)
    
    2. Decoding
    In Reply.scala, decode '$0\r\n\r\n' to a BulkReply of "" instead of a EmptyBulkReply. Also removed the requirement of a BulkRelay not allowed to have "" as payload (Though I am not quite sure about the side-effect ).
    
    3. And the tests in both NaggatiSpec.scala and ClientSpec.scala
    
    Results:
    The tests in NaggatiSpec.scala and ClientSpec.scala passed. And now we can have the empty string as the hash field value.
    
    Signed-off-by: Moses Nakamura <mnakamura@twitter.com>
    
    RB_ID=295067
  3. @harleyjcooper

    [split] Tagging finagle-stream test as flaky

    harleyjcooper committed with CI
    RB_ID=295401
    TBR=true
  4. @stevegury

    [split] [finalge] Fix the sbt doc generation (and tests)

    stevegury committed with CI
    Motivation:
    Due to recent change the sbt doc generation was broken in finagle-exception and finagle-zipkin (required for publishing jar).
    
    Modification:
    - Exclude the inlined thrift generated files from the scaladoc
    
    Result:
    "./sbt +publish-local" is working!
    
    RB_ID=295045
Commits on Feb 24, 2014
  1. @luciferous

    [split] TraceId invariance

    luciferous committed with CI
    Motivation:
    TraceId should not change across requests.
    
    Modifications:
    Server configuration now uses the server filter instead of the
    client filter. Also, placed the tracing filter inside the
    dispatcher.
    
    Result:
    TraceId is properly set by the tracing filter.
    
    RB_ID=288701
  2. @stevegury

    [split] [finalge] Fix the sbt build (and tests)

    stevegury committed with CI
    Motivation:
    Due to recent change the sbt build was broken (not compiling and some tests were failing).
    
    Modification:
    - Disable the usage of Scrooge in finagle-zipkin and finagle-exception
    - In order to continuously run those tests, I enabled SKIP-FLAKY by default
    - Reduce the visibility of 2 finagle-mux tests (sbt try to test those with specs)
    - Exclude ZkTest.scala from finagle-serversets (not compiling)
    
    Result:
    "./sbt test" is working reliably!
    
    RB_ID=294061
  3. @stevegury

    [split] [3rdparty] Update c.t.common.zookeeper.server-set

    stevegury committed with CI
    RB_ID=293191
    TBR=true
Commits on Feb 21, 2014
  1. @evnm

    [split] bump finagle to 6.12.3-SNAPSHOT

    evnm committed with CI
    RB_ID=292867
    TBR=true
  2. @evnm

    [split] Drop scrooge in favor of generated Java in finagle-exception …

    evnm committed with CI
    …and -zipkin.
    
    In order to get a Finagle release out, I had to make the following changes:
    
    - Drop maven-scrooge-plugin in favor of pre-generated Java source in
      finagle-exception and finagle-zipkin
    - Bump rest of finagle to scrooge-maven-plugin 3.12.3
    - Mark com.twitter.finagle.memcached.integration.MigrationClientTest
      "not migrating yet" tests as flaky. This test failed midway through a
      release attempt.
    - Add explicit scrooge-core dependency to iago/pom.xml and bumped iago's
      scrooge-maven-plugin version to 3.12.3.
    
    RB_ID=292581
    TBR=true
Commits on Feb 20, 2014
  1. @roanta

    [split] finagle-mysql: revert finagle-mysql ClientTest

    roanta committed with CI
    Revert ClientTest to run as an integration test until
    the embedded mysql testing framework runs more seamlessly.
    
    RB_ID=291793
  2. [split] Re-tagged flaky test

    ddavydov committed with CI
    RB_ID=291539
    TBR=true
  3. Merge branch 'tmp'

    Jenkins (CI) committed
Commits on Feb 19, 2014
  1. @stevegury

    [split] finagle: Fix version number in sbt project defintion

    stevegury committed with CI
    RB_ID=290679
  2. @tquan

    [split] Adding monitoring/debugging for ZKAnnouncerTest "only announc…

    tquan committed with CI
    …e additional endpoints if a primary endpoint is present" This test is currently marked as flaky and doesn't run in any CI run, except birdcage_flakies (CI run that runs flaky tests). It regularly fails in birdcage_flakies runs, which makes it a prime test case for testing monitoring. The results from the output of this will be used to fine tune what stats we're printing or making available in terms of port monitoring on CI.
    
     TLDR on changes:
     - debugging lines on which "eventually" is failing
     - the status on the binds
     - a call to our new endpoint that prints out stats on the machine's current port usage
    
    RB_ID=286093
    TBR=true
  3. @evnm

    [split] finagle-mux: Fix flaky request cancellation test

    evnm committed with CI
    RB_ID=288495
  4. @stevegury

    [split] release scrooge version 3.12.3

    stevegury committed with CI
    RB_ID=290643
    TBR=true
  5. @tquan

    [split] Adding monitoring/debugging for ZKAnnouncerTest "only announc…

    tquan committed with CI
    …e additional endpoints if a primary endpoint is present" This test is currently marked as flaky and doesn't run in any CI run, except birdcage_flakies (CI run that runs flaky tests). It regularly fails in birdcage_flakies runs, which makes it a prime test case for testing monitoring. The results from the output of this will be used to fine tune what stats we're printing or making available in terms of port monitoring on CI.
    
     TLDR on changes:
     - debugging lines on which "eventually" is failing
     - the status on the binds
     - a call to our new endpoint that prints out stats on the machine's current port usage
    
    RB_ID=286093
    TBR=true
  6. @stevegury

    [split] release finable version 6.12.1

    stevegury committed with CI
    RB_ID=290583
    TBR=true
  7. @stevegury

    [split] release ostrich version 9.3.1

    stevegury committed with CI
    RB_ID=290313
    TBR=true
  8. @stevegury

    [split] release util version 6.12.1

    stevegury committed with CI
    RB_ID=290145
    TBR=true
Commits on Feb 18, 2014
  1. @stevegury

    [split] Upgrade everyone to the new c.t.common.server-set A critical …

    stevegury committed with CI
    …bug have been found in c.t.common.zookeeper.client, this change upgrade everyone with the fixed jar.
    
    RB_ID=289319
  2. @luciferous

    [split] Closing one side of a proxy should close the other

    luciferous committed with CI
    Motivations:
    
    An HTTP proxy B between client A and server C.
    
        A<>B<>C
    
    When A<>B closes we want B<>C to also close. Steps to reproduce are
    described in the description of
    https://jira.twitter.biz/browse/MACAW-316.
    
    Modifications:
    
    For a service definition:
    
    > val client = ClientBuilder(..)
    > val proxy = Service.mk { req => client(req) }
    
    1. If we interrupt the client request, it should close the channel
    between the client and a destination. To illustrate:
    
    > client(req).raise(..)
    > verify(ch, times(1)).close()
    
    N.B. We can't quite do this because we don't have a reference to the
    underlying Channel ch, and even if we did, we don't call close on it
    directly but do it through Channels.close (why do we do this, is it to
    avoid deadlocks?):
    
    2. If we interrupt the proxy request, it should interrupt the client
    request.
    
    > val promise = new Promise[Response]
    > val proxy = Service.mk { _ => promise }
    > proxy(Request()).raise(..)
    > assert(promise.isInterrupted.isDefined)
    
    Now imagine a related service definition:
    
    > val service = Service.mk { req =>
    >   def loop = req.response.writer.write(..) before loop
    >   loop
    >   req.response.setChunked(true)
    >   Future.value(req.response)
    > }
    
    3. Transport closure in the service dispatcher should discard the
    reader.
    
    > val req = Request()
    > req.response.setChunked(true)
    > val service = Service.mk { _ => Future.value(req.response) }
    >
    > // Wait for the dispatch i.e. response has been returned
    > assert(Await.result(service(req)) === req.response)
    >
    > trans.close()
    > intercept[Reader.ReaderDiscarded] { Await.result(req.writer.write(..)) }
    
    RB_ID=276657
  3. @harleyjcooper

    [split] Tagging all ZkResolverTest tests as flaky

    harleyjcooper committed
    RB_ID=289401
    TBR=true
    NO-QUEUE=true
Commits on Feb 16, 2014
  1. @harleyjcooper

    [split] Tagging flaky test in ZkResolverTest

    harleyjcooper committed
    RB_ID=289357
    TBR=true
    NO-QUEUE=true
Commits on Feb 15, 2014
  1. @stevegury

    [split] release finagle version 6.12.0

    stevegury committed with CI
    RB_ID=289233
    TBR=true
  2. @stevegury

    [split] release ostrich version 9.3.0

    stevegury committed with CI
    RB_ID=289089
    TBR=true
  3. @stevegury

    [split] release 6.12.0 of util

    stevegury committed with CI
    RB_ID=288955
    TBR=true
Commits on Feb 14, 2014
  1. @evnm

    [split] finagle-core: Record Finagle version in tracing information

    evnm committed with CI
    In order to be able to easily audit Finagle version in deployed services, we'd
    like to record versions in Zipkin trace data at runtime. This change adds an
    `AtomicReference[String]` to com.twitter.finagle.Init that is set with the
    finagle-core version pulled from build.properties. This version is recorded
    under the key "finagle.version" in com.twitter.finagle.tracing.TracingFilter.
    
    RB_ID=284857
  2. @evnm

    [split] finagle-serversets: Use ephemeral ports and `Var.sample` in t…

    evnm committed with CI
    …ests
    
    Motivations:
    Basically all of our ZkResolver tests are marked flaky, which is ridiculous.
    They use defined ports all over the place, which is ill-advised when running on
    CI machines. Also com.twitter.finagle.serverset2.ZkResolverTest used
    `Var.observeTo`, which is a deprecated method.
    
    Modifications:
    - All InetSocketAddresses used in these two test files now select
      ephemeral ports
    - Replaced AtomicReference+observeTo usage in
      com.twitter.finagle.serverset2.ZkResolverTest with `Var.sample`, as is done in
      com.twitter.finagle.zookeeper.ZkResolverTest
    
    RB_ID=286507
  3. @harleyjcooper

    [split] Tagging finagle-mux test as flaky

    harleyjcooper committed
    RB_ID=288467
    TBR=true
    NO-QUEUE=true
Something went wrong with that request. Please try again.