Hi,

I did some investigation: It is the following issue that breaks this:
https://bugs.openjdk.java.net/browse/JDK-8039214 "Inference should not map 
capture variables to their upper bounds"

This is the commit:
http://hg.openjdk.java.net/jdk9/dev/langtools/rev/414b82835861

The comments here actually say that there might be backwards breaks with 
existing code. BUT: The strange thing is that this only affect -source/target 
1.7, not for newer code. So this breaks only Java 7 backwards compilation! This 
looks like a regression in the JDK7 specific backwards compiler which seems to 
handle the types in a wrong way. Maybe some of the changes in this commit have 
to also be applied to the backwards compiler for Java 1.7 code (I have no idea 
if there is a separate instance of the 1.7 compiler in the code base, just a 
guess). 

To me it looks really wrong what is happening here for diamonds and such static 
wrapper methods like Collections.unmodifiable*()!

In fact, both bugs are the same, so I think it's safe to append my second test 
case to the already existing issue as well.

Uwe

-----
Uwe Schindler
H.-H.-Meier-Allee 63, D-28213 Bremen
http://www.thetaphi.de
eMail: u...@thetaphi.de


> -----Original Message-----
> From: Uwe Schindler [mailto:u...@thetaphi.de]
> Sent: Tuesday, March 24, 2015 2:39 PM
> To: 'dalibor topic'; dev@lucene.apache.org; 'Balchandra Vaidya'; 'Rory
> O'Donnell'
> Cc: rcm...@gmail.com
> Subject: RE: [JENKINS] Lucene-Solr-5.x-Linux (32bit/jdk1.9.0-ea-b54) - Build #
> 11848 - Failure!
> 
> Hi,
> 
> I can file another bug, but the behavior and error pattern is exactly the 
> same,
> it is just a static method instead of the constructor (which is mostly the 
> same
> by the JLS, a constructor is just like a static method returning an 
> instance). So
> I am almost 100% sure, this is caused by the exact same commit.
> 
> I also simplified the code to be as simple as the other one. I found out that
> Collections.unmodifiableCollection(...) is affected by this, so simplest
> reproduce code is:
> 
> import java.util.*;
> 
> class Bug2 {
>   // this causes the bug -> type is inferred by parameter not left side
> assignment
>   static <V> void bug(Collection<? extends V> collection) {
>     Collection<V> c1 = Collections.unmodifiableCollection(collection);
>     // workaround that compiles:
>     Collection<V> c2 = Collections.<V>unmodifiableCollection(collection);
>   }
> }
> 
> So it's up to you to decide, if it is really a new bug. Maybe we should leave
> the decision to the JDK developer who caused the regression to find out if
> it’s a duplicate or not.
> 
> Uwe
> 
> -----
> Uwe Schindler
> H.-H.-Meier-Allee 63, D-28213 Bremen
> http://www.thetaphi.de
> eMail: u...@thetaphi.de
> 
> 
> > -----Original Message-----
> > From: dalibor topic [mailto:dalibor.to...@oracle.com]
> > Sent: Tuesday, March 24, 2015 2:16 PM
> > To: Uwe Schindler; dev@lucene.apache.org; 'Balchandra Vaidya'; 'Rory
> > O'Donnell'
> > Cc: rcm...@gmail.com
> > Subject: Re: [JENKINS] Lucene-Solr-5.x-Linux (32bit/jdk1.9.0-ea-b54) -
> > Build #
> > 11848 - Failure!
> >
> > I think this one should be filed as a separate issue.
> >
> > On 24.03.2015 14:07, Uwe Schindler wrote:
> > > Hi,
> > >
> > > could you please attach the given Bug2.java file to the same issue?
> > > This is
> > another variant of the same bug that affects simple method calls
> > (without diamond), so it is not only the constructor with diamond
> > affected. You have to infer the type for those "wrapper" methods, too.
> > >
> > > The following code does not compile with -source/target 1.7:
> > >
> > > import java.util.*;
> > >
> > > class Bug2 {
> > >    /* This method just emulates the common Google Guava/Guice
> > > pattern
> > to wrap collections, e.g.
> > >     * <http://docs.guava-
> > libraries.googlecode.com/git/javadoc/com/google/common/collect/Iterato
> > rs .html#peekingIterator(java.util.Iterator)>
> > >     */
> > >    static <V> Set<V> asSet(Collection<? extends V> collection) {
> > >      return new HashSet<V>(collection);
> > >    }
> > >
> > >    // this causes the bug -> type is inferred by parameter not left
> > > side
> > assignment
> > >    static <V> void bug(Collection<? extends V> collection) {
> > >      Set<V> set1 = Bug2.asSet(collection);
> > >      // workaround that compiles:
> > >      Set<V> set2 = Bug2.<V>asSet(collection);
> > >    }
> > > }
> > >
> > > $ javac -source 1.7 -target 1.7 Bug2.java
> > > warning: [options] bootstrap class path not set in conjunction with
> > > -source 1.7
> > > Bug2.java:12: error: incompatible types: Set<CAP#1> cannot be
> > > converted
> > to Set<V>
> > >      Set<V> set = Bug2.asSet(collection);
> > >                             ^
> > >    where V is a type-variable:
> > >      V extends Object declared in method <V>bug(Collection<? extends
> V>)
> > >    where CAP#1 is a fresh type-variable:
> > >      CAP#1 extends V from capture of ? extends V
> > > 1 error
> > > 1 warning
> > >
> > > This type was discovered by the elasticsearch people, who use a lot
> > > of code
> > of Google Guava/Guice that has a lot of static methods that wrap
> > collections and return views of a different type.
> > > Usage of most of the Methods in e.g.
> > > com.google.common.collect.Iterators
> > or com.google.common.collect.Lists and similars are affected by this
> > bug, so it's really serious!
> > >
> > > To work around the bug you can do whats written in the example code:
> > Just infer the generics using the <T> between static class name and
> > method name [like the common pattern Arrays.<String>asList (....)].
> > >
> > > -----
> > > Uwe Schindler
> > > H.-H.-Meier-Allee 63, D-28213 Bremen http://www.thetaphi.de
> > > eMail: u...@thetaphi.de
> > >
> > >
> > >> -----Original Message-----
> > >> From: Uwe Schindler [mailto:u...@thetaphi.de]
> > >> Sent: Tuesday, March 24, 2015 10:05 AM
> > >> To: 'Balchandra Vaidya'; 'Rory O'Donnell'; dev@lucene.apache.org
> > >> Cc: 'Dalibor Topic'; rcm...@gmail.com
> > >> Subject: RE: [JENKINS] Lucene-Solr-5.x-Linux (32bit/jdk1.9.0-ea-b54)
> > >> - Build #
> > >> 11848 - Failure!
> > >>
> > >> Hi,
> > >>
> > >> Many thanks! I CCed Robert Muir from Elasticsearch who took care of
> > >> this at ES (https://github.com/elastic/elasticsearch/issues/10145).
> > >>
> > >> Uwe
> > >>
> > >> -----
> > >> Uwe Schindler
> > >> H.-H.-Meier-Allee 63, D-28213 Bremen
> > >> http://www.thetaphi.de
> > >> eMail: u...@thetaphi.de
> > >>
> > >>
> > >>> -----Original Message-----
> > >>> From: Balchandra Vaidya [mailto:balchandra.vai...@oracle.com]
> > >>> Sent: Tuesday, March 24, 2015 8:27 AM
> > >>> To: Uwe Schindler; 'Rory O'Donnell'; dev@lucene.apache.org
> > >>> Cc: 'Dalibor Topic'
> > >>> Subject: Re: [JENKINS] Lucene-Solr-5.x-Linux (32bit/jdk1.9.0-ea-b54)
> > >>> - Build #
> > >>> 11848 - Failure!
> > >>>
> > >>>
> > >>> Hi Uwe,
> > >>>
> > >>> JBS bug id is https://bugs.openjdk.java.net/browse/JDK-8075793
> > >>>
> > >>> Thanks
> > >>> Balchandra
> > >>>
> > >>> On 3/24/2015 5:57 AM, Uwe Schindler wrote:
> > >>>> Hi Rory,
> > >>>>
> > >>>> do you have an update on this bug?  Searched for it in the openjdk
> > >>> bugtracker but did not find it. This also affects lots of code from
> > >>> Google Guava / Guice and because of that also our friends at
> > Elasticsearch.
> > >>>>
> > >>>> Uwe
> > >>>>
> > >>>> -----
> > >>>> Uwe Schindler
> > >>>> H.-H.-Meier-Allee 63, D-28213 Bremen http://www.thetaphi.de
> > >>>> eMail: u...@thetaphi.de
> > >>>>
> > >>>>
> > >>>>> -----Original Message-----
> > >>>>> From: Rory O'Donnell [mailto:rory.odonn...@oracle.com]
> > >>>>> Sent: Friday, March 20, 2015 10:00 AM
> > >>>>> To: Uwe Schindler; dev@lucene.apache.org
> > >>>>> Cc: rory.odonn...@oracle.com; 'Dalibor Topic'; 'Balchandra Vaidya'
> > >>>>> Subject: Re: [JENKINS] Lucene-Solr-5.x-Linux
> > >>>>> (32bit/jdk1.9.0-ea-b54)
> > >>>>> - Build #
> > >>>>> 11848 - Failure!
> > >>>>>
> > >>>>> Thanks Uwe, we will update you with the bug id .
> > >>>>>
> > >>>>> Rgds,Rory
> > >>>>> On 19/03/2015 16:28, Uwe Schindler wrote:
> > >>>>>> Hi,
> > >>>>>>
> > >>>>>> I opened Review ID: JI-9019884 "Java 9 b54 breaks compiling code
> > >>>>>> with
> > >>>>> source/target 1.7 and diamond operator"
> > >>>>>> Uwe
> > >>>>>>
> > >>>>>> -----
> > >>>>>> Uwe Schindler
> > >>>>>> H.-H.-Meier-Allee 63, D-28213 Bremen http://www.thetaphi.de
> > >>>>>> eMail: u...@thetaphi.de
> > >>>>>>
> > >>>>>>
> > >>>>>>> -----Original Message-----
> > >>>>>>> From: Rory O'Donnell [mailto:rory.odonn...@oracle.com]
> > >>>>>>> Sent: Thursday, March 19, 2015 4:12 PM
> > >>>>>>> To: Uwe Schindler; dev@lucene.apache.org
> > >>>>>>> Cc: rory.odonn...@oracle.com; Dalibor Topic; Balchandra Vaidya
> > >>>>>>> Subject: Re: [JENKINS] Lucene-Solr-5.x-Linux
> > >>>>>>> (32bit/jdk1.9.0-ea-b54)
> > >>>>>>> - Build #
> > >>>>>>> 11848 - Failure!
> > >>>>>>>
> > >>>>>>>
> > >>>>>>> On 19/03/2015 14:30, Uwe Schindler wrote:
> > >>>>>>>> Hi,
> > >>>>>>>>
> > >>>>>>>> this seems to be a bug (or feature?) in the most recent Java 9
> > >>>>>>>> build
> > >> 54:
> > >>>>>>>>
> > >>>>>>>> compile-core:
> > >>>>>>>>         [mkdir] Created dir:
> > >>>>>>>> /home/jenkins/workspace/Lucene-Solr-5.x-
> > >>>>>>> Linux/lucene/build/analysis/common/classes/java
> > >>>>>>>>         [javac] Compiling 461 source files to
> > >>>>>>>> /home/jenkins/workspace/Lucene-
> > >>>>>>> Solr-5.x-Linux/lucene/build/analysis/common/classes/java
> > >>>>>>>>         [javac] /home/jenkins/workspace/Lucene-Solr-5.x-
> > >>>>>>>
> > >>>
> > Linux/lucene/analysis/common/src/java/org/apache/lucene/analysis/uti
> > >>> l
> > >>>>>>> /Ch
> > >>>>>>> arArrayMap.java:568: error: incompatible types:
> > >>> CharArrayMap<CAP#1>
> > >>>>>>> cannot be converted to CharArrayMap<V>
> > >>>>>>>>         [javac]     return new CharArrayMap<>(map, false);
> > >>>>>>>>         [javac]            ^
> > >>>>>>>>         [javac]   where V is a type-variable:
> > >>>>>>>>         [javac]     V extends Object declared in method
> > >> <V>copy(Map<?,?
> > >>>>>>> extends V>)
> > >>>>>>>>         [javac]   where CAP#1 is a fresh type-variable:
> > >>>>>>>>         [javac]     CAP#1 extends V from capture of ? extends V
> > >>>>>>>>
> > >>>>>>>> This is the code:
> > >>>>>>>>
> > >>>>>>>>       @SuppressWarnings("unchecked")
> > >>>>>>>>       public static <V> CharArrayMap<V> copy(final Map<?,?
> > >>>>>>>> extends
> > >> V>
> > >>>>>>>> map)
> > >>>>>>> {
> > >>>>>>>>         if(map == EMPTY_MAP)
> > >>>>>>>>           return emptyMap();
> > >>>>>>>>         if(map instanceof CharArrayMap) {
> > >>>>>>>>           CharArrayMap<V> m = (CharArrayMap<V>) map;
> > >>>>>>>>           // use fast path instead of iterating all values
> > >>>>>>>>           // this is even on very small sets ~10 times faster than
> > iterating
> > >>>>>>>>           final char[][] keys = new char[m.keys.length][];
> > >>>>>>>>           System.arraycopy(m.keys, 0, keys, 0, keys.length);
> > >>>>>>>>           final V[] values = (V[]) new Object[m.values.length];
> > >>>>>>>>           System.arraycopy(m.values, 0, values, 0, values.length);
> > >>>>>>>>           m = new CharArrayMap<>(m);
> > >>>>>>>>           m.keys = keys;
> > >>>>>>>>           m.values = values;
> > >>>>>>>>           return m;
> > >>>>>>>>         }
> > >>>>>>>>         return new CharArrayMap<>(map, false);
> > >>>>>>>>       }
> > >>>>>>>>
> > >>>>>>>> At least this breaks compiling existing code. Rory, should I
> > >>>>>>>> open a bug
> > >>>>>>> report with an example code?
> > >>>>>>> Hi Uwe,
> > >>>>>>>
> > >>>>>>> Please do log a bug.
> > >>>>>>>
> > >>>>>>> Rgds,Rory
> > >>>>>>>> Uwe
> > >>>>>>>>
> > >>>>>>>> -----
> > >>>>>>>> Uwe Schindler
> > >>>>>>>> H.-H.-Meier-Allee 63, D-28213 Bremen http://www.thetaphi.de
> > >>>>>>>> eMail: u...@thetaphi.de
> > >>>>>>>>
> > >>>>>>>>
> > >>>>>>>>> -----Original Message-----
> > >>>>>>>>> From: Policeman Jenkins Server [mailto:jenk...@thetaphi.de]
> > >>>>>>>>> Sent: Thursday, March 19, 2015 1:15 PM
> > >>>>>>>>> To: dev@lucene.apache.org
> > >>>>>>>>> Subject: [JENKINS] Lucene-Solr-5.x-Linux
> > >>>>>>>>> (32bit/jdk1.9.0-ea-b54) - Build #
> > >>>>>>>>> 11848 - Failure!
> > >>>>>>>>>
> > >>>>>>>>> Build: http://jenkins.thetaphi.de/job/Lucene-Solr-5.x-
> > >> Linux/11848/
> > >>>>>>>>> Java: 32bit/jdk1.9.0-ea-b54 -server -
> XX:+UseConcMarkSweepGC
> > >>>>>>>>>
> > >>>>>>>>> All tests passed
> > >>>>>>>>>
> > >>>>>>>>> Build Log:
> > >>>>>>>>> [...truncated 1899 lines...]
> > >>>>>>>>>         [javac] Compiling 461 source files to
> > >>>>>>>>> /home/jenkins/workspace/Lucene- Solr-5.x-
> > >>>>>>> Linux/lucene/build/analysis/common/classes/java
> > >>>>>>>>>         [javac] /home/jenkins/workspace/Lucene-Solr-5.x-
> > >>>>>>>>>
> > >>>>>
> > >>
> Linux/lucene/analysis/common/src/java/org/apache/lucene/analysis/util
> > >>>>>>>>> /Ch
> > >>>>>>>>> arArrayMap.java:568: error: incompatible types:
> > >>>>> CharArrayMap<CAP#1>
> > >>>>>>>>> cannot be converted to CharArrayMap<V>
> > >>>>>>>>>         [javac]     return new CharArrayMap<>(map, false);
> > >>>>>>>>>         [javac]            ^
> > >>>>>>>>>         [javac]   where V is a type-variable:
> > >>>>>>>>>         [javac]     V extends Object declared in method
> > >>> <V>copy(Map<?,?
> > >>>>>>> extends
> > >>>>>>>>> V>)
> > >>>>>>>>>         [javac]   where CAP#1 is a fresh type-variable:
> > >>>>>>>>>         [javac]     CAP#1 extends V from capture of ? extends V
> > >>>>>>>>>         [javac] /home/jenkins/workspace/Lucene-Solr-5.x-
> > >>>>>>>>>
> > >>>>>
> > >>>
> > Linux/lucene/analysis/common/src/java/org/apache/lucene/analysis/hun
> > >>> s
> > >>>>>>>>> p
> > >>>>>>>>> ell/Stemmer.java:270: warning: [rawtypes] found raw type:
> Arc
> > >>>>>>>>>         [javac]   final FST.Arc<IntsRef> prefixArcs[] = new
> FST.Arc[3];
> > >>>>>>>>>         [javac]                                                ^
> > >>>>>>>>>         [javac]   missing type arguments for generic class Arc<T>
> > >>>>>>>>>         [javac]   where T is a type-variable:
> > >>>>>>>>>         [javac]     T extends Object declared in class Arc
> > >>>>>>>>>         [javac] /home/jenkins/workspace/Lucene-Solr-5.x-
> > >>>>>>>>>
> > >>>>>
> > >>>
> > Linux/lucene/analysis/common/src/java/org/apache/lucene/analysis/hun
> > >>> s
> > >>>>>>>>> p
> > >>>>>>>>> ell/Stemmer.java:274: warning: [rawtypes] found raw type:
> Arc
> > >>>>>>>>>         [javac]   final FST.Arc<IntsRef> suffixArcs[] = new
> FST.Arc[3];
> > >>>>>>>>>         [javac]                                                ^
> > >>>>>>>>>         [javac]   missing type arguments for generic class Arc<T>
> > >>>>>>>>>         [javac]   where T is a type-variable:
> > >>>>>>>>>         [javac]     T extends Object declared in class Arc
> > >>>>>>>>>         [javac] /home/jenkins/workspace/Lucene-Solr-5.x-
> > >>>>>>>>>
> > >>>>>
> > >>>
> > >>
> >
> Linux/lucene/analysis/common/src/java/org/tartarus/snowball/Among.java:
> > >>>>>>>>> 46: warning: [rawtypes] found raw type: Class
> > >>>>>>>>>         [javac]   private static final Class<?>[] EMPTY_PARAMS =
> new
> > >>>>> Class[0];
> > >>>>>>>>>         [javac]                                                   
> > >>>>>>>>>    ^
> > >>>>>>>>>         [javac]   missing type arguments for generic class 
> > >>>>>>>>> Class<T>
> > >>>>>>>>>         [javac]   where T is a type-variable:
> > >>>>>>>>>         [javac]     T extends Object declared in class Class
> > >>>>>>>>>         [javac] Note: Some input files use or override a
> > >>>>>>>>> deprecated
> > >> API.
> > >>>>>>>>>         [javac] Note: Recompile with -Xlint:deprecation for 
> > >>>>>>>>> details.
> > >>>>>>>>>         [javac] 1 error
> > >>>>>>>>>
> > >>>>>>>>> [...truncated 1 lines...]
> > >>>>>>>>> BUILD FAILED
> > >>>>>>>>> /home/jenkins/workspace/Lucene-Solr-5.x-
> Linux/build.xml:529:
> > >> The
> > >>>>>>>>> following error occurred while executing this line:
> > >>>>>>>>> /home/jenkins/workspace/Lucene-Solr-5.x-
> Linux/build.xml:477:
> > >> The
> > >>>>>>>>> following error occurred while executing this line:
> > >>>>>>>>> /home/jenkins/workspace/Lucene-Solr-5.x-
> Linux/build.xml:61:
> > >> The
> > >>>>>>>>> following error occurred while executing this line:
> > >>>>>>>>> /home/jenkins/workspace/Lucene-Solr-5.x-Linux/extra-
> > >>>>> targets.xml:39:
> > >>>>>>>>> The following error occurred while executing this line:
> > >>>>>>>>> /home/jenkins/workspace/Lucene-Solr-5.x-
> > >>>>> Linux/lucene/build.xml:456:
> > >>>>>>>>> The following error occurred while executing this line:
> > >>>>>>>>> /home/jenkins/workspace/Lucene-Solr-5.x-
> > >> Linux/lucene/common-
> > >>>>>>>>> build.xml:2166: The following error occurred while executing
> > >>>>>>>>> this
> > >>> line:
> > >>>>>>>>> /home/jenkins/workspace/Lucene-Solr-5.x-
> > >>>>>>>>> Linux/lucene/analysis/build.xml:106: The following error
> > >>>>>>>>> occurred while executing this line:
> > >>>>>>>>> /home/jenkins/workspace/Lucene-Solr-5.x-
> > >>>>>>>>> Linux/lucene/analysis/build.xml:38: The following error
> > >>>>>>>>> occurred while executing this line:
> > >>>>>>>>> /home/jenkins/workspace/Lucene-Solr-5.x-
> > Linux/lucene/module-
> > >>>>>>>>> build.xml:58: The following error occurred while executing this
> > line:
> > >>>>>>>>> /home/jenkins/workspace/Lucene-Solr-5.x-
> > Linux/lucene/module-
> > >>>>>>>>> build.xml:55: The following error occurred while executing this
> > line:
> > >>>>>>>>> /home/jenkins/workspace/Lucene-Solr-5.x-
> > >> Linux/lucene/common-
> > >>>>>>>>> build.xml:520: The following error occurred while executing
> > >>>>>>>>> this
> > >> line:
> > >>>>>>>>> /home/jenkins/workspace/Lucene-Solr-5.x-
> > >> Linux/lucene/common-
> > >>>>>>>>> build.xml:1882: Compile failed; see the compiler error output
> > >>>>>>>>> for
> > >>>>> details.
> > >>>>>>>>> Total time: 15 minutes 25 seconds Build step 'Invoke Ant'
> > >>>>>>>>> marked build as failure [description-setter] Description set:
> > >>>>>>>>> Java: 32bit/jdk1.9.0-ea-b54 -server -
> > XX:+UseConcMarkSweepGC
> > >>>>>>>>> Archiving artifacts Recording test
> > >>> results
> > >>>>>>>>> Email was triggered for: Failure - Any Sending email for trigger:
> > >>>>>>>>> Failure - Any
> > >>>>>>>>>
> > >>>>>>> --
> > >>>>>>> Rgds,Rory O'Donnell
> > >>>>>>> Quality Engineering Manager
> > >>>>>>> Oracle EMEA , Dublin, Ireland
> > >>>>>>>
> > >>>>>>>
> > >>>>>>> ----------------------------------------------------------------
> > >>>>>>> ----- To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
> > >>>>>>> For additional commands, e-mail: dev-h...@lucene.apache.org
> > >>>>> --
> > >>>>> Rgds,Rory O'Donnell
> > >>>>> Quality Engineering Manager
> > >>>>> Oracle EMEA , Dublin, Ireland
> > >>
> > >>
> > >> ---------------------------------------------------------------------
> > >> To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For
> > >> additional commands, e-mail: dev-h...@lucene.apache.org
> >
> > --
> > <http://www.oracle.com> Dalibor Topic | Principal Product Manager
> > Phone: +494089091214 <tel:+494089091214> | Mobile: +491737185961
> > <tel:+491737185961>
> >
> > ORACLE Deutschland B.V. & Co. KG | Kühnehöfe 5 | 22761 Hamburg
> >
> > ORACLE Deutschland B.V. & Co. KG
> > Hauptverwaltung: Riesstr. 25, D-80992 München
> > Registergericht: Amtsgericht München, HRA 95603
> > Geschäftsführer: Jürgen Kunz
> >
> > Komplementärin: ORACLE Deutschland Verwaltung B.V.
> > Hertogswetering 163/167, 3543 AS Utrecht, Niederlande Handelsregister
> der
> > Handelskammer Midden-Niederlande, Nr. 30143697
> > Geschäftsführer: Alexander van der Ven, Astrid Kepper, Val Maher
> >
> > <http://www.oracle.com/commitment> Oracle is committed to developing
> > practices and products that help protect the environment


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org

Reply via email to