[ 
https://issues.apache.org/jira/browse/IGNITE-20528?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nikolay Izhikov updated IGNITE-20528:
-------------------------------------
    Labels: iep-97 ise  (was: ise)

> CDC doesn't work if the "Cache objects transformation" is applied
> -----------------------------------------------------------------
>
>                 Key: IGNITE-20528
>                 URL: https://issues.apache.org/jira/browse/IGNITE-20528
>             Project: Ignite
>          Issue Type: Bug
>            Reporter: Sergey Korotkov
>            Priority: Major
>              Labels: iep-97, ise
>
> CDC doesn't work If some cache objects transformation is applied (see the 
> [https://cwiki.apache.org/confluence/display/IGNITE/IEP-97+Cache+objects+transformation).|https://cwiki.apache.org/confluence/display/IGNITE/IEP-97+Cache+objects+transformation)]
> ignite_cdc.sh utility produces the NPE (see below). The immediate reason of 
> the NPE is that ignite_cdc.sh uses the reduced version of the context 
> (StandaloneGridKernalContext), which doesn't contain the GridCacheProcessor.
>  
> {noformat}
> [2023-10-02T10:43:32,017][ERROR][Thread-1][] Unable to convert value 
> [CacheObjectImpl [val=null, hasValBytes=true]]
> java.lang.NullPointerException: null
>   at 
> org.apache.ignite.internal.processors.cache.CacheObjectTransformerUtils.transformer(CacheObjectTransformerUtils.java:32)
>  ~[classes/:?]
>   at 
> org.apache.ignite.internal.processors.cache.CacheObjectTransformerUtils.restoreIfNecessary(CacheObjectTransformerUtils.java:120)
>  ~[classes/:?]
>   at 
> org.apache.ignite.internal.processors.cache.CacheObjectAdapter.valueFromValueBytes(CacheObjectAdapter.java:73)
>  ~[classes/:?]
>   at 
> org.apache.ignite.internal.processors.cache.CacheObjectImpl.value(CacheObjectImpl.java:92)
>  ~[classes/:?]
>   at 
> org.apache.ignite.internal.processors.cache.CacheObjectImpl.value(CacheObjectImpl.java:58)
>  ~[classes/:?]
>   at 
> org.apache.ignite.internal.pagemem.wal.record.UnwrapDataEntry.unwrappedValue(UnwrapDataEntry.java:104)
>  ~[classes/:?]
>   at 
> org.apache.ignite.internal.cdc.WalRecordsConsumer.lambda$static$c56580e2$1(WalRecordsConsumer.java:99)
>  ~[classes/:?]
>   at 
> org.apache.ignite.internal.util.lang.gridfunc.TransformFilteringIterator.nextX(TransformFilteringIterator.java:119)
>  [classes/:?]
>   at 
> org.apache.ignite.internal.util.lang.GridIteratorAdapter.next(GridIteratorAdapter.java:35)
>  [classes/:?]
>   at 
> org.apache.ignite.internal.util.lang.gridfunc.TransformFilteringIterator.hasNextX(TransformFilteringIterator.java:85)
>  [classes/:?]
>   at 
> org.apache.ignite.internal.util.lang.GridIteratorAdapter.hasNext(GridIteratorAdapter.java:45)
>  [classes/:?]
>   at 
> org.apache.ignite.cdc.AbstractCdcEventsApplier.apply(AbstractCdcEventsApplier.java:71)
>  [ignite-cdc-ext-1.0.0-SNAPSHOT.jar:?]
>   at 
> org.apache.ignite.cdc.AbstractIgniteCdcStreamer.onEvents(AbstractIgniteCdcStreamer.java:118)
>  [ignite-cdc-ext-1.0.0-SNAPSHOT.jar:?]
>   at 
> org.apache.ignite.internal.cdc.WalRecordsConsumer.onRecords(WalRecordsConsumer.java:142)
>  [classes/:?]
>   at 
> org.apache.ignite.internal.cdc.CdcMain.consumeSegmentActively(CdcMain.java:557)
>  [classes/:?]
>   at 
> org.apache.ignite.internal.cdc.CdcMain.consumeWalSegmentsUntilStopped(CdcMain.java:496)
>  [classes/:?]
>   at org.apache.ignite.internal.cdc.CdcMain.runX(CdcMain.java:344) 
> [classes/:?]
>   at org.apache.ignite.internal.cdc.CdcMain.run(CdcMain.java:283) [classes/:?]
> {noformat}
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to