Hi Siva, I still have no clue what's wrong, your code seems OK. Just one more thing to check.
>> cacheConfiguration.setIndexedTypes(String.class, IgniteUser1.class); what do you need this string for? Does your code work without this string? It seems to be something about SQL layer. Here's a little post I wrote [1], it is written in Russian, hope you will be able to translate and read it. I'd spent a lot of time forging through StackOverflow and learned that user POJOs are not peer-deployed at all. So if you need IgniteUser1 class, probably that class should extend/implement something from Ignite platform. -- Vladimir [1] https://habr.com/ru/post/472568/ вт, 11 мая 2021 г. в 06:00, <[email protected]>: > 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] > > 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]" < > [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 > > _________________________________________________________________________________________________________________________________________________________________________________________________________________________________ >
