Hi guys, i meet the same question, but i use a different way to init: ``` val list = ... //i use jdbc to get the init data val dimensionInitStream = env.fromCollection(list) //the main stream and the `dimensionStream` is a stream from flink cdc val dimension = dimensionStream.union(dimensionInitStream).broadcast(descriptor) ... ``` then the main stream can connect the broadcast state... emmmm... i dont know why it works, how do you think about that?
Guowei Ma wrote > Hi, Nick > You might need to handle it yourself If you have to process an element > only after you get the broadcast state. > For example, you could “cache” the element to the state and handle it > when the element from the broadcast side elements are arrived. Specially > if > you are using the `KeyedBroadcastProcessFunction` you could use the > `applyToKeyedState` to access the element you cache before. > > Best, > Guowei > > > On Mon, Jan 25, 2021 at 10:24 AM Nick Bendtner < > buggie89@ > > wrote: > >> Hi guys, >> What is the way to initialize broadcast state(say with default values) >> before the first element shows up in the broadcasting stream? I do a >> lookup >> on the broadcast state to process transactions which come from another >> stream. The problem is the broadcast state is empty until the first >> element >> shows up. >> >> >> Best, >> Nick. >> -- Sent from: http://apache-flink-user-mailing-list-archive.2336050.n4.nabble.com/