You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Anton Vinogradov (Jira)" <ji...@apache.org> on 2023/10/02 14:52:00 UTC

[jira] [Assigned] (IGNITE-20528) CDC doesn't work if the "Cache objects transformation" is applied

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

Anton Vinogradov reassigned IGNITE-20528:
-----------------------------------------

    Assignee: Anton Vinogradov

> 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
>            Assignee: Anton Vinogradov
>            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)