Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 1CB98200B7C for ; Thu, 25 Aug 2016 02:04:25 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 1B5C3160AC1; Thu, 25 Aug 2016 00:04:25 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 622A5160AB1 for ; Thu, 25 Aug 2016 02:04:24 +0200 (CEST) Received: (qmail 15834 invoked by uid 500); 25 Aug 2016 00:04:23 -0000 Mailing-List: contact issues-help@geode.incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@geode.incubator.apache.org Delivered-To: mailing list issues@geode.incubator.apache.org Received: (qmail 15824 invoked by uid 99); 25 Aug 2016 00:04:23 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd4-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 25 Aug 2016 00:04:23 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd4-us-west.apache.org (ASF Mail Server at spamd4-us-west.apache.org) with ESMTP id 1574FC0B4C for ; Thu, 25 Aug 2016 00:04:23 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd4-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -4.646 X-Spam-Level: X-Spam-Status: No, score=-4.646 tagged_above=-999 required=6.31 tests=[KAM_ASCII_DIVIDERS=0.8, KAM_LAZY_DOMAIN_SECURITY=1, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426] autolearn=disabled Received: from mx1-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd4-us-west.apache.org [10.40.0.11]) (amavisd-new, port 10024) with ESMTP id z8hby3LTLXvh for ; Thu, 25 Aug 2016 00:04:22 +0000 (UTC) Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by mx1-lw-eu.apache.org (ASF Mail Server at mx1-lw-eu.apache.org) with SMTP id 761FC5FB37 for ; Thu, 25 Aug 2016 00:04:21 +0000 (UTC) Received: (qmail 14665 invoked by uid 99); 25 Aug 2016 00:04:20 -0000 Received: from arcas.apache.org (HELO arcas) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 25 Aug 2016 00:04:20 +0000 Received: from arcas.apache.org (localhost [127.0.0.1]) by arcas (Postfix) with ESMTP id 81F162C0156 for ; Thu, 25 Aug 2016 00:04:20 +0000 (UTC) Date: Thu, 25 Aug 2016 00:04:20 +0000 (UTC) From: "ASF subversion and git services (JIRA)" To: issues@geode.incubator.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (GEODE-1816) CacheServerLauncher uses static threadlocals to launch server MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 archived-at: Thu, 25 Aug 2016 00:04:25 -0000 [ https://issues.apache.org/jira/browse/GEODE-1816?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15435975#comment-15435975 ] ASF subversion and git services commented on GEODE-1816: -------------------------------------------------------- Commit 98531a16f8844a1028e2e6de293eb080d8ea7a1d in incubator-geode's branch refs/heads/develop from [~upthewaterspout] [ https://git-wip-us.apache.org/repos/asf?p=incubator-geode.git;h=98531a1 ] GEODE-1816: Workaround to clear statics in CacheCreationJUnitTest Working around the fact that other tests are leaving static thread locals set, causing this test to fail. The actual fix is to remove the static thread locals from the product. > CacheServerLauncher uses static threadlocals to launch server > ------------------------------------------------------------- > > Key: GEODE-1816 > URL: https://issues.apache.org/jira/browse/GEODE-1816 > Project: Geode > Issue Type: Bug > Components: management > Reporter: Dan Smith > > The CacheServerLauncher class has 3 static threadlocals > {code} > public static ThreadLocal serverPort = new ThreadLocal(); > public static ThreadLocal serverBindAddress = new ThreadLocal(); > public static ThreadLocal disableDefaultServer = new ThreadLocal(); > {code} > These get set when a server is launched. Then down in CacheCreation.create, it reads these thread locals and uses them to add a cache server. > Unfortunately this causes lots of pain writing unit tests, because tests can end up setting these thread locals and they are never cleared. Statics and thread locals should pretty much never be used. Especially in this case it seems like there are several easy ways to create a cache server after the cache is created, or pass properties in while creating the cache. -- This message was sent by Atlassian JIRA (v6.3.4#6332)