RE: Debug job execution from savepoint

2018-06-22 Thread Haddadi Manuel
Great !

Thanks for your help. I think I will have all the functionalities I need for my 
use case with these test classes.

Regards,

Manuel


De : Chesnay Schepler 
Envoyé : vendredi 22 juin 2018 15:03:01
À : Haddadi Manuel
Cc : user@flink.apache.org
Objet : Re: Debug job execution from savepoint

Similarly, the AbstractOperatorRestoreTestBase shows how to start en embedded 
cluster and submit a job from a savepoint.
see
* #restoreJob
* #createJobGraph
* MiniClusterResource

On 22.06.2018 13:53, Tzu-Li (Gordon) Tai wrote:
Hi,

The tests in Flink uses a `AbstractStreamOperatorTestHarness` that allows 
wrapping an operator, input elements into the operator, getting the outputs, 
and also snapshotting / restoring operator state.
I’m not sure of your specific case, but in general that test harness utility 
can be used to test the operator’s output and state update logic for a given 
set of input records.

Cheers,
Gordon


On 22 June 2018 at 11:23:28 AM, Haddadi Manuel 
(manuel.hadd...@gfi.fr<mailto:manuel.hadd...@gfi.fr>) wrote:

Hi Fabian,


thanks for your response. Here is the Jira issue : 
https://issues.apache.org/jira/browse/FLINK-9644


Would you have any devlopper tips on how testing my intializeState methods to 
validate that my savepoints are corrects ?


Thank you again. Regards,


Manuel


De : Fabian Hueske <mailto:fhue...@gmail.com>
Envoyé : jeudi 21 juin 2018 10:33:10
À : Haddadi Manuel
Cc : user@flink.apache.org<mailto:user@flink.apache.org>
Objet : Re: Debug job execution from savepoint

Hi Manuel,

I had a look and couldn't find a way to do it.
However, this sounds like a very useful feature to me.

Would you mind creating a Jira issue [1] for that?

Thanks, Fabian

[1] https://issues.apache.org/jira/projects/FLINK

2018-06-18 16:23 GMT+02:00 Haddadi Manuel 
mailto:manuel.hadd...@gfi.fr>>:

Hi all,


I would like to test my checkpointing implementation doing a step-by-step 
debugging under an IDE.


Is there a way to restore a job from a local savepoint in a local stream 
environnement, like a command "flink run -s :savepontpath" would do ?


Thanks,


Manuel




RE: Debug job execution from savepoint

2018-06-22 Thread Haddadi Manuel
Hi Fabian,


thanks for your response. Here is the Jira issue : 
https://issues.apache.org/jira/browse/FLINK-9644


Would you have any devlopper tips on how testing my intializeState methods to 
validate that my savepoints are corrects ?


Thank you again. Regards,


Manuel


De : Fabian Hueske 
Envoyé : jeudi 21 juin 2018 10:33:10
À : Haddadi Manuel
Cc : user@flink.apache.org
Objet : Re: Debug job execution from savepoint

Hi Manuel,

I had a look and couldn't find a way to do it.
However, this sounds like a very useful feature to me.

Would you mind creating a Jira issue [1] for that?

Thanks, Fabian

[1] https://issues.apache.org/jira/projects/FLINK

2018-06-18 16:23 GMT+02:00 Haddadi Manuel 
mailto:manuel.hadd...@gfi.fr>>:

Hi all,


I would like to test my checkpointing implementation doing a step-by-step 
debugging under an IDE.


Is there a way to restore a job from a local savepoint in a local stream 
environnement, like a command "flink run -s :savepontpath" would do ?


Thanks,


Manuel



Debug job execution from savepoint

2018-06-18 Thread Haddadi Manuel
Hi all,


I would like to test my checkpointing implementation doing a step-by-step 
debugging under an IDE.


Is there a way to restore a job from a local savepoint in a local stream 
environnement, like a command "flink run -s :savepontpath" would do ?


Thanks,


Manuel


RE: Lucene SPI class loading fails with shaded flink-connector-elasticsearch

2018-03-23 Thread Haddadi Manuel
n files in META-INF/services from 
its dependencies, I guess this is the reason why on runtime the Lucene API 
tries to load some classes that are not in the classpath. I had confirmation of 
this intuition when I tried to exclude 
META-INF/services/org.apache.lucene.codecs.* files from 
flink-connector-elasticsearch5. The file 
org.apache.lucene.codecs.PostingsFormat of my jar did not lead to runtime 
exception anymore :

#  Licensed to the Apache Software Foundation (ASF) under one or more
#  contributor license agreements.  See the NOTICE file distributed with
#  this work for additional information regarding copyright ownership.
#  The ASF licenses this file to You under the Apache License, Version 2.0
#  (the "License"); you may not use this file except in compliance with
#  the License.  You may obtain a copy of the License at
#
#   http://www.apache.org/licenses/LICENSE-2.0
#
#  Unless required by applicable law or agreed to in writing, software
#  distributed under the License is distributed on an "AS IS" BASIS,
#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
#  See the License for the specific language governing permissions and
#  limitations under the License.

