From issues-return-186727-archive-asf-public=cust-asf.ponee.io@flink.apache.org Wed Aug 29 23:06:04 2018 Return-Path: X-Original-To: archive-asf-public@cust-asf.ponee.io Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by mx-eu-01.ponee.io (Postfix) with SMTP id 978E2180675 for ; Wed, 29 Aug 2018 23:06:03 +0200 (CEST) Received: (qmail 8133 invoked by uid 500); 29 Aug 2018 21:06:02 -0000 Mailing-List: contact issues-help@flink.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@flink.apache.org Delivered-To: mailing list issues@flink.apache.org Received: (qmail 8124 invoked by uid 99); 29 Aug 2018 21:06:02 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd1-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 29 Aug 2018 21:06:02 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd1-us-west.apache.org (ASF Mail Server at spamd1-us-west.apache.org) with ESMTP id 389FBC9120 for ; Wed, 29 Aug 2018 21:06:02 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd1-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -109.501 X-Spam-Level: X-Spam-Status: No, score=-109.501 tagged_above=-999 required=6.31 tests=[ENV_AND_HDR_SPF_MATCH=-0.5, KAM_ASCII_DIVIDERS=0.8, RCVD_IN_DNSWL_MED=-2.3, SPF_PASS=-0.001, USER_IN_DEF_SPF_WL=-7.5, USER_IN_WHITELIST=-100] autolearn=disabled Received: from mx1-lw-us.apache.org ([10.40.0.8]) by localhost (spamd1-us-west.apache.org [10.40.0.7]) (amavisd-new, port 10024) with ESMTP id In7vT4jeNmTu for ; Wed, 29 Aug 2018 21:06:01 +0000 (UTC) Received: from mailrelay1-us-west.apache.org (mailrelay1-us-west.apache.org [209.188.14.139]) by mx1-lw-us.apache.org (ASF Mail Server at mx1-lw-us.apache.org) with ESMTP id 3996D5F43B for ; Wed, 29 Aug 2018 21:06:01 +0000 (UTC) Received: from jira-lw-us.apache.org (unknown [207.244.88.139]) by mailrelay1-us-west.apache.org (ASF Mail Server at mailrelay1-us-west.apache.org) with ESMTP id 93CE7E0DAA for ; Wed, 29 Aug 2018 21:06:00 +0000 (UTC) Received: from jira-lw-us.apache.org (localhost [127.0.0.1]) by jira-lw-us.apache.org (ASF Mail Server at jira-lw-us.apache.org) with ESMTP id 268F726B58 for ; Wed, 29 Aug 2018 21:06:00 +0000 (UTC) Date: Wed, 29 Aug 2018 21:06:00 +0000 (UTC) From: "ASF GitHub Bot (JIRA)" To: issues@flink.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (FLINK-7551) Add VERSION to the REST urls. MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/FLINK-7551?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16596857#comment-16596857 ] ASF GitHub Bot commented on FLINK-7551: --------------------------------------- tillrohrmann commented on a change in pull request #6602: [FLINK-7551][rest] Add versioning to REST API URL: https://github.com/apache/flink/pull/6602#discussion_r213833987 ########## File path: flink-runtime/src/main/java/org/apache/flink/runtime/rest/RestServerEndpoint.java ########## @@ -364,22 +364,37 @@ public String getRestBaseUrl() { } } - private static void registerHandler(Router router, Tuple2 specificationHandler) { - switch (specificationHandler.f0.getHttpMethod()) { + private static void registerHandler(Router router, Tuple2 specificationHandler, Logger log) { + final String handlerURL = specificationHandler.f0.getTargetRestEndpointURL(); + // setup versioned urls + for (final RestAPIVersion supportedVersion : specificationHandler.f0.getSupportedAPIVersions()) { + final String versionedHandlerURL = '/' + supportedVersion.getURLVersionPrefix() + handlerURL; + log.debug("Register handler {} under {}@{}.", specificationHandler.f1, specificationHandler.f0.getHttpMethod(), versionedHandlerURL); + registerHandler(router, versionedHandlerURL, specificationHandler.f0.getHttpMethod(), specificationHandler.f1); + } + // setup unversioned url for convenience and backwards compatibility + // this url will always point to the oldest supported version + // this is controlled by the order in which handler are registered + log.debug("Register handler {} under {}@{}.", specificationHandler.f1, specificationHandler.f0.getHttpMethod(), handlerURL); + registerHandler(router, handlerURL, specificationHandler.f0.getHttpMethod(), specificationHandler.f1); Review comment: Sounds like a good idea to me. Good catch @zentol! ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: users@infra.apache.org > Add VERSION to the REST urls. > ------------------------------ > > Key: FLINK-7551 > URL: https://issues.apache.org/jira/browse/FLINK-7551 > Project: Flink > Issue Type: Improvement > Components: REST > Affects Versions: 1.4.0 > Reporter: Kostas Kloudas > Assignee: Chesnay Schepler > Priority: Critical > Labels: pull-request-available > Fix For: 1.7.0 > > > This is to guarantee that we can update the REST API without breaking existing third-party clients. -- This message was sent by Atlassian JIRA (v7.6.3#76005)