Ignite "bugs" ?

classic Classic list List threaded Threaded
14 messages Options
yann.blazart@externe.bnpparibas.com yann.blazart@externe.bnpparibas.com
Reply | Threaded
Open this post in threaded view
|

Ignite "bugs" ?

Hello everybody.

 

I’m currently evaluation Ignite vs Hazelcast on a poc.

 

I’m facing some issues.

I’m coding some integration/unit test using the ApplicationComposer of TomEE 7.0.0. I have no problem with Hazelcast on it.

 

·         The first one is when I’m start Ignite in the applicationComposer (with a CDI @Produces), Ignite complain about some System.properties that are not String :

 

it try to "serialize" System.properties by using System.getProperties().store(new PrintWriter(sw));

 

In fact, TomEE (as other framework like hibernate) use System.properties to store prop objects.

 

So I made something to remove this properties before Ignite start and recover its after. Well. Pehraps it will be nice to change the way to “serialize” System.properties.

 

·         The second problem is strange, very strange. If I’m making a call to Ignite.start in @Before or using a @Inject in the test class (that use the @Produce that make the call to start(), everything is ok. But if the start is called in the @Test method (so after ApplicationComposer has made some things), Ignite is “locked”.

o   Precisely in IgniteKernel.java:917  :

 

// Start discovery manager last to make sure that grid is fully initialized.
startManager(discoMgr);

               

                The call to  this method never exit.

 

Any idea to help me to understand ? Anybody has tried to use Ignite with EE or CDI ?

 

Regards

 

 

 

This message and any attachments (the "message") is
intended solely for the intended addressees and is confidential.
If you receive this message in error,or are not the intended recipient(s),
please delete it and any copies from your systems and immediately notify
the sender. Any unauthorized view, use that does not comply with its purpose,
dissemination or disclosure, either whole or partial, is prohibited. Since the internet
cannot guarantee the integrity of this message which may not be reliable, BNP PARIBAS
(and its subsidiaries) shall not be liable for the message if modified, changed or falsified.
Do not print this message unless it is necessary,consider the environment.

----------------------------------------------------------------------------------------------------------------------------------

Ce message et toutes les pieces jointes (ci-apres le "message")
sont etablis a l'intention exclusive de ses destinataires et sont confidentiels.
Si vous recevez ce message par erreur ou s'il ne vous est pas destine,
merci de le detruire ainsi que toute copie de votre systeme et d'en avertir
immediatement l'expediteur. Toute lecture non autorisee, toute utilisation de
ce message qui n'est pas conforme a sa destination, toute diffusion ou toute
publication, totale ou partielle, est interdite. L'Internet ne permettant pas d'assurer
l'integrite de ce message electronique susceptible d'alteration, BNP Paribas
(et ses filiales) decline(nt) toute responsabilite au titre de ce message dans l'hypothese
ou il aurait ete modifie, deforme ou falsifie.
N'imprimez ce message que si necessaire, pensez a l'environnement.

Matt Hoffman Matt Hoffman
Reply | Threaded
Open this post in threaded view
|

Re: Ignite "bugs" ?

Using System.properties() to store non-strings is really poor behavior. It violates the contract of the System.setProperty and System.getProperty, as well as the contract of the Properties object itself, from right at the top of the javadoc:  "Each key and its corresponding value in the property list is a string."  
I've hit something like that in Hibernate before, years ago; I'm surprised they haven't fixed it yet. It's a long-standing bug in Hibernate. Not to say Ignite shouldn't have a workaround for badly-behaved libraries that do things like that, but it's definitely a Hibernate bug.  

Someone else will have to talk the locking behavior you're seeing. Are you starting Ignite more than once in parallel in that case? 

On Wed, Jan 13, 2016 at 8:23 AM, Yann BLAZART <[hidden email]> wrote:

Hello everybody.

 

I’m currently evaluation Ignite vs Hazelcast on a poc.

 

I’m facing some issues.

I’m coding some integration/unit test using the ApplicationComposer of TomEE 7.0.0. I have no problem with Hazelcast on it.

 

·         The first one is when I’m start Ignite in the applicationComposer (with a CDI @Produces), Ignite complain about some System.properties that are not String :

 

it try to "serialize" System.properties by using System.getProperties().store(new PrintWriter(sw));

 

In fact, TomEE (as other framework like hibernate) use System.properties to store prop objects.

 

So I made something to remove this properties before Ignite start and recover its after. Well. Pehraps it will be nice to change the way to “serialize” System.properties.

 

·         The second problem is strange, very strange. If I’m making a call to Ignite.start in @Before or using a @Inject in the test class (that use the @Produce that make the call to start(), everything is ok. But if the start is called in the @Test method (so after ApplicationComposer has made some things), Ignite is “locked”.

o   Precisely in IgniteKernel.java:917  :

 

// Start discovery manager last to make sure that grid is fully initialized.
startManager(discoMgr);

               

                The call to  this method never exit.

 

Any idea to help me to understand ? Anybody has tried to use Ignite with EE or CDI ?

 

Regards

 

 

 

This message and any attachments (the "message") is
intended solely for the intended addressees and is confidential.
If you receive this message in error,or are not the intended recipient(s),
please delete it and any copies from your systems and immediately notify
the sender. Any unauthorized view, use that does not comply with its purpose,
dissemination or disclosure, either whole or partial, is prohibited. Since the internet
cannot guarantee the integrity of this message which may not be reliable, BNP PARIBAS
(and its subsidiaries) shall not be liable for the message if modified, changed or falsified.
Do not print this message unless it is necessary,consider the environment.

----------------------------------------------------------------------------------------------------------------------------------

Ce message et toutes les pieces jointes (ci-apres le "message")
sont etablis a l'intention exclusive de ses destinataires et sont confidentiels.
Si vous recevez ce message par erreur ou s'il ne vous est pas destine,
merci de le detruire ainsi que toute copie de votre systeme et d'en avertir
immediatement l'expediteur. Toute lecture non autorisee, toute utilisation de
ce message qui n'est pas conforme a sa destination, toute diffusion ou toute
publication, totale ou partielle, est interdite. L'Internet ne permettant pas d'assurer
l'integrite de ce message electronique susceptible d'alteration, BNP Paribas
(et ses filiales) decline(nt) toute responsabilite au titre de ce message dans l'hypothese
ou il aurait ete modifie, deforme ou falsifie.
N'imprimez ce message que si necessaire, pensez a l'environnement.


Denis Magda Denis Magda
Reply | Threaded
Open this post in threaded view
|

Re: Ignite "bugs" ?

In reply to this post by yann.blazart@externe.bnpparibas.com
Hi Yann,

Could you provide thread dumps from all the nodes? It should help to see the place that "locket" the execution.

Regards,
Denis

On 1/13/2016 4:23 PM, Yann BLAZART wrote:

Hello everybody.

 

I’m currently evaluation Ignite vs Hazelcast on a poc.

 

I’m facing some issues.

I’m coding some integration/unit test using the ApplicationComposer of TomEE 7.0.0. I have no problem with Hazelcast on it.

 

·         The first one is when I’m start Ignite in the applicationComposer (with a CDI @Produces), Ignite complain about some System.properties that are not String :

 

it try to "serialize" System.properties by using System.getProperties().store(new PrintWriter(sw));

 

In fact, TomEE (as other framework like hibernate) use System.properties to store prop objects.

 

So I made something to remove this properties before Ignite start and recover its after. Well. Pehraps it will be nice to change the way to “serialize” System.properties.

 

·         The second problem is strange, very strange. If I’m making a call to Ignite.start in @Before or using a @Inject in the test class (that use the @Produce that make the call to start(), everything is ok. But if the start is called in the @Test method (so after ApplicationComposer has made some things), Ignite is “locked”.

o   Precisely in IgniteKernel.java:917  :

 

// Start discovery manager last to make sure that grid is fully initialized.
startManager(discoMgr);

               

                The call to  this method never exit.

 

Any idea to help me to understand ? Anybody has tried to use Ignite with EE or CDI ?

 

Regards

 

 

 

This message and any attachments (the "message") is
intended solely for the intended addressees and is confidential.
If you receive this message in error,or are not the intended recipient(s),
please delete it and any copies from your systems and immediately notify
the sender. Any unauthorized view, use that does not comply with its purpose,
dissemination or disclosure, either whole or partial, is prohibited. Since the internet
cannot guarantee the integrity of this message which may not be reliable, BNP PARIBAS
(and its subsidiaries) shall not be liable for the message if modified, changed or falsified.
Do not print this message unless it is necessary,consider the environment.

----------------------------------------------------------------------------------------------------------------------------------

Ce message et toutes les pieces jointes (ci-apres le "message")
sont etablis a l'intention exclusive de ses destinataires et sont confidentiels.
Si vous recevez ce message par erreur ou s'il ne vous est pas destine,
merci de le detruire ainsi que toute copie de votre systeme et d'en avertir
immediatement l'expediteur. Toute lecture non autorisee, toute utilisation de
ce message qui n'est pas conforme a sa destination, toute diffusion ou toute
publication, totale ou partielle, est interdite. L'Internet ne permettant pas d'assurer
l'integrite de ce message electronique susceptible d'alteration, BNP Paribas
(et ses filiales) decline(nt) toute responsabilite au titre de ce message dans l'hypothese
ou il aurait ete modifie, deforme ou falsifie.
N'imprimez ce message que si necessaire, pensez a l'environnement.


yann.blazart@externe.bnpparibas.com yann.blazart@externe.bnpparibas.com
Reply | Threaded
Open this post in threaded view
|

RE: Ignite "bugs" ?

In reply to this post by Matt Hoffman

Well, TomEE is using System.properties to store its IVmContext… I can’t make change all open source projects on this point, even if I’m agree with you.

 

I have only one Ignite instance started in this case. This is really strange.

 

From: Matt Hoffman [mailto:[hidden email]]
Sent: mercredi 13 janvier 2016 15:31
To: [hidden email]
Subject: Re: Ignite "bugs" ?

 

Using System.properties() to store non-strings is really poor behavior. It violates the contract of the System.setProperty and System.getProperty, as well as the contract of the Properties object itself, from right at the top of the javadoc:  "Each key and its corresponding value in the property list is a string."  

I've hit something like that in Hibernate before, years ago; I'm surprised they haven't fixed it yet. It's a long-standing bug in Hibernate. Not to say Ignite shouldn't have a workaround for badly-behaved libraries that do things like that, but it's definitely a Hibernate bug.  

 

Someone else will have to talk the locking behavior you're seeing. Are you starting Ignite more than once in parallel in that case? 

 

On Wed, Jan 13, 2016 at 8:23 AM, Yann BLAZART <[hidden email]> wrote:

Hello everybody.

 

I’m currently evaluation Ignite vs Hazelcast on a poc.

 

I’m facing some issues.

I’m coding some integration/unit test using the ApplicationComposer of TomEE 7.0.0. I have no problem with Hazelcast on it.

 

·         The first one is when I’m start Ignite in the applicationComposer (with a CDI @Produces), Ignite complain about some System.properties that are not String :

 

it try to "serialize" System.properties by using System.getProperties().store(new PrintWriter(sw));

 

In fact, TomEE (as other framework like hibernate) use System.properties to store prop objects.

 

So I made something to remove this properties before Ignite start and recover its after. Well. Pehraps it will be nice to change the way to “serialize” System.properties.

 

·         The second problem is strange, very strange. If I’m making a call to Ignite.start in @Before or using a @Inject in the test class (that use the @Produce that make the call to start(), everything is ok. But if the start is called in the @Test method (so after ApplicationComposer has made some things), Ignite is “locked”.

o   Precisely in IgniteKernel.java:917  :

 

// Start discovery manager last to make sure that grid is fully initialized.
startManager(discoMgr);

               

                The call to  this method never exit.

 

Any idea to help me to understand ? Anybody has tried to use Ignite with EE or CDI ?

 

Regards

 

 

 

This message and any attachments (the "message") is
intended solely for the intended addressees and is confidential.
If you receive this message in error,or are not the intended recipient(s),
please delete it and any copies from your systems and immediately notify
the sender. Any unauthorized view, use that does not comply with its purpose,
dissemination or disclosure, either whole or partial, is prohibited. Since the internet
cannot guarantee the integrity of this message which may not be reliable, BNP PARIBAS
(and its subsidiaries) shall not be liable for the message if modified, changed or falsified.
Do not print this message unless it is necessary,consider the environment.

----------------------------------------------------------------------------------------------------------------------------------

Ce message et toutes les pieces jointes (ci-apres le "message")
sont etablis a l'intention exclusive de ses destinataires et sont confidentiels.
Si vous recevez ce message par erreur ou s'il ne vous est pas destine,
merci de le detruire ainsi que toute copie de votre systeme et d'en avertir
immediatement l'expediteur. Toute lecture non autorisee, toute utilisation de
ce message qui n'est pas conforme a sa destination, toute diffusion ou toute
publication, totale ou partielle, est interdite. L'Internet ne permettant pas d'assurer
l'integrite de ce message electronique susceptible d'alteration, BNP Paribas
(et ses filiales) decline(nt) toute responsabilite au titre de ce message dans l'hypothese
ou il aurait ete modifie, deforme ou falsifie.
N'imprimez ce message que si necessaire, pensez a l'environnement.

 

Matt Hoffman Matt Hoffman
Reply | Threaded
Open this post in threaded view
|

Re: Ignite "bugs" ?

No, I understand that you can't control what other projects do, and it's not always possible to fix bugs at their source. 

I imagine the best thing for Ignite to do in this case is to iterate through the properties and just ignore anything that isn't a String. It wouldn't be meaningful when deserialized anyway. 

On Wed, Jan 13, 2016 at 10:26 AM, Yann BLAZART <[hidden email]> wrote:

Well, TomEE is using System.properties to store its IVmContext… I can’t make change all open source projects on this point, even if I’m agree with you.

 

I have only one Ignite instance started in this case. This is really strange.

 

From: Matt Hoffman [mailto:[hidden email]]
Sent: mercredi 13 janvier 2016 15:31
To: [hidden email]
Subject: Re: Ignite "bugs" ?

 

Using System.properties() to store non-strings is really poor behavior. It violates the contract of the System.setProperty and System.getProperty, as well as the contract of the Properties object itself, from right at the top of the javadoc:  "Each key and its corresponding value in the property list is a string."  

I've hit something like that in Hibernate before, years ago; I'm surprised they haven't fixed it yet. It's a long-standing bug in Hibernate. Not to say Ignite shouldn't have a workaround for badly-behaved libraries that do things like that, but it's definitely a Hibernate bug.  

 

Someone else will have to talk the locking behavior you're seeing. Are you starting Ignite more than once in parallel in that case? 

 

On Wed, Jan 13, 2016 at 8:23 AM, Yann BLAZART <[hidden email]> wrote:

Hello everybody.

 

I’m currently evaluation Ignite vs Hazelcast on a poc.

 

I’m facing some issues.

I’m coding some integration/unit test using the ApplicationComposer of TomEE 7.0.0. I have no problem with Hazelcast on it.

 

·         The first one is when I’m start Ignite in the applicationComposer (with a CDI @Produces), Ignite complain about some System.properties that are not String :

 

it try to "serialize" System.properties by using System.getProperties().store(new PrintWriter(sw));

 

In fact, TomEE (as other framework like hibernate) use System.properties to store prop objects.

 

So I made something to remove this properties before Ignite start and recover its after. Well. Pehraps it will be nice to change the way to “serialize” System.properties.

 

·         The second problem is strange, very strange. If I’m making a call to Ignite.start in @Before or using a @Inject in the test class (that use the @Produce that make the call to start(), everything is ok. But if the start is called in the @Test method (so after ApplicationComposer has made some things), Ignite is “locked”.

o   Precisely in IgniteKernel.java:917  :

 

// Start discovery manager last to make sure that grid is fully initialized.
startManager(discoMgr);

               

                The call to  this method never exit.

 

Any idea to help me to understand ? Anybody has tried to use Ignite with EE or CDI ?

 

Regards

 

 

 

This message and any attachments (the "message") is
intended solely for the intended addressees and is confidential.
If you receive this message in error,or are not the intended recipient(s),
please delete it and any copies from your systems and immediately notify
the sender. Any unauthorized view, use that does not comply with its purpose,
dissemination or disclosure, either whole or partial, is prohibited. Since the internet
cannot guarantee the integrity of this message which may not be reliable, BNP PARIBAS
(and its subsidiaries) shall not be liable for the message if modified, changed or falsified.
Do not print this message unless it is necessary,consider the environment.

----------------------------------------------------------------------------------------------------------------------------------

Ce message et toutes les pieces jointes (ci-apres le "message")
sont etablis a l'intention exclusive de ses destinataires et sont confidentiels.
Si vous recevez ce message par erreur ou s'il ne vous est pas destine,
merci de le detruire ainsi que toute copie de votre systeme et d'en avertir
immediatement l'expediteur. Toute lecture non autorisee, toute utilisation de
ce message qui n'est pas conforme a sa destination, toute diffusion ou toute
publication, totale ou partielle, est interdite. L'Internet ne permettant pas d'assurer
l'integrite de ce message electronique susceptible d'alteration, BNP Paribas
(et ses filiales) decline(nt) toute responsabilite au titre de ce message dans l'hypothese
ou il aurait ete modifie, deforme ou falsifie.
N'imprimez ce message que si necessaire, pensez a l'environnement.

 


yann.blazart@externe.bnpparibas.com yann.blazart@externe.bnpparibas.com
Reply | Threaded
Open this post in threaded view
|

RE: Ignite "bugs" ?

In reply to this post by Denis Magda

I will do ASAP. I have some support case for now.

 

Thanks for your help J

 

Regarding the System.properties, I’ve made my own patch in my code by filtering System.properties hashtable before calling ignite start, then I restore values… Ugly, but working.

 

From: Denis Magda [mailto:[hidden email]]
Sent: mercredi 13 janvier 2016 16:26
To: [hidden email]
Subject: Re: Ignite "bugs" ?

 

Hi Yann,

Could you provide thread dumps from all the nodes? It should help to see the place that "locket" the execution.

Regards,
Denis

On 1/13/2016 4:23 PM, Yann BLAZART wrote:

Hello everybody.

 

I’m currently evaluation Ignite vs Hazelcast on a poc.

 

I’m facing some issues.

I’m coding some integration/unit test using the ApplicationComposer of TomEE 7.0.0. I have no problem with Hazelcast on it.

 

·         The first one is when I’m start Ignite in the applicationComposer (with a CDI @Produces), Ignite complain about some System.properties that are not String :

 

it try to "serialize" System.properties by using System.getProperties().store(new PrintWriter(sw));

 

In fact, TomEE (as other framework like hibernate) use System.properties to store prop objects.

 

So I made something to remove this properties before Ignite start and recover its after. Well. Pehraps it will be nice to change the way to “serialize” System.properties.

 

·         The second problem is strange, very strange. If I’m making a call to Ignite.start in @Before or using a @Inject in the test class (that use the @Produce that make the call to start(), everything is ok. But if the start is called in the @Test method (so after ApplicationComposer has made some things), Ignite is “locked”.

o   Precisely in IgniteKernel.java:917  :

 

// Start discovery manager last to make sure that grid is fully initialized.
startManager(discoMgr);

               

                The call to  this method never exit.

 

Any idea to help me to understand ? Anybody has tried to use Ignite with EE or CDI ?

 

Regards

 

 

 

This message and any attachments (the "message") is
intended solely for the intended addressees and is confidential.
If you receive this message in error,or are not the intended recipient(s),
please delete it and any copies from your systems and immediately notify
the sender. Any unauthorized view, use that does not comply with its purpose,
dissemination or disclosure, either whole or partial, is prohibited. Since the internet
cannot guarantee the integrity of this message which may not be reliable, BNP PARIBAS
(and its subsidiaries) shall not be liable for the message if modified, changed or falsified.
Do not print this message unless it is necessary,consider the environment.

----------------------------------------------------------------------------------------------------------------------------------

Ce message et toutes les pieces jointes (ci-apres le "message")
sont etablis a l'intention exclusive de ses destinataires et sont confidentiels.
Si vous recevez ce message par erreur ou s'il ne vous est pas destine,
merci de le detruire ainsi que toute copie de votre systeme et d'en avertir
immediatement l'expediteur. Toute lecture non autorisee, toute utilisation de
ce message qui n'est pas conforme a sa destination, toute diffusion ou toute
publication, totale ou partielle, est interdite. L'Internet ne permettant pas d'assurer
l'integrite de ce message electronique susceptible d'alteration, BNP Paribas
(et ses filiales) decline(nt) toute responsabilite au titre de ce message dans l'hypothese
ou il aurait ete modifie, deforme ou falsifie.
N'imprimez ce message que si necessaire, pensez a l'environnement.

 

Alexey Kuznetsov Alexey Kuznetsov
Reply | Threaded
Open this post in threaded view
|

Re: Ignite "bugs" ?

Yann,

Take into account that this mail list does not allow binary attachments,
 you should upload them on some public service (like dropbox or any) and provide a link.


--
Alexey Kuznetsov
GridGain Systems
www.gridgain.com
yann.blazart@externe.bnpparibas.com yann.blazart@externe.bnpparibas.com
Reply | Threaded
Open this post in threaded view
|

RE: Ignite "bugs" ?

I will

 

From: Alexey Kuznetsov [mailto:[hidden email]]
Sent: mercredi 13 janvier 2016 16:42
To: [hidden email]
Subject: Re: Ignite "bugs" ?

 

Yann,

 

Take into account that this mail list does not allow binary attachments,

 you should upload them on some public service (like dropbox or any) and provide a link.

 

 

--

Alexey Kuznetsov

GridGain Systems
www.gridgain.com

This message and any attachments (the "message") is
intended solely for the intended addressees and is confidential.
If you receive this message in error,or are not the intended recipient(s),
please delete it and any copies from your systems and immediately notify
the sender. Any unauthorized view, use that does not comply with its purpose,
dissemination or disclosure, either whole or partial, is prohibited. Since the internet
cannot guarantee the integrity of this message which may not be reliable, BNP PARIBAS
(and its subsidiaries) shall not be liable for the message if modified, changed or falsified.
Do not print this message unless it is necessary,consider the environment.

----------------------------------------------------------------------------------------------------------------------------------

Ce message et toutes les pieces jointes (ci-apres le "message")
sont etablis a l'intention exclusive de ses destinataires et sont confidentiels.
Si vous recevez ce message par erreur ou s'il ne vous est pas destine,
merci de le detruire ainsi que toute copie de votre systeme et d'en avertir
immediatement l'expediteur. Toute lecture non autorisee, toute utilisation de
ce message qui n'est pas conforme a sa destination, toute diffusion ou toute
publication, totale ou partielle, est interdite. L'Internet ne permettant pas d'assurer
l'integrite de ce message electronique susceptible d'alteration, BNP Paribas
(et ses filiales) decline(nt) toute responsabilite au titre de ce message dans l'hypothese
ou il aurait ete modifie, deforme ou falsifie.
N'imprimez ce message que si necessaire, pensez a l'environnement.

vkulichenko vkulichenko
Reply | Threaded
Open this post in threaded view
|

RE: Ignite "bugs" ?

Yann,

It sounds like you have some misconfiguration for discovery. Can you also provide your configuration file?

-Val
yann.blazart@externe.bnpparibas.com yann.blazart@externe.bnpparibas.com
Reply | Threaded
Open this post in threaded view
|

RE: Ignite "bugs" ?

Hello. I'm not using config file I'm using java code to configure :


   @Produces
    @ApplicationScoped
    public Ignite produceInstance() {
        LOG.info("** Prepare Ignite ");

        IgniteConfiguration config = new IgniteConfiguration();
        config.setClientMode(false);
        config.setLifecycleBeans(e -> igniteEventRaiser.fire(e));

        CacheConfiguration glblCacheConfig=new CacheConfiguration();
        glblCacheConfig.setStartSize(100*1024*1024);

        CacheConfiguration cacheConfigFeedsFlow = getCacheConfiguration(GridService.FEEDS_FLOW_MAP_KEY, feedsFlowMapStore);

        CacheConfiguration cacheConfigFeedsFlowRaw=getCacheConfiguration(GridService.FEEDS_FLOW_RAW_MAP_KEY,feedsFlowRawMapStore);

        CacheConfiguration cacheConfigFeedsFlowSource=getCacheConfiguration(GridService.FEEDS_FLOW_SOURCE_MAP_KEY,feedsFlowSourceMapStore);


        config.setCacheConfiguration(glblCacheConfig,cacheConfigFeedsFlow,cacheConfigFeedsFlowRaw,cacheConfigFeedsFlowSource);

        TcpDiscoverySpi discoverySpi=new TcpDiscoverySpi();
        TcpDiscoveryJdbcIpFinder ipFinder=new TcpDiscoveryJdbcIpFinder();
        ipFinder.setDataSource(dataSource);
        discoverySpi.setIpFinder(ipFinder);
        config.setDiscoverySpi(discoverySpi);

        TransactionConfiguration txConfig=new TransactionConfiguration();
        txConfig.setTxManagerFactory(()->transactionManager);
        config.setTransactionConfiguration(txConfig);

        Hashtable<Object,Object> backup = new Hashtable<>();
        Hashtable<Object,Object> hashtableFromSystemProperties = System.getProperties();
        Enumeration<Object> keys = hashtableFromSystemProperties.keys();
        while ( keys.hasMoreElements() ) {
            Object key =keys.nextElement();
            if ( !  (hashtableFromSystemProperties.get(key) instanceof  String) ) {
                LOG.info("*** Prepare ignite : remove {} from System.properties",key);
                backup.put(key,hashtableFromSystemProperties.get(key));
                hashtableFromSystemProperties.remove(key);
            }
        }
        Ignite ignite = Ignition.start(config);

        hashtableFromSystemProperties.putAll(backup);
        LOG.info("*** Prepare ignite : restore key into from System.properties");
        return ignite;
    }



@NotNull
    private CacheConfiguration getCacheConfiguration(String name, GenericFeedsFlowJPACacheStore<?> cacheStore) {
        CacheConfiguration config=new CacheConfiguration(name);
        config.setCacheStoreFactory(new FixedCacheStoreFactory(cacheStore));
        config.setWriteThrough(true);
        config.setReadThrough(true);
        config.setCacheMode(CacheMode.PARTITIONED);
        config.setAtomicityMode(CacheAtomicityMode.TRANSACTIONAL);
        return config;
    }


-----Original Message-----
From: vkulichenko [mailto:[hidden email]]
Sent: jeudi 14 janvier 2016 04:15
To: [hidden email]
Subject: RE: Ignite "bugs" ?

Yann,

It sounds like you have some misconfiguration for discovery. Can you also provide your configuration file?

-Val



--
View this message in context: http://apache-ignite-users.70518.x6.nabble.com/Ignite-bugs-tp2534p2550.html
Sent from the Apache Ignite Users mailing list archive at Nabble.com.


This message and any attachments (the "message") is
intended solely for the intended addressees and is confidential.
If you receive this message in error,or are not the intended recipient(s),
please delete it and any copies from your systems and immediately notify
the sender. Any unauthorized view, use that does not comply with its purpose,
dissemination or disclosure, either whole or partial, is prohibited. Since the internet
cannot guarantee the integrity of this message which may not be reliable, BNP PARIBAS
(and its subsidiaries) shall not be liable for the message if modified, changed or falsified.
Do not print this message unless it is necessary,consider the environment.

----------------------------------------------------------------------------------------------------------------------------------

Ce message et toutes les pieces jointes (ci-apres le "message")
sont etablis a l'intention exclusive de ses destinataires et sont confidentiels.
Si vous recevez ce message par erreur ou s'il ne vous est pas destine,
merci de le detruire ainsi que toute copie de votre systeme et d'en avertir
immediatement l'expediteur. Toute lecture non autorisee, toute utilisation de
ce message qui n'est pas conforme a sa destination, toute diffusion ou toute
publication, totale ou partielle, est interdite. L'Internet ne permettant pas d'assurer
l'integrite de ce message electronique susceptible d'alteration, BNP Paribas
(et ses filiales) decline(nt) toute responsabilite au titre de ce message dans l'hypothese
ou il aurait ete modifie, deforme ou falsifie.
N'imprimez ce message que si necessaire, pensez a l'environnement.

yann.blazart@externe.bnpparibas.com yann.blazart@externe.bnpparibas.com
Reply | Threaded
Open this post in threaded view
|

RE: Ignite "bugs" ?

In reply to this post by vkulichenko
Gotcha....



This is this part :

        TcpDiscoverySpi discoverySpi=new TcpDiscoverySpi();
        TcpDiscoveryJdbcIpFinder ipFinder=new TcpDiscoveryJdbcIpFinder();
        ipFinder.setDataSource(dataSource);
        discoverySpi.setIpFinder(ipFinder);
        config.setDiscoverySpi(discoverySpi);

When I remove it, and use real tcp discovery, it works.

-----Original Message-----
From: vkulichenko [mailto:[hidden email]]
Sent: jeudi 14 janvier 2016 04:15
To: [hidden email]
Subject: RE: Ignite "bugs" ?

Yann,

It sounds like you have some misconfiguration for discovery. Can you also provide your configuration file?

-Val



--
View this message in context: http://apache-ignite-users.70518.x6.nabble.com/Ignite-bugs-tp2534p2550.html
Sent from the Apache Ignite Users mailing list archive at Nabble.com.


This message and any attachments (the "message") is
intended solely for the intended addressees and is confidential.
If you receive this message in error,or are not the intended recipient(s),
please delete it and any copies from your systems and immediately notify
the sender. Any unauthorized view, use that does not comply with its purpose,
dissemination or disclosure, either whole or partial, is prohibited. Since the internet
cannot guarantee the integrity of this message which may not be reliable, BNP PARIBAS
(and its subsidiaries) shall not be liable for the message if modified, changed or falsified.
Do not print this message unless it is necessary,consider the environment.

----------------------------------------------------------------------------------------------------------------------------------

Ce message et toutes les pieces jointes (ci-apres le "message")
sont etablis a l'intention exclusive de ses destinataires et sont confidentiels.
Si vous recevez ce message par erreur ou s'il ne vous est pas destine,
merci de le detruire ainsi que toute copie de votre systeme et d'en avertir
immediatement l'expediteur. Toute lecture non autorisee, toute utilisation de
ce message qui n'est pas conforme a sa destination, toute diffusion ou toute
publication, totale ou partielle, est interdite. L'Internet ne permettant pas d'assurer
l'integrite de ce message electronique susceptible d'alteration, BNP Paribas
(et ses filiales) decline(nt) toute responsabilite au titre de ce message dans l'hypothese
ou il aurait ete modifie, deforme ou falsifie.
N'imprimez ce message que si necessaire, pensez a l'environnement.

Denis Magda Denis Magda
Reply | Threaded
Open this post in threaded view
|

Re: Ignite "bugs" ?

Hy Yann,

My guess it is that TcpDiscoveryJdbcIpFinder hangs on an attempt to
connect to the data source provided in its configuration. Probably your
DB is not reachable from the Ignite node or it generates an error that
is not forwarded to Ignite.
In any case a threads dump knows the answer precisely :)

In regards to System.properties related discussion. In general I'm agree
with the guys that it's not a good idea to incorporate hacks at the
level of Ignite because some other framework uses them violation Java spec.
However I've tried to put a custom objects in System.properties and
could successfully start an Ignite instance without seeing even a
warning. What version of Ignite do you use?

Regards,
Denis

On 1/14/2016 11:41 AM, Yann BLAZART wrote:

> Gotcha....
>
>
>
> This is this part :
>
>          TcpDiscoverySpi discoverySpi=new TcpDiscoverySpi();
>          TcpDiscoveryJdbcIpFinder ipFinder=new TcpDiscoveryJdbcIpFinder();
>          ipFinder.setDataSource(dataSource);
>          discoverySpi.setIpFinder(ipFinder);
>          config.setDiscoverySpi(discoverySpi);
>
> When I remove it, and use real tcp discovery, it works.
>
> -----Original Message-----
> From: vkulichenko [mailto:[hidden email]]
> Sent: jeudi 14 janvier 2016 04:15
> To: [hidden email]
> Subject: RE: Ignite "bugs" ?
>
> Yann,
>
> It sounds like you have some misconfiguration for discovery. Can you also provide your configuration file?
>
> -Val
>
>
>
> --
> View this message in context: http://apache-ignite-users.70518.x6.nabble.com/Ignite-bugs-tp2534p2550.html
> Sent from the Apache Ignite Users mailing list archive at Nabble.com.
>
>
> This message and any attachments (the "message") is
> intended solely for the intended addressees and is confidential.
> If you receive this message in error,or are not the intended recipient(s),
> please delete it and any copies from your systems and immediately notify
> the sender. Any unauthorized view, use that does not comply with its purpose,
> dissemination or disclosure, either whole or partial, is prohibited. Since the internet
> cannot guarantee the integrity of this message which may not be reliable, BNP PARIBAS
> (and its subsidiaries) shall not be liable for the message if modified, changed or falsified.
> Do not print this message unless it is necessary,consider the environment.
>
> ----------------------------------------------------------------------------------------------------------------------------------
>
> Ce message et toutes les pieces jointes (ci-apres le "message")
> sont etablis a l'intention exclusive de ses destinataires et sont confidentiels.
> Si vous recevez ce message par erreur ou s'il ne vous est pas destine,
> merci de le detruire ainsi que toute copie de votre systeme et d'en avertir
> immediatement l'expediteur. Toute lecture non autorisee, toute utilisation de
> ce message qui n'est pas conforme a sa destination, toute diffusion ou toute
> publication, totale ou partielle, est interdite. L'Internet ne permettant pas d'assurer
> l'integrite de ce message electronique susceptible d'alteration, BNP Paribas
> (et ses filiales) decline(nt) toute responsabilite au titre de ce message dans l'hypothese
> ou il aurait ete modifie, deforme ou falsifie.
> N'imprimez ce message que si necessaire, pensez a l'environnement.
>

vkulichenko vkulichenko
Reply | Threaded
Open this post in threaded view
|

Re: Ignite "bugs" ?

Hi Yann,

I was able to reproduce the issue and created a ticket [1]. Will fix it shortly by simply ignoring non-string properties.

I found two places that can cause issues: update checker and node attributes. Looks like your issue was caused by the first one, it can be workarounded by disabling the update checker. Can you try to set system property [2] and see if it helps?

Having IvmContext in node attributes should not be a problem, because this class is Serializable.

[1] https://issues.apache.org/jira/browse/IGNITE-2383
[2] -DIGNITE_UPDATE_NOTIFIER=false

-Val
vdpyatkov vdpyatkov
Reply | Threaded
Open this post in threaded view
|

Re: Ignite "bugs" ?

This post has NOT been accepted by the mailing list yet.
Hi Yann,

I soon fixed the issue IGNITE-2383.
But  and before, you can to determine explicitly list of properties using IgniteConfiguration#setIncludeProperties (If you invoke it without any parameters  then not any system property will not by transmitted).