Return-Path: X-Original-To: apmail-activemq-users-archive@www.apache.org Delivered-To: apmail-activemq-users-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 52ED718599 for ; Wed, 30 Mar 2016 00:20:11 +0000 (UTC) Received: (qmail 3243 invoked by uid 500); 30 Mar 2016 00:20:11 -0000 Delivered-To: apmail-activemq-users-archive@activemq.apache.org Received: (qmail 3197 invoked by uid 500); 30 Mar 2016 00:20:10 -0000 Mailing-List: contact users-help@activemq.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: users@activemq.apache.org Delivered-To: mailing list users@activemq.apache.org Received: (qmail 3185 invoked by uid 99); 30 Mar 2016 00:20:10 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd2-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 30 Mar 2016 00:20:10 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd2-us-west.apache.org (ASF Mail Server at spamd2-us-west.apache.org) with ESMTP id 3F6E71A1216 for ; Wed, 30 Mar 2016 00:20:10 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd2-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 3.512 X-Spam-Level: *** X-Spam-Status: No, score=3.512 tagged_above=-999 required=6.31 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=2, KAM_LIVE=1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_PASS=-0.001, URI_HEX=1.313, URI_TRY_3LD=0.001] autolearn=disabled Authentication-Results: spamd2-us-west.apache.org (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com Received: from mx2-lw-us.apache.org ([10.40.0.8]) by localhost (spamd2-us-west.apache.org [10.40.0.9]) (amavisd-new, port 10024) with ESMTP id l_NOFNHeBtOJ for ; Wed, 30 Mar 2016 00:20:08 +0000 (UTC) Received: from mail-io0-f169.google.com (mail-io0-f169.google.com [209.85.223.169]) by mx2-lw-us.apache.org (ASF Mail Server at mx2-lw-us.apache.org) with ESMTPS id D8F0E5F39E for ; Wed, 30 Mar 2016 00:20:07 +0000 (UTC) Received: by mail-io0-f169.google.com with SMTP id q128so45599251iof.3 for ; Tue, 29 Mar 2016 17:20:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to; bh=jEeBVBDToOtDM/s/2Svl3Wm8YeimgNj7GF1iTiLT1b0=; b=k4NQl7Spt13/530Gz6ww2m8h7YR4cIueY4lARWFKFyORv4PqXgQr7gnTRf1EucOJQy ONpMUhEkfL8jVX7dIPX4rxkVCGguixotehzW8aYA/dxzmIghmvWvLDDZh9Hc+Ll0+LEs cn/PNZqvySBLEKavtg0Ts5Xi6VuBCzlv1ZO9EwirfawsmO98SnIYgfsu3gJN9v+4OY0h 9fTZHH3oz8ooy/T1qo3LkaOVQ2T3EjVCH3KtnKV2uXhoaUx01mce0SzHEk66boJ4dOHz 86h9BHlCoAOYBKTr/2Ujs1k5KeP8xQf2naxma2VJE1lPdXsOmS0ff/g27PGBA6ilmpq+ 4Kvw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to; bh=jEeBVBDToOtDM/s/2Svl3Wm8YeimgNj7GF1iTiLT1b0=; b=OBE/54AKdLPyvSGYqdWo22gOn7Qh1M9ERhBplrgY1xXEzfCOp47PitKRMT5FMKLS9m hOYdevzFeS6evXOtpTPhZDNCqUt/Jr/zafx+k+kg8vdq5PkrA3eraW2FSOftt2Ukv8uU z0lVMxVP1V3lva2BzkR7IduKSBe2+97M/NK8CE938lyRkZYqYf0qbfmf+MJy5Q5rrsff ZaUarZe6LMh8ktT8dpWGv824Oo6T6CxKB++Lp/RIQFXFCtakIOeq3ISpJyIVorA5VY6d 2deMjGmEftDo8lCK6uzCGLrjfngLkNyJXT4bnGM8Rc/gOmNLZfvUXrnJz70ObNW7KGE0 uL1A== X-Gm-Message-State: AD7BkJJkPh5jt/TeVaA3t/kLK18UG8IFfmCic0lwkjVRSVp/osbCrc4URu9Ok05vrcPslA9UW++qivFCcOJ/Zw== X-Received: by 10.107.31.15 with SMTP id f15mr6172206iof.18.1459297207073; Tue, 29 Mar 2016 17:20:07 -0700 (PDT) MIME-Version: 1.0 Received: by 10.36.10.137 with HTTP; Tue, 29 Mar 2016 17:19:27 -0700 (PDT) In-Reply-To: References: <1459269008978-4710022.post@n4.nabble.com> <56FABAB1.4030707@gmail.com> <1459277022731-4710030.post@n4.nabble.com> <56FAD75B.3090406@gmail.com> From: Paul Gale Date: Tue, 29 Mar 2016 20:19:27 -0400 Message-ID: Subject: Re: activemq-all jar tight coupling with log4j To: users@activemq.apache.org Content-Type: multipart/alternative; boundary=001a1141c73ca641d9052f391b3f --001a1141c73ca641d9052f391b3f Content-Type: text/plain; charset=UTF-8 The file log4j.properties in activemq-all was added on 2/12/15 (not sure what release of ActiveMQ that correlates to). That's the kicker. When we upgraded recently from 5.11.1 to 5.13.1 is when the problem became apparent. You can see why. It's a non-trivial exercise to coordinate multiple teams to switch their client-side jar to be something different. The schedules of those teams are out of our hands. If it was trivial this would be moot. Activemq-all was an uber jar at 5.11.1 and this was not an issue. I didn't think that requesting a log4j.properties file be removed would such a big ask in order to indulge the wider user community, compared to the narrower needs of the testing community. Given the great pain that's caused by making such a switch the consequences of this change could have been better publicized with the appropriate warning in the release notes stating THIS WILL BREAK YOU IN PROD - similar to how the recent security serialization bug was handled. You guys request feedback - we provided it. Ignore at will. On Tue, Mar 29, 2016 at 4:31 PM, Christopher Shannon < christopher.l.shannon@gmail.com> wrote: > Nothing has been changed so I don't know what you are referring to. That > log4j dependency has been included in that jar for a while, since > AMQ-3715. The main point of that jar file is it is an easy way to spin up > a broker for testing and it is supposed to contain concrete dependencies of > things so that it runs out of the box using a single jar file. > > Yes it is a legitimate way to connect to the broker but it doesn't mean > it's the best way. You are certainly welcome to use activemq-all however > you want but if you do you will get the default dependencies of everything > needed to run including the default versions of spring, camel, log4j, etc > that are included. Since it is an uber jar nothing can be customized and > that is the idea. I don't see any reason to change this as people have > been expecting this behavior for the past 4 years. > > In my opinion nothing needs to be done here because there is already a > solution. You can use individual jars, such as activemq-client, and with > transitive dependencies you can customize what you want in the classpath > very easily if you don't like it. For example, activemq-client jar > doesn't have a dependency on log4j (I just double checked) and only slf4j > so you are free to easily plug in whatever implementation of logging you > feel like. > > > > On Tue, Mar 29, 2016 at 3:51 PM, Paul Gale wrote: > > > Per the online documentation, using activemq-all is a legitimate way to > > connect to a broker. For those that were happily using it up until now, > > whether others consider it 'overkill' or not, they are now screwed by > this > > change. Regardless, stating that one can 'fine tune' dependencies by > > switching away from activemq-all is a poor justification for including a > > concrete dependency on log4j (or anything else one fancies) within > > activemq-all. Doing so prevents those users from using a logging > framework > > of their choice. > > > > Why not just remove the log4j dependency from activemq-all and keep the > > entire codebase logging agnostic, hence the purpose of slf4j? Why is a > > dependency on log4j needed outside of a testing context? > > > > Thanks, > > Paul > > > > On Tue, Mar 29, 2016 at 3:28 PM, Timothy Bish > wrote: > > > > > On 03/29/2016 02:43 PM, stak wrote: > > > > > >> So are you saying that activemq-all.jar is not a production grade jar > to > > >> be > > >> used as a client jar when they want to connect to an external activemq > > as > > >> a > > >> client?. Is the purpose of that jar really only for a quick unit test > > of > > >> sorts? > > >> > > >> > > >> > > >> -- > > >> View this message in context: > > >> > > > http://activemq.2283324.n4.nabble.com/activemq-all-jar-tight-coupling-with-log4j-tp4710022p4710030.html > > >> Sent from the ActiveMQ - User mailing list archive at Nabble.com. > > >> > > >> There are plenty of folks that use it in production. The all jar > > > contains not only client code but broker code, message store code and > > much > > > more, hence the 'all' moniker, which is very much overkill if you are > > using > > > it just for client purposes. You need to choose the best tool for the > > job > > > and the all jar is not always it. > > > > > > > > > -- > > > Tim Bish > > > twitter: @tabish121 > > > blog: http://timbish.blogspot.com/ > > > > > > > > > --001a1141c73ca641d9052f391b3f--