Thanks Vladimir Chernyi for your blog.  That helped a lot in improving the 
performance. I am converting the object to Binary Object before storing. This 
doesn’t seem to be issue just when loading the data alone.

I have a scan query which also fails with same exception.

List<BinaryObject> cacheObjects = cache.withKeepBinary().query(new ScanQuery<>(
                //filter for just Blade Enabled Users
                new IgniteBiPredicate<String, BinaryObject>() {
                    @Override
                    public boolean apply(String s, BinaryObject binaryObject) {
                        return ((HashSet) 
binaryObject.field("field1")).contains("34");
                    }
                }),
                // Transformer
        new IgniteClosure<Cache.Entry<String, BinaryObject>, BinaryObject>() {
            @Override
            public BinaryObject apply(Cache.Entry<String, BinaryObject> 
stringBinaryObjectEntry) {
                return stringBinaryObjectEntry.getValue();
            }
        }).getAll();
Weirdest thing is that the classes seem to be loading on the cluster, only when 
i modify something on the class. I can replicate it again when I start the 
cluster wiping the data  folder.  It appears so that the grid deployer is not 
deploying classes to the cluster until it sees that the class has changed , but 
shouldn’t it deploy first time?.


Thanks,
Siva.

From: [email protected] <[email protected]>
Sent: Monday, May 10, 2021 1:07
To: [email protected]
Subject: Re: Peer ClassLoading Issue | Apache Ignite 2.10 with Spring Boot 2.3


This message originated from outside our organisation and is from web based 
email - [email protected]<mailto:[email protected]>
Hi Siva,

Thank you for reading my blog post. I have no idea what is the problem in your 
case, just wanna share some experience.

I do not use any user POJOs on the remote nodes. Instead, I create POJO on the 
thick client node, convert it in BinaryObject and change that object on the 
remote node by object.toBuilder().setField().build(). I use key value API only.

So no class not found issues arise. Hope that helps

Vladimir Chernyi

8:28, 9 мая 2021 г., 
"[email protected]<mailto:[email protected]>" 
<[email protected]<mailto:[email protected]>>:

Hi,



We are trying to use ignite for the first time in our project. We are trying to 
use ignite with persistence enabled.



Architecture is as follows.



SpringBoot 2.3 application (thick client ) tries to connect to apace ignite 
cluster (3 nodes ) with persistence enabled and peer class loading enabled.



There seems to be a weird  issue with peer class loading.



We are trying to load huge data following the same approach as here - 
https://www.gridgain.com/resources/blog/how-fast-load-large-datasets-apache-ignite-using-key-value-api<https://clicktime.symantec.com/33sZ5STPWrhi61h4sP3SJYy6H2?u=https%3A%2F%2Fwww.gridgain.com%2Fresources%2Fblog%2Fhow-fast-load-large-datasets-apache-ignite-using-key-value-api>



Cache Configuration



cacheConfiguration.setName(CacheIdentifiers.USER_IGNITE_CACHE.toString());
cacheConfiguration.setIndexedTypes(String.class, IgniteUser1.class);
cacheConfiguration.setCacheMode(CacheMode.PARTITIONED);
cacheConfiguration.setStoreKeepBinary(true);
RendezvousAffinityFunction rendezvousAffinityFunction = new 
RendezvousAffinityFunction();
rendezvousAffinityFunction.setPartitions(512);
cacheConfiguration.setBackups(1);
cacheConfiguration.setAffinity(rendezvousAffinityFunction);





Scenario 1.



Start the cluster --> activate the cluster --> start the thick client -->  
Loading clients/ignite.cluster fails



Exception occured in adding the data javax.cache.CacheException: class 
org.apache.ignite.IgniteCheckedException: Failed to resolve class name 
[platformId=0, platform=Java, typeId=620850656]



Scenario 2.



Stop the Thick client , Rename the file from IgniteUser1 to IgniteUser and 
restart the thick client , the classes are now copied to the cluster and works 
fine.



I am not sure if there is an issue with grid deployment. Any help would be 
appreciated.



Thanks,
Siva.

