{"action":"created","comment":{"url":"https://api.github.com/repos/openzipkin/zipkin-java/pulls/comments/56938362","id":56938362,"diff_hunk":"@@ -0,0 +1,39 @@\n+/**\n+ * Copyright 2015-2016 The OpenZipkin Authors\n+ *\n+ * Licensed under the Apache License, Version 2.0 (the \"License\"); you may not use this file except\n+ * in compliance with the License. You may obtain a copy of the License at\n+ *\n+ * http://www.apache.org/licenses/LICENSE-2.0\n+ *\n+ * Unless required by applicable law or agreed to in writing, software distributed under the License\n+ * is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express\n+ * or implied. See the License for the specific language governing permissions and limitations under\n+ * the License.\n+ */\n+package zipkin.elasticsearch;\n+\n+import org.junit.AssumptionViolatedException;\n+\n+enum ElasticsearchTestGraph {\n+  INSTANCE;\n+\n+  static final ElasticsearchConfig CONFIG = new ElasticsearchConfig.Builder().build();\n+\n+  static {\n+    // Avoid race-conditions in travis by forcing read-your-writes consistency.\n+    ElasticsearchSpanConsumer.BLOCK_ON_FUTURES = true;\n+  }\n+\n+  private AssumptionViolatedException ex;\n+  private ElasticsearchSpanStore spanStore;\n+\n+  /** A lot of tech debt here because the repository constructor performs I/O. */","path":"interop/src/test/java/zipkin/elasticsearch/ElasticsearchTestGraph.java","position":null,"original_position":31,"commit_id":"0c85bba82cc94fe5ec92a9ef9c8f25cf289e713b","original_commit_id":"e29df6931a9583f93e6a3331e7788962350870c0","user":{"login":"anuraaga","id":198344,"avatar_url":"https://avatars.githubusercontent.com/u/198344?v=3","gravatar_id":"","url":"https://api.github.com/users/anuraaga","html_url":"https://github.com/anuraaga","followers_url":"https://api.github.com/users/anuraaga/followers","following_url":"https://api.github.com/users/anuraaga/following{/other_user}","gists_url":"https://api.github.com/users/anuraaga/gists{/gist_id}","starred_url":"https://api.github.com/users/anuraaga/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/anuraaga/subscriptions","organizations_url":"https://api.github.com/users/anuraaga/orgs","repos_url":"https://api.github.com/users/anuraaga/repos","events_url":"https://api.github.com/users/anuraaga/events{/privacy}","received_events_url":"https://api.github.com/users/anuraaga/received_events","type":"User","site_admin":false},"body":"Fixed to convert to AssumptionViolatedException as it should. Now tests are skipped when elasticsearch isn't running locally.","created_at":"2016-03-22T05:15:54Z","updated_at":"2016-03-22T05:15:54Z","html_url":"https://github.com/openzipkin/zipkin-java/pull/107#discussion_r56938362","pull_request_url":"https://api.github.com/repos/openzipkin/zipkin-java/pulls/107","_links":{"self":{"href":"https://api.github.com/repos/openzipkin/zipkin-java/pulls/comments/56938362"},"html":{"href":"https://github.com/openzipkin/zipkin-java/pull/107#discussion_r56938362"},"pull_request":{"href":"https://api.github.com/repos/openzipkin/zipkin-java/pulls/107"}}},"pull_request":{"url":"https://api.github.com/repos/openzipkin/zipkin-java/pulls/107","id":63338375,"html_url":"https://github.com/openzipkin/zipkin-java/pull/107","diff_url":"https://github.com/openzipkin/zipkin-java/pull/107.diff","patch_url":"https://github.com/openzipkin/zipkin-java/pull/107.patch","issue_url":"https://api.github.com/repos/openzipkin/zipkin-java/issues/107","number":107,"state":"open","locked":false,"title":"Add an elasticsearch span store.","user":{"login":"anuraaga","id":198344,"avatar_url":"https://avatars.githubusercontent.com/u/198344?v=3","gravatar_id":"","url":"https://api.github.com/users/anuraaga","html_url":"https://github.com/anuraaga","followers_url":"https://api.github.com/users/anuraaga/followers","following_url":"https://api.github.com/users/anuraaga/following{/other_user}","gists_url":"https://api.github.com/users/anuraaga/gists{/gist_id}","starred_url":"https://api.github.com/users/anuraaga/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/anuraaga/subscriptions","organizations_url":"https://api.github.com/users/anuraaga/orgs","repos_url":"https://api.github.com/users/anuraaga/repos","events_url":"https://api.github.com/users/anuraaga/events{/privacy}","received_events_url":"https://api.github.com/users/anuraaga/received_events","type":"User","site_admin":false},"body":"Also fixes a typo in SpanStoreTest that made it less stringent than the scala version.\r\nAlso fixes DependencyTest to use non-ordered assertions.\r\n\r\nCloses #103 ","created_at":"2016-03-18T07:48:24Z","updated_at":"2016-03-22T05:15:54Z","closed_at":null,"merged_at":null,"merge_commit_sha":"732b3496a6cb137b5bb5cab87d3a920dad96c7cd","assignee":null,"milestone":{"url":"https://api.github.com/repos/openzipkin/zipkin-java/milestones/1","html_url":"https://github.com/openzipkin/zipkin-java/milestones/1.0","labels_url":"https://api.github.com/repos/openzipkin/zipkin-java/milestones/1/labels","id":1656352,"number":1,"title":"1.0","description":"### Version 1 moves to semantic versioning\r\nVersion 1 indicates that public types not explicitly marked internal or experimental are safe to rely on, using semantic versioning rules. For example, a class or method can be removed on major update, new classes or methods can be added on minor.\r\n\r\n### On mono-repo\r\nVersion 1's api compatibility policy gives an opportunity to modularize, for example spinning out repositories as opposed to having a monorepo. Before version 1, api changes were too frequent for this to be viable.\r\n\r\nAll modules that remain in this repository post v1 will continue to be released with the same version number. If, for example, zipkin-server or zipkin-junit spin out into another repository, it may be released more or less frequently than the source code here.\r\n\r\n### On zipkin-server\r\n#### Modularity stability within a major release\r\nPrior to version 1, zipkin-server's plugin/modularity rules will be formalized, and not changed in significant ways without a major release. Without such stability, new span stores or transports cannot be stitched together in tools such as docker reliably.\r\n\r\n#### zipkin-java version vs http api version\r\nWrt zipkin-server, zipkin-java version 1 happens to target to zipkin http api and representation version 1, but they are different apis. In other words, a http api version 2 may or may not be released in the java version 1.x range, depending on code impact. It is likely that zipkin-server will accept old representations, to keep instrumentation operating.\r\n","creator":{"login":"adriancole","id":64215,"avatar_url":"https://avatars.githubusercontent.com/u/64215?v=3","gravatar_id":"","url":"https://api.github.com/users/adriancole","html_url":"https://github.com/adriancole","followers_url":"https://api.github.com/users/adriancole/followers","following_url":"https://api.github.com/users/adriancole/following{/other_user}","gists_url":"https://api.github.com/users/adriancole/gists{/gist_id}","starred_url":"https://api.github.com/users/adriancole/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/adriancole/subscriptions","organizations_url":"https://api.github.com/users/adriancole/orgs","repos_url":"https://api.github.com/users/adriancole/repos","events_url":"https://api.github.com/users/adriancole/events{/privacy}","received_events_url":"https://api.github.com/users/adriancole/received_events","type":"User","site_admin":false},"open_issues":3,"closed_issues":8,"state":"open","created_at":"2016-03-21T00:54:57Z","updated_at":"2016-03-21T11:15:58Z","due_on":"2016-03-31T16:00:00Z","closed_at":null},"commits_url":"https://api.github.com/repos/openzipkin/zipkin-java/pulls/107/commits","review_comments_url":"https://api.github.com/repos/openzipkin/zipkin-java/pulls/107/comments","review_comment_url":"https://api.github.com/repos/openzipkin/zipkin-java/pulls/comments{/number}","comments_url":"https://api.github.com/repos/openzipkin/zipkin-java/issues/107/comments","statuses_url":"https://api.github.com/repos/openzipkin/zipkin-java/statuses/0c85bba82cc94fe5ec92a9ef9c8f25cf289e713b","head":{"label":"anuraaga:elasticsearch","ref":"elasticsearch","sha":"0c85bba82cc94fe5ec92a9ef9c8f25cf289e713b","user":{"login":"anuraaga","id":198344,"avatar_url":"https://avatars.githubusercontent.com/u/198344?v=3","gravatar_id":"","url":"https://api.github.com/users/anuraaga","html_url":"https://github.com/anuraaga","followers_url":"https://api.github.com/users/anuraaga/followers","following_url":"https://api.github.com/users/anuraaga/following{/other_user}","gists_url":"https://api.github.com/users/anuraaga/gists{/gist_id}","starred_url":"https://api.github.com/users/anuraaga/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/anuraaga/subscriptions","organizations_url":"https://api.github.com/users/anuraaga/orgs","repos_url":"https://api.github.com/users/anuraaga/repos","events_url":"https://api.github.com/users/anuraaga/events{/privacy}","received_events_url":"https://api.github.com/users/anuraaga/received_events","type":"User","site_admin":false},"repo":{"id":54002944,"name":"zipkin-java","full_name":"anuraaga/zipkin-java","owner":{"login":"anuraaga","id":198344,"avatar_url":"https://avatars.githubusercontent.com/u/198344?v=3","gravatar_id":"","url":"https://api.github.com/users/anuraaga","html_url":"https://github.com/anuraaga","followers_url":"https://api.github.com/users/anuraaga/followers","following_url":"https://api.github.com/users/anuraaga/following{/other_user}","gists_url":"https://api.github.com/users/anuraaga/gists{/gist_id}","starred_url":"https://api.github.com/users/anuraaga/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/anuraaga/subscriptions","organizations_url":"https://api.github.com/users/anuraaga/orgs","repos_url":"https://api.github.com/users/anuraaga/repos","events_url":"https://api.github.com/users/anuraaga/events{/privacy}","received_events_url":"https://api.github.com/users/anuraaga/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/anuraaga/zipkin-java","description":"Experimental java zipkin backend","fork":true,"url":"https://api.github.com/repos/anuraaga/zipkin-java","forks_url":"https://api.github.com/repos/anuraaga/zipkin-java/forks","keys_url":"https://api.github.com/repos/anuraaga/zipkin-java/keys{/key_id}","collaborators_url":"https://api.github.com/repos/anuraaga/zipkin-java/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/anuraaga/zipkin-java/teams","hooks_url":"https://api.github.com/repos/anuraaga/zipkin-java/hooks","issue_events_url":"https://api.github.com/repos/anuraaga/zipkin-java/issues/events{/number}","events_url":"https://api.github.com/repos/anuraaga/zipkin-java/events","assignees_url":"https://api.github.com/repos/anuraaga/zipkin-java/assignees{/user}","branches_url":"https://api.github.com/repos/anuraaga/zipkin-java/branches{/branch}","tags_url":"https://api.github.com/repos/anuraaga/zipkin-java/tags","blobs_url":"https://api.github.com/repos/anuraaga/zipkin-java/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/anuraaga/zipkin-java/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/anuraaga/zipkin-java/git/refs{/sha}","trees_url":"https://api.github.com/repos/anuraaga/zipkin-java/git/trees{/sha}","statuses_url":"https://api.github.com/repos/anuraaga/zipkin-java/statuses/{sha}","languages_url":"https://api.github.com/repos/anuraaga/zipkin-java/languages","stargazers_url":"https://api.github.com/repos/anuraaga/zipkin-java/stargazers","contributors_url":"https://api.github.com/repos/anuraaga/zipkin-java/contributors","subscribers_url":"https://api.github.com/repos/anuraaga/zipkin-java/subscribers","subscription_url":"https://api.github.com/repos/anuraaga/zipkin-java/subscription","commits_url":"https://api.github.com/repos/anuraaga/zipkin-java/commits{/sha}","git_commits_url":"https://api.github.com/repos/anuraaga/zipkin-java/git/commits{/sha}","comments_url":"https://api.github.com/repos/anuraaga/zipkin-java/comments{/number}","issue_comment_url":"https://api.github.com/repos/anuraaga/zipkin-java/issues/comments{/number}","contents_url":"https://api.github.com/repos/anuraaga/zipkin-java/contents/{+path}","compare_url":"https://api.github.com/repos/anuraaga/zipkin-java/compare/{base}...{head}","merges_url":"https://api.github.com/repos/anuraaga/zipkin-java/merges","archive_url":"https://api.github.com/repos/anuraaga/zipkin-java/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/anuraaga/zipkin-java/downloads","issues_url":"https://api.github.com/repos/anuraaga/zipkin-java/issues{/number}","pulls_url":"https://api.github.com/repos/anuraaga/zipkin-java/pulls{/number}","milestones_url":"https://api.github.com/repos/anuraaga/zipkin-java/milestones{/number}","notifications_url":"https://api.github.com/repos/anuraaga/zipkin-java/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/anuraaga/zipkin-java/labels{/name}","releases_url":"https://api.github.com/repos/anuraaga/zipkin-java/releases{/id}","deployments_url":"https://api.github.com/repos/anuraaga/zipkin-java/deployments","created_at":"2016-03-16T05:18:56Z","updated_at":"2016-03-16T05:18:58Z","pushed_at":"2016-03-22T05:15:26Z","git_url":"git://github.com/anuraaga/zipkin-java.git","ssh_url":"git@github.com:anuraaga/zipkin-java.git","clone_url":"https://github.com/anuraaga/zipkin-java.git","svn_url":"https://github.com/anuraaga/zipkin-java","homepage":null,"size":966,"stargazers_count":0,"watchers_count":0,"language":"Java","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"openzipkin:master","ref":"master","sha":"616268660208c0ef00a95d416c5e5099c11bb883","user":{"login":"openzipkin","id":11860887,"avatar_url":"https://avatars.githubusercontent.com/u/11860887?v=3","gravatar_id":"","url":"https://api.github.com/users/openzipkin","html_url":"https://github.com/openzipkin","followers_url":"https://api.github.com/users/openzipkin/followers","following_url":"https://api.github.com/users/openzipkin/following{/other_user}","gists_url":"https://api.github.com/users/openzipkin/gists{/gist_id}","starred_url":"https://api.github.com/users/openzipkin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/openzipkin/subscriptions","organizations_url":"https://api.github.com/users/openzipkin/orgs","repos_url":"https://api.github.com/users/openzipkin/repos","events_url":"https://api.github.com/users/openzipkin/events{/privacy}","received_events_url":"https://api.github.com/users/openzipkin/received_events","type":"Organization","site_admin":false},"repo":{"id":40143886,"name":"zipkin-java","full_name":"openzipkin/zipkin-java","owner":{"login":"openzipkin","id":11860887,"avatar_url":"https://avatars.githubusercontent.com/u/11860887?v=3","gravatar_id":"","url":"https://api.github.com/users/openzipkin","html_url":"https://github.com/openzipkin","followers_url":"https://api.github.com/users/openzipkin/followers","following_url":"https://api.github.com/users/openzipkin/following{/other_user}","gists_url":"https://api.github.com/users/openzipkin/gists{/gist_id}","starred_url":"https://api.github.com/users/openzipkin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/openzipkin/subscriptions","organizations_url":"https://api.github.com/users/openzipkin/orgs","repos_url":"https://api.github.com/users/openzipkin/repos","events_url":"https://api.github.com/users/openzipkin/events{/privacy}","received_events_url":"https://api.github.com/users/openzipkin/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/openzipkin/zipkin-java","description":"Experimental java zipkin backend","fork":false,"url":"https://api.github.com/repos/openzipkin/zipkin-java","forks_url":"https://api.github.com/repos/openzipkin/zipkin-java/forks","keys_url":"https://api.github.com/repos/openzipkin/zipkin-java/keys{/key_id}","collaborators_url":"https://api.github.com/repos/openzipkin/zipkin-java/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/openzipkin/zipkin-java/teams","hooks_url":"https://api.github.com/repos/openzipkin/zipkin-java/hooks","issue_events_url":"https://api.github.com/repos/openzipkin/zipkin-java/issues/events{/number}","events_url":"https://api.github.com/repos/openzipkin/zipkin-java/events","assignees_url":"https://api.github.com/repos/openzipkin/zipkin-java/assignees{/user}","branches_url":"https://api.github.com/repos/openzipkin/zipkin-java/branches{/branch}","tags_url":"https://api.github.com/repos/openzipkin/zipkin-java/tags","blobs_url":"https://api.github.com/repos/openzipkin/zipkin-java/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/openzipkin/zipkin-java/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/openzipkin/zipkin-java/git/refs{/sha}","trees_url":"https://api.github.com/repos/openzipkin/zipkin-java/git/trees{/sha}","statuses_url":"https://api.github.com/repos/openzipkin/zipkin-java/statuses/{sha}","languages_url":"https://api.github.com/repos/openzipkin/zipkin-java/languages","stargazers_url":"https://api.github.com/repos/openzipkin/zipkin-java/stargazers","contributors_url":"https://api.github.com/repos/openzipkin/zipkin-java/contributors","subscribers_url":"https://api.github.com/repos/openzipkin/zipkin-java/subscribers","subscription_url":"https://api.github.com/repos/openzipkin/zipkin-java/subscription","commits_url":"https://api.github.com/repos/openzipkin/zipkin-java/commits{/sha}","git_commits_url":"https://api.github.com/repos/openzipkin/zipkin-java/git/commits{/sha}","comments_url":"https://api.github.com/repos/openzipkin/zipkin-java/comments{/number}","issue_comment_url":"https://api.github.com/repos/openzipkin/zipkin-java/issues/comments{/number}","contents_url":"https://api.github.com/repos/openzipkin/zipkin-java/contents/{+path}","compare_url":"https://api.github.com/repos/openzipkin/zipkin-java/compare/{base}...{head}","merges_url":"https://api.github.com/repos/openzipkin/zipkin-java/merges","archive_url":"https://api.github.com/repos/openzipkin/zipkin-java/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/openzipkin/zipkin-java/downloads","issues_url":"https://api.github.com/repos/openzipkin/zipkin-java/issues{/number}","pulls_url":"https://api.github.com/repos/openzipkin/zipkin-java/pulls{/number}","milestones_url":"https://api.github.com/repos/openzipkin/zipkin-java/milestones{/number}","notifications_url":"https://api.github.com/repos/openzipkin/zipkin-java/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/openzipkin/zipkin-java/labels{/name}","releases_url":"https://api.github.com/repos/openzipkin/zipkin-java/releases{/id}","deployments_url":"https://api.github.com/repos/openzipkin/zipkin-java/deployments","created_at":"2015-08-03T19:28:20Z","updated_at":"2016-03-22T01:51:30Z","pushed_at":"2016-03-22T05:15:27Z","git_url":"git://github.com/openzipkin/zipkin-java.git","ssh_url":"git@github.com:openzipkin/zipkin-java.git","clone_url":"https://github.com/openzipkin/zipkin-java.git","svn_url":"https://github.com/openzipkin/zipkin-java","homepage":null,"size":976,"stargazers_count":27,"watchers_count":27,"language":"Java","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":15,"mirror_url":null,"open_issues_count":12,"forks":15,"open_issues":12,"watchers":27,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/openzipkin/zipkin-java/pulls/107"},"html":{"href":"https://github.com/openzipkin/zipkin-java/pull/107"},"issue":{"href":"https://api.github.com/repos/openzipkin/zipkin-java/issues/107"},"comments":{"href":"https://api.github.com/repos/openzipkin/zipkin-java/issues/107/comments"},"review_comments":{"href":"https://api.github.com/repos/openzipkin/zipkin-java/pulls/107/comments"},"review_comment":{"href":"https://api.github.com/repos/openzipkin/zipkin-java/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/openzipkin/zipkin-java/pulls/107/commits"},"statuses":{"href":"https://api.github.com/repos/openzipkin/zipkin-java/statuses/0c85bba82cc94fe5ec92a9ef9c8f25cf289e713b"}}}}