org.apache.lucene.codecs.lucene50.Lucene50PostingsFormat
#  Licensed to the Apache Software Foundation (ASF) under one or more
#  contributor license agreements.  See the NOTICE file distributed with
#  this work for additional information regarding copyright ownership.
#  The ASF licenses this file to You under the Apache License, Version 2.0
#  (the "License"); you may not use this file except in compliance with
#  the License.  You may obtain a copy of the License at
#
#   http://www.apache.org/licenses/LICENSE-2.0
#
#  Unless required by applicable law or agreed to in writing, software
#  distributed under the License is distributed on an "AS IS" BASIS,
#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
#  See the License for the specific language governing permissions and
#  limitations under the License.

org.apache.lucene.codecs.idversion.IDVersionPostingsFormat

I hope my explanation is clear enough. Don't hesitate to ask for more 
information if needed. I would be also be glad if you would point some 
misunderstanding from my part, or even misusages of Flink framework (maybe the 
fact we use a Lucene index as a micro-batch inside a Flink transformation).

Cheers,
Manuel




De : Tzu-Li (Gordon) Tai <tzuli...@apache.org>
Envoyé : vendredi 23 mars 2018 10:40:52
À : Till Rohrmann; Haddadi Manuel
Cc : flink-u...@apache.org
Objet : Re: Lucene SPI class loading fails with shaded 
flink-connector-elasticsearch

Hi Manuel,

Thanks a lot for reporting this!

Yes, this issue is most likely related to the recent changes to shading the 
Elasticsearch connector dependencies, though it is a bit curious why I didn’t 
bump into it before while testing it.

The Flink job runs Lucene queries on a data stream which ends up in an 
Elasticsearch index.

Could you explain a bit more where the Lucene queries are executed? Were there 
other dependencies required for this?

I would highly appreciate any opinion on this workaround. Could it have side 
effect ?

I think your workaround wouldn’t be harmful. Could you explain how you came to 
the solution? That would help me in getting to the bottom of the problem (and 
maybe other potential similar issues).

Cheers,
Gordon


On 23 March 2018 at 12:43:31 AM, Till Rohrmann 
(till.rohrm...@gmail.com<mailto:till.rohrm...@gmail.com>) wrote:

Hi Manuel,

thanks for reporting this issue. It sounds to me like a bug we should fix. I've 
pulled Gordon into the conversation since he will most likely know more about 
the ElasticSearch connector shading.

Cheers,
Till

On Thu, Mar 22, 2018 at 5:09 PM, Haddadi Manuel 
<manuel.hadd...@gfi.fr<mailto:manuel.hadd...@gfi.fr>> wrote:

Hello,

When upgrading from flink-1.3.2 to flink-1.4.2, I faced this error on runtime 
of a Flink job :

java.util.ServiceConfigurationError: An SPI class of type 
org.apache.lucene.codecs.PostingsFormat with classname 
org.apache.lucene.search.suggest.document.Completion50PostingsFormat does not 
exist, please fix the file 
'META-INF/services/org.apache.lucene.codecs.PostingsFormat' in your classpath.

I added lucene-suggest dependency and then I encountered this :
java.lang.ClassCastException: class 
org.elasticsearch.search.suggest.completion2x.Completion090PostingsFormat

The Flink job runs Lucene queries on a data stream which ends up in an 
Elasticsearch index.

It seems to me that this exception is a side effect of shading 
flink-connector-elasticsearch-5 dependencies. Actually, the only solution I 
have found is to re-build flink-connector-elasticsearch-5 jar excluding 
META-INF/services/org.apache.lucene.codecs.*

I would highly appreciate any opinion on this workaround. Could it have side 

Lucene SPI class loading fails with shaded flink-connector-elasticsearch

2018-03-22 Thread Haddadi Manuel
Hello,

When upgrading from flink-1.3.2 to flink-1.4.2, I faced this error on runtime 
of a Flink job :

java.util.ServiceConfigurationError: An SPI class of type 
org.apache.lucene.codecs.PostingsFormat with classname 
org.apache.lucene.search.suggest.document.Completion50PostingsFormat does not 
exist, please fix the file 
'META-INF/services/org.apache.lucene.codecs.PostingsFormat' in your classpath.

I added lucene-suggest dependency and then I encountered this :
java.lang.ClassCastException: class 
org.elasticsearch.search.suggest.completion2x.Completion090PostingsFormat

The Flink job runs Lucene queries on a data stream which ends up in an 
Elasticsearch index.

It seems to me that this exception is a side effect of shading 
flink-connector-elasticsearch-5 dependencies. Actually, the only solution I 
have found is to re-build flink-connector-elasticsearch-5 jar excluding 
META-INF/services/org.apache.lucene.codecs.*

I would highly appreciate any opinion on this workaround. Could it have side 
effect ?

Thanks. And by the way, congrats to all Flink contributors, this is a pretty 
good piece of technology !

Regards,

Manuel Haddadi