_________________________________________________________________________________________________________________________________________________________________________________________________________________________________
“This message is for information purposes only, it is not a recommendation, 
advice, offer or solicitation to buy or sell a product or service nor an 
official confirmation of any transaction. It is directed at persons who are 
professionals and is not intended for retail customer use. Intended for 
recipient only. This message is subject to the terms at: 
www.barclays.com/emaildisclaimer<https://clicktime.symantec.com/3EScN6Pa2wa9DFMQcfRosLx6H2?u=http%3A%2F%2Fwww.barclays.com%2Femaildisclaimer>.

For important disclosures, please see: 
www.barclays.com/salesandtradingdisclaimer<https://clicktime.symantec.com/36YEfnZPzAbL1KsNetNz4HH6H2?u=http%3A%2F%2Fwww.barclays.com%2Fsalesandtradingdisclaimer>
 regarding market commentary from Barclays Sales and/or Trading, who are active 
market participants; 
https://www.investmentbank.barclays.com/disclosures/barclays-global-markets-disclosures.html<https://clicktime.symantec.com/3CaUy6NkJAe3VaP7FMFSV3R6H2?u=https%3A%2F%2Fwww.investmentbank.barclays.com%2Fdisclosures%2Fbarclays-global-markets-disclosures.html>
 regarding our standard terms for the Investment Bank of Barclays where we 
trade with you in principal-to-principal wholesale markets transactions; and in 
respect of Barclays Research, including disclosures relating to specific 
issuers, please see 
http://publicresearch.barclays.com<https://clicktime.symantec.com/3Ek254q4RdHyYegXwXRo6eW6H2?u=http%3A%2F%2Fpublicresearch.barclays.com>.”
_________________________________________________________________________________________________________________________________________________________________________________________________________________________________
If you are incorporated or operating in Australia, please see 
https://www.home.barclays/disclosures/importantapacdisclosures.html<https://clicktime.symantec.com/3Sgexgc1czG7TjduYb72UNQ6H2?u=https%3A%2F%2Fwww.home.barclays%2Fdisclosures%2Fimportantapacdisclosures.html>
 for important disclosure.
_________________________________________________________________________________________________________________________________________________________________________________________________________________________________
How we use personal information  see our privacy notice 
https://www.investmentbank.barclays.com/disclosures/personalinformationuse.html<https://clicktime.symantec.com/36pqf4mVMxdkeQZ4abW4Qpa6H2?u=https%3A%2F%2Fwww.investmentbank.barclays.com%2Fdisclosures%2Fpersonalinformationuse.html>
_________________________________________________________________________________________________________________________________________________________________________________________________________________________________


--
Отправлено из мобильного приложения Яндекс.Почты

_________________________________________________________________________________________________________________________________________________________________________________________________________________________________
�This message is for information purposes only, it is not a recommendation, 
advice, offer or solicitation to buy or sell a product or service nor an 
official confirmation of any transaction. It is directed at persons who are 
professionals and is not intended for retail customer use. Intended for 
recipient only. This message is subject to the terms at: 
www.barclays.com/emaildisclaimer.

For important disclosures, please see: 
www.barclays.com/salesandtradingdisclaimer regarding market commentary from 
Barclays Sales and/or Trading, who are active market participants; 
https://www.investmentbank.barclays.com/disclosures/barclays-global-markets-disclosures.html
 regarding our standard terms for the Investment Bank of Barclays where we 
trade with you in principal-to-principal wholesale markets transactions; and in 
respect of Barclays Research, including disclosures relating to specific 
issuers, please see http://publicresearch.barclays.com.�  
_________________________________________________________________________________________________________________________________________________________________________________________________________________________________
If you are incorporated or operating in Australia, please see 
https://www.home.barclays/disclosures/importantapacdisclosures.html for 
important disclosure.
_________________________________________________________________________________________________________________________________________________________________________________________________________________________________
How we use personal information  see our privacy notice 
https://www.investmentbank.barclays.com/disclosures/personalinformationuse.html 
_________________________________________________________________________________________________________________________________________________________________________________________________________________________________

Reply via email to