[
https://issues.apache.org/jira/browse/FLINK-30498?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
tanjialiang updated FLINK-30498:
--------------------------------
Description:
Using an simple TopN SQL with table.exec.state.ttl options, statebackend use
rocksdb
{code:java}
SET table.exec.state.ttl = 1min;
CREATE TABLE `student` (
id int,
name string,
update_time bigint
) WITH (
'connector' = 'datagen',
'fields.id.kind' = 'random',
'fields.id.min' = '0',
'fields.id.max' = '100'
);
CREATE TABLE `blackhole` (
id int,
name string,
update_time bigint
) WITH (
'connector' = 'blackhole'
);
INSERT INTO blackhole
SELECT
id,
name,
update_time
FROM (
SELECT
id,
name,
update_time,
ROW_NUMBER() OVER (PARTITION BY id ORDER BY update_time DESC) AS row_num
FROM student
) AS t
WHERE t.row_num=1; {code}
It will throw an error from frocksdb
{code:java}
java.lang.UnsatisfiedLinkError:
org.rocksdb.FlinkCompactionFilter.createNewFlinkCompactionFilterConfigHolder()J
at
org.rocksdb.FlinkCompactionFilter.createNewFlinkCompactionFilterConfigHolder(Native
Method) ~[flink-dist_2.12-1.14.2.jar:?]
at
org.rocksdb.FlinkCompactionFilter.access$000(FlinkCompactionFilter.java:14)
~[flink-dist_2.12-1.14.2.jar:?]
at
org.rocksdb.FlinkCompactionFilter$ConfigHolder.<init>(FlinkCompactionFilter.java:115)
~[flink-dist_2.12-1.14.2.jar:?]
at
org.rocksdb.FlinkCompactionFilter$FlinkCompactionFilterFactory.<init>(FlinkCompactionFilter.java:142)
~[flink-dist_2.12-1.14.2.jar:?]
at
org.apache.flink.contrib.streaming.state.ttl.RocksDbTtlCompactFiltersManager.createAndSetCompactFilterFactory(RocksDbTtlCompactFiltersManager.java:84)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.contrib.streaming.state.ttl.RocksDbTtlCompactFiltersManager.setAndRegisterCompactFilterIfStateTtl(RocksDbTtlCompactFiltersManager.java:74)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.contrib.streaming.state.RocksDBOperationUtils.createColumnFamilyDescriptor(RocksDBOperationUtils.java:157)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.contrib.streaming.state.RocksDBOperationUtils.createStateInfo(RocksDBOperationUtils.java:134)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.contrib.streaming.state.RocksDBKeyedStateBackend.tryRegisterKvStateInformation(RocksDBKeyedStateBackend.java:643)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.contrib.streaming.state.RocksDBKeyedStateBackend.createInternalState(RocksDBKeyedStateBackend.java:837)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.runtime.state.ttl.TtlStateFactory.createTtlStateContext(TtlStateFactory.java:225)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.runtime.state.ttl.TtlStateFactory.createValueState(TtlStateFactory.java:148)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.runtime.state.ttl.TtlStateFactory.createState(TtlStateFactory.java:132)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.runtime.state.ttl.TtlStateFactory.createStateAndWrapWithTtlIfEnabled(TtlStateFactory.java:72)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.runtime.state.AbstractKeyedStateBackend.getOrCreateKeyedState(AbstractKeyedStateBackend.java:302)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.runtime.state.AbstractKeyedStateBackend.getPartitionedState(AbstractKeyedStateBackend.java:353)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.runtime.state.DefaultKeyedStateStore.getPartitionedState(DefaultKeyedStateStore.java:115)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.runtime.state.DefaultKeyedStateStore.getState(DefaultKeyedStateStore.java:60)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.streaming.api.operators.StreamingRuntimeContext.getState(StreamingRuntimeContext.java:203)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.table.runtime.operators.rank.FastTop1Function.open(FastTop1Function.java:114)
~[flink-table_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.api.common.functions.util.FunctionUtils.openFunction(FunctionUtils.java:34)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.streaming.api.operators.AbstractUdfStreamOperator.open(AbstractUdfStreamOperator.java:100)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.streaming.api.operators.KeyedProcessOperator.open(KeyedProcessOperator.java:55)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.streaming.runtime.tasks.RegularOperatorChain.initializeStateAndOpenOperators(RegularOperatorChain.java:110)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.streaming.runtime.tasks.StreamTask.restoreGates(StreamTask.java:711)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.streaming.runtime.tasks.StreamTaskActionExecutor$1.call(StreamTaskActionExecutor.java:55)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.streaming.runtime.tasks.StreamTask.restoreInternal(StreamTask.java:687)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.streaming.runtime.tasks.StreamTask.restore(StreamTask.java:654)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.runtime.taskmanager.Task.runWithSystemExitMonitoring(Task.java:958)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.runtime.taskmanager.Task.restoreAndInvoke(Task.java:927)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at org.apache.flink.runtime.taskmanager.Task.doRun(Task.java:766)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at org.apache.flink.runtime.taskmanager.Task.run(Task.java:575)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at java.lang.Thread.run(Thread.java:748) ~[?:1.8.0_302] {code}
I try in kubernetes application mode, it will throw an error just in 1.14, not
found in 1.15.3 and 1.16.0. And i try standalone mode in 1.14, error not found.
was:
Using an simple TopN SQL with table.exec.state.ttl options, statebackend use
rocksdb
{code:java}
SET table.exec.state.ttl = 1min;
CREATE TABLE `student` (
id int,
name string,
update_time bigint
) WITH (
'connector' = 'datagen',
'fields.id.kind' = 'random',
'fields.id.min' = '0',
'fields.id.max' = '100'
);
CREATE TABLE `blackhole` (
id int,
name string,
update_time bigint
) WITH (
'connector' = 'blackhole'
);
INSERT INTO blackhole
SELECT
id,
name,
update_time
FROM (
SELECT
id,
name,
update_time,
ROW_NUMBER() OVER (PARTITION BY id ORDER BY update_time DESC) AS row_num
FROM student
) AS t
WHERE t.row_num=1; {code}
It will throw an error from frocksdb
{code:java}
java.lang.UnsatisfiedLinkError:
org.rocksdb.FlinkCompactionFilter.createNewFlinkCompactionFilterConfigHolder()J
at
org.rocksdb.FlinkCompactionFilter.createNewFlinkCompactionFilterConfigHolder(Native
Method) ~[flink-dist_2.12-1.14.2.jar:?]
at
org.rocksdb.FlinkCompactionFilter.access$000(FlinkCompactionFilter.java:14)
~[flink-dist_2.12-1.14.2.jar:?]
at
org.rocksdb.FlinkCompactionFilter$ConfigHolder.<init>(FlinkCompactionFilter.java:115)
~[flink-dist_2.12-1.14.2.jar:?]
at
org.rocksdb.FlinkCompactionFilter$FlinkCompactionFilterFactory.<init>(FlinkCompactionFilter.java:142)
~[flink-dist_2.12-1.14.2.jar:?]
at
org.apache.flink.contrib.streaming.state.ttl.RocksDbTtlCompactFiltersManager.createAndSetCompactFilterFactory(RocksDbTtlCompactFiltersManager.java:84)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.contrib.streaming.state.ttl.RocksDbTtlCompactFiltersManager.setAndRegisterCompactFilterIfStateTtl(RocksDbTtlCompactFiltersManager.java:74)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.contrib.streaming.state.RocksDBOperationUtils.createColumnFamilyDescriptor(RocksDBOperationUtils.java:157)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.contrib.streaming.state.RocksDBOperationUtils.createStateInfo(RocksDBOperationUtils.java:134)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.contrib.streaming.state.RocksDBKeyedStateBackend.tryRegisterKvStateInformation(RocksDBKeyedStateBackend.java:643)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.contrib.streaming.state.RocksDBKeyedStateBackend.createInternalState(RocksDBKeyedStateBackend.java:837)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.runtime.state.ttl.TtlStateFactory.createTtlStateContext(TtlStateFactory.java:225)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.runtime.state.ttl.TtlStateFactory.createValueState(TtlStateFactory.java:148)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.runtime.state.ttl.TtlStateFactory.createState(TtlStateFactory.java:132)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.runtime.state.ttl.TtlStateFactory.createStateAndWrapWithTtlIfEnabled(TtlStateFactory.java:72)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.runtime.state.AbstractKeyedStateBackend.getOrCreateKeyedState(AbstractKeyedStateBackend.java:302)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.runtime.state.AbstractKeyedStateBackend.getPartitionedState(AbstractKeyedStateBackend.java:353)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.runtime.state.DefaultKeyedStateStore.getPartitionedState(DefaultKeyedStateStore.java:115)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.runtime.state.DefaultKeyedStateStore.getState(DefaultKeyedStateStore.java:60)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.streaming.api.operators.StreamingRuntimeContext.getState(StreamingRuntimeContext.java:203)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.table.runtime.operators.rank.FastTop1Function.open(FastTop1Function.java:114)
~[flink-table_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.api.common.functions.util.FunctionUtils.openFunction(FunctionUtils.java:34)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.streaming.api.operators.AbstractUdfStreamOperator.open(AbstractUdfStreamOperator.java:100)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.streaming.api.operators.KeyedProcessOperator.open(KeyedProcessOperator.java:55)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.streaming.runtime.tasks.RegularOperatorChain.initializeStateAndOpenOperators(RegularOperatorChain.java:110)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.streaming.runtime.tasks.StreamTask.restoreGates(StreamTask.java:711)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.streaming.runtime.tasks.StreamTaskActionExecutor$1.call(StreamTaskActionExecutor.java:55)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.streaming.runtime.tasks.StreamTask.restoreInternal(StreamTask.java:687)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.streaming.runtime.tasks.StreamTask.restore(StreamTask.java:654)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.runtime.taskmanager.Task.runWithSystemExitMonitoring(Task.java:958)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at
org.apache.flink.runtime.taskmanager.Task.restoreAndInvoke(Task.java:927)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at org.apache.flink.runtime.taskmanager.Task.doRun(Task.java:766)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at org.apache.flink.runtime.taskmanager.Task.run(Task.java:575)
~[flink-dist_2.12-1.14.2.jar:1.14.2]
at java.lang.Thread.run(Thread.java:748) ~[?:1.8.0_302] {code}
> frocksdb throw an UnsatisfiedLinkError
> --------------------------------------
>
> Key: FLINK-30498
> URL: https://issues.apache.org/jira/browse/FLINK-30498
> Project: Flink
> Issue Type: Bug
> Components: Runtime / State Backends
> Affects Versions: 1.14.6
> Reporter: tanjialiang
> Priority: Major
>
> Using an simple TopN SQL with table.exec.state.ttl options, statebackend use
> rocksdb
> {code:java}
> SET table.exec.state.ttl = 1min;
> CREATE TABLE `student` (
> id int,
> name string,
> update_time bigint
> ) WITH (
> 'connector' = 'datagen',
> 'fields.id.kind' = 'random',
> 'fields.id.min' = '0',
> 'fields.id.max' = '100'
> );
> CREATE TABLE `blackhole` (
> id int,
> name string,
> update_time bigint
> ) WITH (
> 'connector' = 'blackhole'
> );
> INSERT INTO blackhole
> SELECT
> id,
> name,
> update_time
> FROM (
> SELECT
> id,
> name,
> update_time,
> ROW_NUMBER() OVER (PARTITION BY id ORDER BY update_time DESC) AS
> row_num
> FROM student
> ) AS t
> WHERE t.row_num=1; {code}
> It will throw an error from frocksdb
> {code:java}
> java.lang.UnsatisfiedLinkError:
> org.rocksdb.FlinkCompactionFilter.createNewFlinkCompactionFilterConfigHolder()J
> at
> org.rocksdb.FlinkCompactionFilter.createNewFlinkCompactionFilterConfigHolder(Native
> Method) ~[flink-dist_2.12-1.14.2.jar:?]
> at
> org.rocksdb.FlinkCompactionFilter.access$000(FlinkCompactionFilter.java:14)
> ~[flink-dist_2.12-1.14.2.jar:?]
> at
> org.rocksdb.FlinkCompactionFilter$ConfigHolder.<init>(FlinkCompactionFilter.java:115)
> ~[flink-dist_2.12-1.14.2.jar:?]
> at
> org.rocksdb.FlinkCompactionFilter$FlinkCompactionFilterFactory.<init>(FlinkCompactionFilter.java:142)
> ~[flink-dist_2.12-1.14.2.jar:?]
> at
> org.apache.flink.contrib.streaming.state.ttl.RocksDbTtlCompactFiltersManager.createAndSetCompactFilterFactory(RocksDbTtlCompactFiltersManager.java:84)
> ~[flink-dist_2.12-1.14.2.jar:1.14.2]
> at
> org.apache.flink.contrib.streaming.state.ttl.RocksDbTtlCompactFiltersManager.setAndRegisterCompactFilterIfStateTtl(RocksDbTtlCompactFiltersManager.java:74)
> ~[flink-dist_2.12-1.14.2.jar:1.14.2]
> at
> org.apache.flink.contrib.streaming.state.RocksDBOperationUtils.createColumnFamilyDescriptor(RocksDBOperationUtils.java:157)
> ~[flink-dist_2.12-1.14.2.jar:1.14.2]
> at
> org.apache.flink.contrib.streaming.state.RocksDBOperationUtils.createStateInfo(RocksDBOperationUtils.java:134)
> ~[flink-dist_2.12-1.14.2.jar:1.14.2]
> at
> org.apache.flink.contrib.streaming.state.RocksDBKeyedStateBackend.tryRegisterKvStateInformation(RocksDBKeyedStateBackend.java:643)
> ~[flink-dist_2.12-1.14.2.jar:1.14.2]
> at
> org.apache.flink.contrib.streaming.state.RocksDBKeyedStateBackend.createInternalState(RocksDBKeyedStateBackend.java:837)
> ~[flink-dist_2.12-1.14.2.jar:1.14.2]
> at
> org.apache.flink.runtime.state.ttl.TtlStateFactory.createTtlStateContext(TtlStateFactory.java:225)
> ~[flink-dist_2.12-1.14.2.jar:1.14.2]
> at
> org.apache.flink.runtime.state.ttl.TtlStateFactory.createValueState(TtlStateFactory.java:148)
> ~[flink-dist_2.12-1.14.2.jar:1.14.2]
> at
> org.apache.flink.runtime.state.ttl.TtlStateFactory.createState(TtlStateFactory.java:132)
> ~[flink-dist_2.12-1.14.2.jar:1.14.2]
> at
> org.apache.flink.runtime.state.ttl.TtlStateFactory.createStateAndWrapWithTtlIfEnabled(TtlStateFactory.java:72)
> ~[flink-dist_2.12-1.14.2.jar:1.14.2]
> at
> org.apache.flink.runtime.state.AbstractKeyedStateBackend.getOrCreateKeyedState(AbstractKeyedStateBackend.java:302)
> ~[flink-dist_2.12-1.14.2.jar:1.14.2]
> at
> org.apache.flink.runtime.state.AbstractKeyedStateBackend.getPartitionedState(AbstractKeyedStateBackend.java:353)
> ~[flink-dist_2.12-1.14.2.jar:1.14.2]
> at
> org.apache.flink.runtime.state.DefaultKeyedStateStore.getPartitionedState(DefaultKeyedStateStore.java:115)
> ~[flink-dist_2.12-1.14.2.jar:1.14.2]
> at
> org.apache.flink.runtime.state.DefaultKeyedStateStore.getState(DefaultKeyedStateStore.java:60)
> ~[flink-dist_2.12-1.14.2.jar:1.14.2]
> at
> org.apache.flink.streaming.api.operators.StreamingRuntimeContext.getState(StreamingRuntimeContext.java:203)
> ~[flink-dist_2.12-1.14.2.jar:1.14.2]
> at
> org.apache.flink.table.runtime.operators.rank.FastTop1Function.open(FastTop1Function.java:114)
> ~[flink-table_2.12-1.14.2.jar:1.14.2]
> at
> org.apache.flink.api.common.functions.util.FunctionUtils.openFunction(FunctionUtils.java:34)
> ~[flink-dist_2.12-1.14.2.jar:1.14.2]
> at
> org.apache.flink.streaming.api.operators.AbstractUdfStreamOperator.open(AbstractUdfStreamOperator.java:100)
> ~[flink-dist_2.12-1.14.2.jar:1.14.2]
> at
> org.apache.flink.streaming.api.operators.KeyedProcessOperator.open(KeyedProcessOperator.java:55)
> ~[flink-dist_2.12-1.14.2.jar:1.14.2]
> at
> org.apache.flink.streaming.runtime.tasks.RegularOperatorChain.initializeStateAndOpenOperators(RegularOperatorChain.java:110)
> ~[flink-dist_2.12-1.14.2.jar:1.14.2]
> at
> org.apache.flink.streaming.runtime.tasks.StreamTask.restoreGates(StreamTask.java:711)
> ~[flink-dist_2.12-1.14.2.jar:1.14.2]
> at
> org.apache.flink.streaming.runtime.tasks.StreamTaskActionExecutor$1.call(StreamTaskActionExecutor.java:55)
> ~[flink-dist_2.12-1.14.2.jar:1.14.2]
> at
> org.apache.flink.streaming.runtime.tasks.StreamTask.restoreInternal(StreamTask.java:687)
> ~[flink-dist_2.12-1.14.2.jar:1.14.2]
> at
> org.apache.flink.streaming.runtime.tasks.StreamTask.restore(StreamTask.java:654)
> ~[flink-dist_2.12-1.14.2.jar:1.14.2]
> at
> org.apache.flink.runtime.taskmanager.Task.runWithSystemExitMonitoring(Task.java:958)
> ~[flink-dist_2.12-1.14.2.jar:1.14.2]
> at
> org.apache.flink.runtime.taskmanager.Task.restoreAndInvoke(Task.java:927)
> ~[flink-dist_2.12-1.14.2.jar:1.14.2]
> at org.apache.flink.runtime.taskmanager.Task.doRun(Task.java:766)
> ~[flink-dist_2.12-1.14.2.jar:1.14.2]
> at org.apache.flink.runtime.taskmanager.Task.run(Task.java:575)
> ~[flink-dist_2.12-1.14.2.jar:1.14.2]
> at java.lang.Thread.run(Thread.java:748) ~[?:1.8.0_302] {code}
>
> I try in kubernetes application mode, it will throw an error just in 1.14,
> not found in 1.15.3 and 1.16.0. And i try standalone mode in 1.14, error not
> found.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)