From dev-return-13385-apmail-karaf-dev-archive=karaf.apache.org@karaf.apache.org Fri Jan 18 10:32:06 2019 Return-Path: X-Original-To: apmail-karaf-dev-archive@minotaur.apache.org Delivered-To: apmail-karaf-dev-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 476531043F for ; Fri, 18 Jan 2019 10:32:06 +0000 (UTC) Received: (qmail 47854 invoked by uid 500); 18 Jan 2019 10:32:06 -0000 Delivered-To: apmail-karaf-dev-archive@karaf.apache.org Received: (qmail 47821 invoked by uid 500); 18 Jan 2019 10:32:06 -0000 Mailing-List: contact dev-help@karaf.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@karaf.apache.org Delivered-To: mailing list dev@karaf.apache.org Received: (qmail 47802 invoked by uid 99); 18 Jan 2019 10:32:05 -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; Fri, 18 Jan 2019 10:32:05 +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 C31BAC0568 for ; Fri, 18 Jan 2019 10:32:04 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd4-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -0.202 X-Spam-Level: X-Spam-Status: No, score=-0.202 tagged_above=-999 required=6.31 tests=[DKIMWL_WL_MED=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=disabled Authentication-Results: spamd4-us-west.apache.org (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com 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 yD8Ls-zJaiVI for ; Fri, 18 Jan 2019 10:32:02 +0000 (UTC) Received: from mail-qt1-f176.google.com (mail-qt1-f176.google.com [209.85.160.176]) by mx1-lw-eu.apache.org (ASF Mail Server at mx1-lw-eu.apache.org) with ESMTPS id 0480660F54 for ; Fri, 18 Jan 2019 10:32:02 +0000 (UTC) Received: by mail-qt1-f176.google.com with SMTP id p17so14633200qtl.5 for ; Fri, 18 Jan 2019 02:32:01 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :content-transfer-encoding; bh=GqjqnHfl1VByA7rt8xiZWxgzyCF8XdgFlGpMeXPJhCk=; b=Ko1UUeaaArc6lC7xDqV4OV49mD9mtJ5/lcqAfxMihjHweu7tqog31q4LQ9ikW6Tfx9 YdCRVIhJ8rY6LaY136Vw0sgd9PSA1SzaHNK3RAdKHOIJN6k2N4yocMHIP13bIFHrZ3Ba hkYIlr4EeyFPJQe1YCxtXJWkPAvA/i50A95g4CRpJNpjVgoAxv9RdzAMHXlSstB2TQRN fKg1XzpC/C/5ImptfLtM8FPR7Dsm9KjayCT7kmbauJhl4t5do7wb+eQJr4femktSZuNt cwR35Qzde/UwtOA0Qb3jz+aEz+/PQA5dCmprbFrkYKXPR2+r8jvQlAqQpz3BuXMR5hO6 avlg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:content-transfer-encoding; bh=GqjqnHfl1VByA7rt8xiZWxgzyCF8XdgFlGpMeXPJhCk=; b=OQmDyXSLtfUNFtK1ubbeV0UxkOHxvJ00iyi2p40dIXroNVYbuBGXvLb23mwhWtr6yF NdjpxQWhNChwKtVwAcEB0FCCN3TVaX4vJSju46NelFaTzS2shzRJFD2Mbr5zlloCDnOR xpdggbbpUw1yi49dqdZmOCLa+03jmtu2xPwORHtq9gJrS7c5o4WsIKCEASS5cIfzHiFJ HycLHgsihsadPfXOwN73+Hy0QKux+uES9EN4vHZGhFUzg3VkU1tgSLkzrcDNCt6aTjDf 0JUxpgkly9+AcHZG4PCcO3MlJpvDpx4qHKPEChRZvrju20OvOyfN9dJ9F7zngMLbR46U NfJA== X-Gm-Message-State: AJcUukfgqhwxW6UeohmTYMvKtp5YWYqM/pqjcnkbhpQ/RjTUQc2dl5XH B59vzsIORlWNpWXvW636/fjea/e7ZB0gW13hpuVbgg== X-Google-Smtp-Source: ALg8bN4d1QXVv+vsIB8vpo+fuZ6XypeJWiDUGCV/IbqKxPM5pmaM8zP6IsTimx/qNnLYG1D6DCaz2cVJlQOxG4P0Bxo= X-Received: by 2002:aed:3861:: with SMTP id j88mr382801qte.31.1547807514706; Fri, 18 Jan 2019 02:31:54 -0800 (PST) MIME-Version: 1.0 References: <162d9e32-1c0a-3f0e-b6c4-4e1810bb2068@nanthrax.net> <1655208d-a9ff-ba86-ea0b-81ce843897a3@nanthrax.net> In-Reply-To: From: Fabian Lange Date: Fri, 18 Jan 2019 11:31:43 +0100 Message-ID: Subject: Re: SCR Bundle refreshes Pax Logging? To: dev@karaf.apache.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable featuresBoot doesnt seem to work, listing in etc/startup.properties does hooray, this saves me about 10% of native memory eaten up by the duplicate classloading. On Fri, Jan 18, 2019 at 10:33 AM Grzegorz Grzybek wr= ote: > > Hello > > having commons-csv in etc/startup.properties is the best (for now) way to > resolve this unnecessary refresh problem (I did it many times with JBoss > Fuse). > > For pax-logging fix, I've created > https://ops4j1.jira.com/browse/PAXLOGGING-248 to track it. > > regards > Grzegorz Grzybek > > pt., 18 sty 2019 o 06:19 Jean-Baptiste Onofr=C3=A9 napi= sa=C5=82(a): > > > A simple hack is to actually install the bundle causing the refresh as > > boot feature or startup.properties. If the optional imports are already > > resolved/provided, the refresh won't happen. > > > > In your case, just install commons-csv (via startup.properties for > > instance). > > > > Regards > > JB > > > > On 17/01/2019 21:12, Fabian Lange wrote: > > > Is there a hack with which I can prevent the bundle from refreshing? = I > > > can of course monkeypatch the manifest :) > > > > > > Fabian > > > > > > On Thu, Jan 17, 2019 at 9:06 PM Jean-Baptiste Onofr=C3=A9 > > wrote: > > >> > > >> Yes, the purpose was to support extra appenders easily. > > >> > > >> An alternative to optional import would be to use fragment but it's = less > > >> flexible. A discover/locator service would be easier indeed. > > >> > > >> Regards > > >> JB > > >> > > >> On 17/01/2019 19:46, Grzegorz Grzybek wrote: > > >>> I understand. I don't remember (wasn't there when pax-logging was > > founded), > > >>> but it's about those exotic appenders you can use. > > >>> But in OSGi, it'd be probably better to rewrite/adjust the > > >>> discover/extensibility part in pax-logging-log4j2, to use our belov= ed > > TCCL > > >>> instead or kind of service discovery / locator. > > >>> > > >>> regards > > >>> Grzegorz Grzybek > > >>> > > >>> czw., 17 sty 2019 o 19:37 Fabian Lange > > napisa=C5=82(a): > > >>> > > >>>> I will have the same problem with jackson as well ;) > > >>>> > > >>>> pax-logging-log4j2 has really broad optional imports. probably for= the > > >>>> other formatters that can be plugged. > > >>>> > > >>>> thats really inconvenient in my case :( > > >>>> > > >>>> Fabian > > >>>> > > >>>> On Thu, Jan 17, 2019 at 7:08 PM Jean-Baptiste Onofr=C3=A9 > > > > >>>> wrote: > > >>>>> > > >>>>> Yeah, I don't remember why pax-logging-log4j2 has this import. > > >>>>> > > >>>>> Let me check where the package could be used. > > >>>>> > > >>>>> Regards > > >>>>> JB > > >>>>> > > >>>>> On 17/01/2019 18:42, Fabian Lange wrote: > > >>>>>> Well, that does look like a wrong dependency in pax-logging-log4= j2, > > >>>> doesnt it? > > >>>>>> or can a logic for that be found ;) > > >>>>>> > > >>>>>> Fabian > > >>>>>> > > >>>>>> On Thu, Jan 17, 2019 at 6:34 PM Grzegorz Grzybek < > > gr.grzybek@gmail.com> > > >>>> wrote: > > >>>>>>> > > >>>>>>> You don't have to find the source of WTF :) > > >>>>>>> > > >>>>>>> pax-logging-log4j2 has: Import-Package: > > >>>>>>> org.apache.commons.csv;resolution:=3Doptional > > >>>>>>> > > >>>>>>> regards > > >>>>>>> Grzegorz Grzybek > > >>>>>>> > > >>>>>>> czw., 17 sty 2019 o 17:07 Fabian Lange > > >>>> napisa=C5=82(a): > > >>>>>>> > > >>>>>>>> Hi, > > >>>>>>>> see its not a karaf problem. > > >>>>>>>> Grzegorz gave me really good hints off-list, and it turns out = I do > > >>>>>>>> load a feature which contains this apache commons bundle: > > >>>>>>>> > > >>>>>>>> mvn:org.apache.commons/commons-csv/1.5 > > >>>>>>>> > > >>>>>>>> after I remove this bundle, the logging classes are no longer > > loaded > > >>>> twice. > > >>>>>>>> Now the next step is to find out WTF, but I leave that for ano= ther > > >>>> day > > >>>>>>>> > > >>>>>>>> Fabian > > >>>>>>>> > > >>>>>>>> On Thu, Jan 17, 2019 at 3:49 PM Grzegorz Grzybek < > > >>>> gr.grzybek@gmail.com> > > >>>>>>>> wrote: > > >>>>>>>>> > > >>>>>>>>> Hello > > >>>>>>>>> > > >>>>>>>>> I suggest checking jansi - you have SL=3D8 for jansi bundle a= nd > > SL=3D7 > > >>>> for > > >>>>>>>>> pax-logging-log4j2. > > >>>>>>>>> > > >>>>>>>>> pax-logging-log4j has optional import for org.fusesource.jans= i - > > >>>> and this > > >>>>>>>>> may be the cause of refresh. > > >>>>>>>>> > > >>>>>>>>> In my custom distro, my etc/startup.properties has: > > >>>>>>>>> > > >>>>>>>>> mvn\:org.fusesource.jansi/jansi/1.17 =3D 8 > > >>>>>>>>> mvn\:org.ops4j.pax.logging/pax-logging-api/1.10.1 =3D 8 > > >>>>>>>>> mvn\:org.ops4j.pax.logging/pax-logging-log4j2/1.10.1 =3D 8 > > >>>>>>>>> > > >>>>>>>>> So I've already ensured that jansi starts/resolves before > > >>>>>>>>> pax-logging-log4j2. > > >>>>>>>>> > > >>>>>>>>> I hope this helps. > > >>>>>>>>> > > >>>>>>>>> regards > > >>>>>>>>> Grzegorz Grzybek > > >>>>>>>>> > > >>>>>>>>> czw., 17 sty 2019 o 15:15 Jean-Baptiste Onofr=C3=A9 > > >>>>>>>> napisa=C5=82(a): > > >>>>>>>>> > > >>>>>>>>>> Not a problem, Jira should be used when we "suspect" somethi= ng. > > I > > >>>> think > > >>>>>>>>>> it's good for the tracking and also for the history of faced > > >>>> problems. > > >>>>>>>>>> > > >>>>>>>>>> Just my =E2=82=AC0.01 ;) > > >>>>>>>>>> > > >>>>>>>>>> Regards > > >>>>>>>>>> JB > > >>>>>>>>>> > > >>>>>>>>>> On 17/01/2019 15:12, Fabian Lange wrote: > > >>>>>>>>>>> I already feel bad for asking such wide questions here. I > > usually > > >>>>>>>> only > > >>>>>>>>>>> file tickets once I kind-of know whats going on. > > >>>>>>>>>>> Could be a Felix or SCR issue as well ;) > > >>>>>>>>>>> > > >>>>>>>>>>> Fabian > > >>>>>>>>>>> > > >>>>>>>>>>> On Thu, Jan 17, 2019 at 3:10 PM Jean-Baptiste Onofr=C3=A9 < > > >>>>>>>> jb@nanthrax.net> > > >>>>>>>>>> wrote: > > >>>>>>>>>>>> > > >>>>>>>>>>>> Hi Fabian, > > >>>>>>>>>>>> > > >>>>>>>>>>>> did you create a Jira about that ? It's for the tracking a= s > > I'm > > >>>>>>>>>>>> preparing Karaf 4.2.3 ;) > > >>>>>>>>>>>> > > >>>>>>>>>>>> Thanks ! > > >>>>>>>>>>>> Regards > > >>>>>>>>>>>> JB > > >>>>>>>>>>>> > > >>>>>>>>>>>> On 17/01/2019 15:08, Fabian Lange wrote: > > >>>>>>>>>>>>> Quick update, this apparently is still the case with Kara= f > > 4.2.2 > > >>>>>>>>>>>>> > > >>>>>>>>>>>>> Would appreciate if somebody knows a workaround. I am abl= e to > > >>>> play > > >>>>>>>>>>>>> around with startlevels, but I cant seem to avoid this. > > >>>>>>>>>>>>> > > >>>>>>>>>>>>> Fabian > > >>>>>>>>>>>>> > > >>>>>>>>>>>>> On Mon, Nov 26, 2018 at 1:21 AM Fabian Lange < > > >>>>>>>> lange.fabian@gmail.com> > > >>>>>>>>>> wrote: > > >>>>>>>>>>>>>> > > >>>>>>>>>>>>>> Hi, > > >>>>>>>>>>>>>> currently debugging an issue. Maybe the bits I came up s= o > > far > > >>>> are > > >>>>>>>>>>>>>> already sufficient for you guys to fix it, or you help m= e > > how > > >>>> to > > >>>>>>>> debug > > >>>>>>>>>>>>>> this better. > > >>>>>>>>>>>>>> In our distribution, we have these features > > >>>>>>>>>>>>>> > > >>>>>>>>>>>>>> 0 =E2=94=82 Active =E2=94=82 0 =E2=94=82 5.6.10 = =E2=94=82 System Bundle, > > >>>> Fragments: 1 > > >>>>>>>>>>>>>> 1 =E2=94=82 Resolved =E2=94=82 1 =E2=94=82 4.2.1 = =E2=94=82 Apache Karaf :: > > Features > > >>>> :: > > >>>>>>>>>>>>>> Extension, Hosts: 0 > > >>>>>>>>>>>>>> 2 =E2=94=82 Active =E2=94=82 5 =E2=94=82 2.5.4 = =E2=94=82 OPS4J Pax Url - > > aether: > > >>>>>>>>>>>>>> 3 =E2=94=82 Active =E2=94=82 7 =E2=94=82 1.10.1 = =E2=94=82 OPS4J Pax Logging - > > >>>> Log4j v2 > > >>>>>>>>>>>>>> 4 =E2=94=82 Active =E2=94=82 7 =E2=94=82 1.10.1 = =E2=94=82 OPS4J Pax Logging - > > API > > >>>>>>>>>>>>>> 5 =E2=94=82 Active =E2=94=82 8 =E2=94=82 1.17.1 = =E2=94=82 jansi > > >>>>>>>>>>>>>> 6 =E2=94=82 Active =E2=94=82 9 =E2=94=82 1.0.2 = =E2=94=82 Apache Felix > > Coordinator > > >>>>>>>> Service > > >>>>>>>>>>>>>> 7 =E2=94=82 Active =E2=94=82 10 =E2=94=82 1.9.4 = =E2=94=82 Apache Felix > > >>>> Configuration > > >>>>>>>>>> Admin Service > > >>>>>>>>>>>>>> 8 =E2=94=82 Active =E2=94=82 11 =E2=94=82 3.6.4 = =E2=94=82 Apache Felix File > > Install > > >>>>>>>>>>>>>> 9 =E2=94=82 Active =E2=94=82 15 =E2=94=82 4.2.1 = =E2=94=82 Apache Karaf :: > > Features > > >>>> :: > > >>>>>>>> Core > > >>>>>>>>>>>>>> 10 =E2=94=82 Active =E2=94=82 20 =E2=94=82 2.2.11.1 = =E2=94=82 Apache ServiceMix :: > > >>>>>>>> Bundles :: > > >>>>>>>>>> jaxb-impl > > >>>>>>>>>>>>>> 11 =E2=94=82 Active =E2=94=82 30 =E2=94=82 1.2.0 = =E2=94=82 Apache Felix Metatype > > >>>>>>>> Service > > >>>>>>>>>>>>>> 12 =E2=94=82 Active =E2=94=82 30 =E2=94=82 2.1.2 = =E2=94=82 Apache Felix > > Declarative > > >>>>>>>>>> Services > > >>>>>>>>>>>>>> 13 =E2=94=82 Active =E2=94=82 30 =E2=94=82 4.2.1 = =E2=94=82 Apache Karaf :: > > Bundle :: > > >>>>>>>> Core > > >>>>>>>>>>>>>> 14 =E2=94=82 Active =E2=94=82 30 =E2=94=82 4.2.1 = =E2=94=82 Apache Karaf :: > > >>>> ConfigAdmin > > >>>>>>>> :: > > >>>>>>>>>> Core > > >>>>>>>>>>>>>> 15 =E2=94=82 Active =E2=94=82 30 =E2=94=82 4.2.1 = =E2=94=82 Apache Karaf :: > > Features > > >>>> :: > > >>>>>>>>>> Command > > >>>>>>>>>>>>>> 16 =E2=94=82 Active =E2=94=82 30 =E2=94=82 4.2.1 = =E2=94=82 Apache Karaf :: Log :: > > >>>> Core > > >>>>>>>>>>>>>> 17 =E2=94=82 Active =E2=94=82 30 =E2=94=82 4.2.1 = =E2=94=82 Apache Karaf :: SCR :: > > >>>>>>>> Bundle > > >>>>>>>>>> State > > >>>>>>>>>>>>>> 18 =E2=94=82 Active =E2=94=82 30 =E2=94=82 4.2.1 = =E2=94=82 Apache Karaf :: > > Service > > >>>> :: > > >>>>>>>> Core > > >>>>>>>>>>>>>> 19 =E2=94=82 Active =E2=94=82 30 =E2=94=82 4.2.1 = =E2=94=82 Apache Karaf :: Shell > > :: > > >>>>>>>>>> Various Commands > > >>>>>>>>>>>>>> 20 =E2=94=82 Active =E2=94=82 30 =E2=94=82 4.2.1 = =E2=94=82 Apache Karaf :: Shell > > :: > > >>>>>>>> Core > > >>>>>>>>>>>>>> 21 =E2=94=82 Active =E2=94=82 30 =E2=94=82 4.2.1 = =E2=94=82 Apache Karaf :: > > System :: > > >>>>>>>> Core > > >>>>>>>>>>>>>> 22 =E2=94=82 Active =E2=94=82 30 =E2=94=82 3.9.0 = =E2=94=82 JLine Builtins > > >>>>>>>>>>>>>> 23 =E2=94=82 Active =E2=94=82 30 =E2=94=82 3.9.0 = =E2=94=82 JLine Reader > > >>>>>>>>>>>>>> 24 =E2=94=82 Active =E2=94=82 30 =E2=94=82 3.9.0 = =E2=94=82 JLine Terminal, > > >>>> Fragments: > > >>>>>>>> 25 > > >>>>>>>>>>>>>> 25 =E2=94=82 Resolved =E2=94=82 30 =E2=94=82 3.9.0 = =E2=94=82 JLine JANSI Terminal, > > >>>>>>>> Hosts: 24 > > >>>>>>>>>>>>>> > > >>>>>>>>>>>>>> What I noticed is that A LOT of apache LOG4J classes are > > loaded > > >>>>>>>> twice > > >>>>>>>>>>>>>> in the JVM. > > >>>>>>>>>>>>>> I turned on -verbose:class and saw this snippet: > > >>>>>>>>>>>>>> > > >>>>>>>>>>>>>> [5.580s][info][class,load] > > >>>>>>>>>>>>>> org.apache.felix.scr.impl.logger.StdOutLogger source: > > >>>>>>>>>>>>>> jar:bundle://12.0:0/!/ > > >>>>>>>>>>>>>> [5.626s][info][class,load] > > >>>>>>>>>>>>>> org.apache.felix.framework.util.ImmutableMap$1 source: > > >>>>>>>>>>>>>> > > >>>>>>>>>> > > >>>>>>>> > > >>>> > > file:/Users/fabian/work/karaf-dist/system/org/apache/felix/org.apache.f= elix.framework/5.6.10/org.apache.felix.framework-5.6.10.jar > > >>>>>>>>>>>>>> [5.834s][info][class,load] > > >>>>>>>>>>>>>> > > >>>>>>>>>> > > >>>>>>>> > > >>>> > > org.apache.karaf.features.internal.service.BundleInstallSupportImpl$$La= mbda$412/0x00000007fecd0c40 > > >>>>>>>>>>>>>> source: > > >>>>>>>>>> > > org.apache.karaf.features.internal.service.BundleInstallSupportImpl > > >>>>>>>>>>>>>> [5.834s][info][class,load] > > >>>>>>>>>>>>>> org.apache.felix.framework.Felix$RefreshHelper source: > > >>>>>>>>>>>>>> > > >>>>>>>>>> > > >>>>>>>> > > >>>> > > file:/Users/fabian/work/karaf-dist/system/org/apache/felix/org.apache.f= elix.framework/5.6.10/org.apache.felix.framework-5.6.10.jar > > >>>>>>>>>>>>>> [5.970s][info][class,load] > > >>>>>>>>>>>>>> org.ops4j.pax.logging.log4j2.internal.Activator source: > > >>>>>>>>>>>>>> jar:bundle://3.0:0/!/ > > >>>>>>>>>>>>>> > > >>>>>>>>>>>>>> So here is my suspicion: Whatever SCR does, it causes th= e > > >>>> Log4j2 > > >>>>>>>>>>>>>> bundle to reload all classes and activate again. This le= ads > > to > > >>>> all > > >>>>>>>>>>>>>> bundles before the SCR to reference the first loaded log= 4j > > >>>>>>>> classes, > > >>>>>>>>>>>>>> and all afterwards the refreshed bundle. > > >>>>>>>>>>>>>> > > >>>>>>>>>>>>>> Can we prevent this somehow? Also curiously SCR uses its > > >>>>>>>> StdOutLogger, > > >>>>>>>>>>>>>> which it shouldnt do. > > >>>>>>>>>>>>>> Is this reload caused by the Service Tracker > > >>>>>>>>>>>>>> org.apache.felix.scr.impl.logger.LogServiceEnabledLogger > > uses? > > >>>>>>>>>>>>>> > > >>>>>>>>>>>>>> Ideas, suggestions how to prevent this refresh? I played > > with > > >>>> the > > >>>>>>>> load > > >>>>>>>>>>>>>> order but it does not seem possible to get it right > > >>>>>>>>>>>>>> > > >>>>>>>>>>>>>> Fabian > > >>>>>>>>>>>> > > >>>>>>>>>>>> -- > > >>>>>>>>>>>> Jean-Baptiste Onofr=C3=A9 > > >>>>>>>>>>>> jbonofre@apache.org > > >>>>>>>>>>>> http://blog.nanthrax.net > > >>>>>>>>>>>> Talend - http://www.talend.com > > >>>>>>>>>> > > >>>>>>>>>> -- > > >>>>>>>>>> Jean-Baptiste Onofr=C3=A9 > > >>>>>>>>>> jbonofre@apache.org > > >>>>>>>>>> http://blog.nanthrax.net > > >>>>>>>>>> Talend - http://www.talend.com > > >>>>>>>>>> > > >>>>>>>> > > >>>>> > > >>>>> -- > > >>>>> Jean-Baptiste Onofr=C3=A9 > > >>>>> jbonofre@apache.org > > >>>>> http://blog.nanthrax.net > > >>>>> Talend - http://www.talend.com > > >>>> > > >>> > > >> > > >> -- > > >> Jean-Baptiste Onofr=C3=A9 > > >> jbonofre@apache.org > > >> http://blog.nanthrax.net > > >> Talend - http://www.talend.com > > > > -- > > Jean-Baptiste Onofr=C3=A9 > > jbonofre@apache.org > > http://blog.nanthrax.net > > Talend - http://www.talend.com > >