Cannot find schema for object with compact footer

2023-07-20 Thread satyajit.mandal.barclays.com via user
Hi Team,

Why  we  get  this  interim  error  while  loading  heavy  tables with  
persistence  enabled?

Apache.Ignite.Core.Common.JavaException: javax.cache.CacheException: class 
org.apache.ignite.IgniteCheckedException: Cannot find schema for object with 
compact footer

---> (Inner Exception #2) Apache.Ignite.Core.Cache.CacheException: class 
org.apache.ignite.IgniteCheckedException: Cannot find schema for object with 
compact footer 
[typeName=Barclays.EM.RealTime.Api.Cache.Infrastructure.SqlEntity.RuleGroup, 
typeId=1470322919, missingSchemaId=267904191, existingSchemaIds=[]]
---> Apache.Ignite.Core.Common.IgniteException: Cannot find schema for object 
with compact footer 
[typeName=Barclays.EM.RealTime.Api.Cache.Infrastructure.SqlEntity.RuleGroup, 
typeId=1470322919, missingSchemaId=267904191, existingSchemaIds=[]]
---> Apache.Ignite.Core.Common.JavaException: javax.cache.CacheException: class 
org.apache.ignite.IgniteCheckedException: Cannot find schema for object with 
compact footer 
[typeName=Barclays.EM.RealTime.Api.Cache.Infrastructure.SqlEntity.RuleGroup, 
typeId=1470322919, missingSchemaId=267904191, existingSchemaIds=[]]
   at 
org.apache.ignite.internal.processors.cache.GridCacheUtils.convertToCacheException(GridCacheUtils.java:1272)
   at 
org.apache.ignite.internal.processors.cache.IgniteCacheProxyImpl.cacheException(IgniteCacheProxyImpl.java:2084)
   at 
org.apache.ignite.internal.processors.cache.IgniteCacheProxyImpl.put(IgniteCacheProxyImpl.java:1320)
   at 
org.apache.ignite.internal.processors.cache.GatewayProtectedCacheProxy.put(GatewayProtectedCacheProxy.java:866)
   at 
org.apache.ignite.internal.processors.platform.cache.PlatformCache.processInStreamOutLong(PlatformCache.java:876)
   at 
org.apache.ignite.internal.processors.platform.PlatformTargetProxyImpl.inStreamOutLong(PlatformTargetProxyImpl.java:67)
Caused by: class org.apache.ignite.IgniteCheckedException: Cannot find schema 
for object with compact footer 
[typeName=Barclays.EM.RealTime.Api.Cache.Infrastructure.SqlEntity.RuleGroup, 
typeId=1470322919, missingSchemaId=267904191, existingSchemaIds=[]]
   at 
org.apache.ignite.internal.util.IgniteUtils.cast(IgniteUtils.java:7929)
   at 
org.apache.ignite.internal.processors.cache.GridCacheContext.validateKeyAndValue(GridCacheContext.java:1861)
   at 
org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridNearAtomicSingleUpdateFuture.mapSingleUpdate(GridNearAtomicSingleUpdateFuture.java:550)
   at 
org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridNearAtomicSingleUpdateFuture.map(GridNearAtomicSingleUpdateFuture.java:452)
   at 
org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridNearAtomicSingleUpdateFuture.mapOnTopology(GridNearAtomicSingleUpdateFuture.java:441)
   at 
org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridNearAtomicAbstractUpdateFuture.map(GridNearAtomicAbstractUpdateFuture.java:249)
   at 
org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridDhtAtomicCache.update0(GridDhtAtomicCache.java:1133)
   at 
org.apache.ignite.internal.processors.cache.distributed.dht.atomic.GridDhtAtomicCache.put0(GridDhtAtomicCache.java:601)
   at 
org.apache.ignite.internal.processors.cache.GridCacheAdapter.put(GridCacheAdapter.java:2480)
   at 
org.apache.ignite.internal.processors.cache.GridCacheAdapter.put(GridCacheAdapter.java:2459)
   at 
org.apache.ignite.internal.processors.cache.IgniteCacheProxyImpl.put(IgniteCacheProxyImpl.java:1317)

Regards
Satyajit

Barclays Execution Services Limited registered in England. Registered No. 
1767980. Registered office: 1 Churchill Place, London, E14 5HP

Barclays Execution Services Limited provides support and administrative 
services across Barclays group. Barclays Execution Services Limited is an 
appointed representative of Barclays Bank UK plc, Barclays Bank plc and 
Clydesdale Financial Services Limited. Barclays Bank UK plc and Barclays Bank 
plc are authorised by the Prudential Regulation Authority and regulated by the 
Financial Conduct Authority and the Prudential Regulation Authority. Clydesdale 
Financial Services Limited is authorised and regulated by the Financial Conduct 
Authority.

This email and any attachments are confidential and intended solely for the 
addressee and may also be privileged or exempt from disclosure under applicable 
law. If you are not the addressee, or have received this email in error, please 
notify the sender and immediately delete it and any attachments from your 
system. Do not copy, use, disclose or otherwise act on any part of this email 
or its attachments.

Internet communications are not guaranteed to be secure or virus-free. The 
Barclays group does not accept responsibility for

Re: select * throws cannot find schema for object with compact footer

2021-05-24 Thread Alex Plehanov
Hello,

Probably related to [1] (Fixed in Ignite 2.9)

[1]: https://issues.apache.org/jira/browse/IGNITE-13192

пн, 24 мая 2021 г. в 18:55, Naveen :

> When I tried to retrieve the fields of the binary object it does throw
> exception, after deleting all such records, it started working fine. We do
> have these records earlier also and worked fine, never had any issues, not
> sure what has caused this issue all of a sudden
>
> Thanks
>
>
>
> --
> Sent from: http://apache-ignite-users.70518.x6.nabble.com/
>


Re: select * throws cannot find schema for object with compact footer

2021-05-24 Thread Naveen
When I tried to retrieve the fields of the binary object it does throw
exception, after deleting all such records, it started working fine. We do
have these records earlier also and worked fine, never had any issues, not
sure what has caused this issue all of a sudden

Thanks



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/


Re: select * throws cannot find schema for object with compact footer

2021-05-24 Thread Ilya Kasnacheev
Hello!

Please refer to
https://ignite.apache.org/docs/latest/key-value-api/binary-objects#recommendations-on-binary-objects-tuning

It seems that some of the rows in the table has a layout of data which is
not present on any of nodes. So Ignite does not know how to unpack these
rows into columns.

Maybe you have lost the contents of binary_meta directory on the nodes or
something like that.

Regards,
-- 
Ilya Kasnacheev


пн, 24 мая 2021 г. в 15:50, Naveen :

> HI
>
> We are using Ignite 2.8.1
>
> when we run select * table, it throws below exception, how ever querying
> for
> a specific key works fine.
> what could have gone wrong here ? Anything we can make out with these ids
> mentioned below
> Error: Failed to execute map query on remote node
> [nodeId=3db2b3e5-21ae-46ad-9b14-cf3a1c8171de, errMsg=Failed to execute SQL
> query. General error: "class
> org.apache.ignite.binary.BinaryObjectException:
> Cannot find schema for object with compact footer
> [typeName=org.ignite.model.curated.Account, typeId=-2143671743,
> missingSchemaId=319535867, existingSchemaIds=[-284217025, -131460726,
> 738773736, -361085461, 130249633, -1686791135, 670818893, 1018521906,
> -978489660, 1225415027, 1484800635, 469100171]]"; SQL statement:
>
> [2021-05-24 16:42:58,117][WARN
> ][client-connector-#78][CacheObjectBinaryProcessorImpl] Schema is missing
> while no metadata updates are in progress (will wait for schema update
> within timeout defined by IGNITE_WAIT_SCHEMA_UPDATE system property)
> [typeId=-2143671743, missingSchemaId=319535867, pendingVer=3,
> acceptedVer=3,
> binMetaUpdateTimeout=3]
>
> Thanks
>
>
>
>
>
> --
> Sent from: http://apache-ignite-users.70518.x6.nabble.com/
>


select * throws cannot find schema for object with compact footer

2021-05-24 Thread Naveen
HI 

We are using Ignite 2.8.1

when we run select * table, it throws below exception, how ever querying for
a specific key works fine.
what could have gone wrong here ? Anything we can make out with these ids
mentioned below
Error: Failed to execute map query on remote node
[nodeId=3db2b3e5-21ae-46ad-9b14-cf3a1c8171de, errMsg=Failed to execute SQL
query. General error: "class org.apache.ignite.binary.BinaryObjectException:
Cannot find schema for object with compact footer
[typeName=org.ignite.model.curated.Account, typeId=-2143671743,
missingSchemaId=319535867, existingSchemaIds=[-284217025, -131460726,
738773736, -361085461, 130249633, -1686791135, 670818893, 1018521906,
-978489660, 1225415027, 1484800635, 469100171]]"; SQL statement:

[2021-05-24 16:42:58,117][WARN
][client-connector-#78][CacheObjectBinaryProcessorImpl] Schema is missing
while no metadata updates are in progress (will wait for schema update
within timeout defined by IGNITE_WAIT_SCHEMA_UPDATE system property)
[typeId=-2143671743, missingSchemaId=319535867, pendingVer=3, acceptedVer=3,
binMetaUpdateTimeout=3]

Thanks





--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/


Re: Cannot find schema for object with compact footer

2017-10-26 Thread zshamrock
Yes, I suppose so, as it fails in the integration test, which uses the ignite
client, so the client node.



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/


Re: Cannot find schema for object with compact footer

2017-10-25 Thread slava.koptilin
Hi,

This feature relates to the underlying representation of binary objects. If
you disable the compact footer then a binary object will require a bit more
memory, but in general, this impact should not be significant, I think.

Could you please clarify where the exception is thrown? On client node?

Thanks!



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/


Re: Cannot find schema for object with compact footer

2017-10-23 Thread zshamrock
Slava, what is the consequence/price of disabling compact footer? Although it
looks like it only happens for the integration tests, and never (at least we
have not observed this problem) in production.

This is the test (we use Spock):

class SessionsCacheITSpec extends IgniteCacheITSpec {
@Inject
@Subject
IgniteCache sessionsCache

@Inject
SessionsRepository sessionsRepository

def "verify on the start sessionsCache cache is empty"() {
expect:
sessionsCache.size() == 0
}

def "verify get on non existent session id returns null"() {
setup:
def sessionId = UUID.randomUUID().toString()

when:
def session = sessionsCache.get(sessionId)

then:
session == null
}

def "verify get on the existing session id session is loaded from db"()
{
setup:
...
def session = new Session(...
)
sessionsRepository.save(session)

when:
def actualSession = sessionsCache.get(sessionId)

then:
actualSession == session
}
}

where IgniteCacheITSpec is the following:

@SpringApplicationConfiguration
@IntegrationTest
@DirtiesContext
class IgniteCacheITSpec extends Specification {

@Inject
CacheEnvironment cacheEnvironment

@Inject
@Qualifier("client")
Ignite igniteClient

@Shared
Ignite igniteServer

@Configuration
@ComponentScan([...])
static class IgniteClientConfiguration {
}

def setupSpec() {
Ignition.setClientMode(false)
igniteServer = Ignition.start(new
ClassPathResource("META-INF/grid.xml").inputStream)
}

def cleanupSpec() {
def grids = Ignition.allGrids()
// stop all clients first
grids.findAll { it.configuration().isClientMode() } forEach {
it.close() }
igniteServer.close()
}
}


where the igniteClient is defined as the spring bean in one of the
configuration class, like the following:

@Bean(name = "ignite", destroyMethod = "close")
@Qualifier("client")
public Ignite ignite() {
Ignition.setClientMode(true);
return Ignition.start(igniteConfiguration());
}

Probably that could due to usage of the @DirtiesContext, although just a
guess.



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/


Re: Cannot find schema for object with compact footer

2017-10-23 Thread slava.koptilin
Hi,

It looks like there is an issue with the binary serialization of objects.
I would suggest the following workaround:







Could you please share the code of your test? It will be very useful in
order to understand the root cause of the issue.

By the way, could you try to reproduce the issue using the latest version of
Apache Ignite?

Thanks!



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/


Cannot find schema for object with compact footer

2017-10-22 Thread zshamrock
>From time to time we get the following integration test failure (using mvn
test command). Sometimes it passes without any problems, sometime it fails,
and not necessary the same test. It never fails when running the test
standalone, i.e. from IDEA for example.

Here is the failure:

Tests run: 3, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 8.418 sec
<<< FAILURE! - in SessionLineupsCacheITSpec
verify get on the existing session id returns the corresponding session
lineups(SessionLineupsCacheITSpec)  Time elapsed: 0.142 sec  <<< ERROR!
javax.cache.CacheException: class org.apache.ignite.IgniteCheckedException:
Cannot find schema for object with compact footer [typeId=709293316,
schemaId=96980434]
at SessionLineupsCacheITSpec.verify get on the existing session id 
returns
the corresponding session lineups(SessionLineupsCacheITSpec.groovy:48)
Caused by: org.apache.ignite.IgniteCheckedException: Cannot find schema for
object with compact footer [typeId=709293316, schemaId=96980434]
at SessionLineupsCacheITSpec.verify get on the existing session id 
returns
the corresponding session lineups(SessionLineupsCacheITSpec.groovy:48)
Caused by: org.apache.ignite.binary.BinaryObjectException: Cannot find
schema for object with compact footer [typeId=709293316, schemaId=96980434]

What does it mean "Cannot find schema for object with compact footer", and
what could be the cause of this in-consistence behavior, i.e. why it passes
sometimes, and sometimes fails?



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/