First, thanks for all your contribution here James. It's really appreciated!
My point was just that if you had a hook there, you'd have a travis build
for your commit in your repo, before you submitted the PR.
It can still fail after, as we've seen, but it's normally quite rare. Most
instability is due to our tests and not travis itself.

Perhaps we should add something like this to CONTRIBUTING.md
+  * Verify that your change works on other platforms by adding a GitHub
service hook to [Travis CI](
http://docs.travis-ci.com/user/getting-started/#Step-one%3A-Sign-in) and
[AppVeyor](http://www.appveyor.com/docs)
1. Commit and push changes to your branch (please use issue name and
description as commit title, e.g. THRIFT-9999 make it perfect)
1. Issue a pull request with the jira ticket number you are working on in
it's name

Shall I?

On 30 April 2015 at 10:31, ASF GitHub Bot (JIRA) <j...@apache.org> wrote:

>
>     [
> https://issues.apache.org/jira/browse/THRIFT-3083?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14520596#comment-14520596
> ]
>
> ASF GitHub Bot commented on THRIFT-3083:
> ----------------------------------------
>
> Github user jeking3 commented on the pull request:
>
>     https://github.com/apache/thrift/pull/466#issuecomment-97620293
>
>     Wow, the build passed!  I have an account on travis, but I have been
> submitting pull requests into the apache/thrift master, so I have to
> control them here as far as I know.
>
>
> > C++ Consolidate server processing loops in TSimpleServer,
> TThreadedServer, TThreadPoolServer
> >
> --------------------------------------------------------------------------------------------
> >
> >                 Key: THRIFT-3083
> >                 URL: https://issues.apache.org/jira/browse/THRIFT-3083
> >             Project: Thrift
> >          Issue Type: Improvement
> >          Components: C++ - Library
> >    Affects Versions: 0.8, 0.9, 0.9.1, 0.9.2
> >            Reporter: James E. King, III
> >         Attachments: THRIFT-3083-server-files.tar, THRIFT-3083.patch
> >
> >
> > Currently the simple and threaded servers all share a very similar
> serve() workflow.  This improvement story is to consolidate them and
> extract out the specific differences to limit code duplication.
> > 1. Add TServerFramework that implements serve() and stop() for TServer,
> but is abstract.
> > 2. Add virtual methods onClientConnected, onClientDisconnected to
> TServerFramework and require subclasses to implement them.
> > 3. TSimpleServer onClientConnected calls TConnectedClient().run() in the
> serve() thread, thus blocking the server thread until the client
> disconnects.
> > 4. TThreadedServer::serve() calls TServerFramework::serve() and then
> waits for the notification that all clients are gone.  ::onClientConnected
> adds a TConnectedClient to the task set and starts a thread for it.
> ::onClientDisconnected removes the client from the task set.
> > 5. TThreadPoolServer would have similar changes.
> > The resulting classes will be much smaller, and the specific differences
> between the servers will be more obvious.  Further, the server processing
> loop which is common to all three will be in one place.  This improves the
> predictability of thrift and helps improve maintainability.
>
>
>
> --
> This message was sent by Atlassian JIRA
> (v6.3.4#6332)
>

Reply via email to