Hi Sebastien,

As a general rule of thumb our examples should just be based on GA features
and should work without limitations.
ForStStateBackend is under development so I think we should rollback to v1.
I'm pretty sure we're going to reach a development phase where this is
going to work but we're not yet there.

BR,
G


On Thu, Feb 12, 2026 at 11:13 AM Sebastien Pereira <[email protected]>
wrote:

> Hi all,
>
> I'm following up on FLINK-39061 [1] and wanted to reach out because I'm
> unsure about the best path forward and would value the community's input.
>
> To summarize: The StateMachine example currently uses the State V2 API,
> which breaks canonical savepoint compatibility. This could be problematic
> for users following the example as a reference implementation.
>
> 1. Should the example be reverted to use the stable State API to maintain
> canonical savepoint compatibility?
> 2. Or should the example include documentation explicitly warning users
> about the State V2 API implications?
> 3. Is there a different approach the community would recommend?
>
> Would appreciate any feedback or guidance on whether this should be
> addressed and would be happy to help with changes if there's consensus on
> the approach.
>
> [1]  https://issues.apache.org/jira/browse/FLINK-39061
>
>
> Best regards,
>
> Seb P.
>
> On 10/02/2026, 18:48, "Sebastien Pereira (Jira)" <[email protected]> wrote:
>
> Content-Type: text/plain; charset=utf-8
> Content-Transfer-Encoding: quoted-printable
>
> -----------------------------------------
>
>              Summary: StateMachine example uses State V2 API, breaking
> cano=
> nical savepoint compatibility and version upgrade workflow
>                  Key: FLINK-39061
>                  URL:
> https://urldefense.proofpoint.com/v2/url?u=3Dhttps-3A=
>
> __issues.apache.org_jira_browse_FLINK-2D39061&d=3DDwIFaQ&c=3DBSDicqBQBDjDI9=
>
> RkVyTcHQ&r=3D0sZs1KZEg0CpfaYnaTDNBZAJABwYYOpaIlO5A6RouwU&m=3DjYEYwmo2B8Zfaf=
>
> 7Z_q9ISqh9nau_jbH4zgXotzXXSDPVHKppJ2byN_FIJ3mZadEs&s=3DbxliE2EZWOhl__HjRYES=
> 8ZptuQNaX4OUv6u1ZABS9x8&e=3D=20
>              Project: Flink
>           Issue Type: Bug
>           Components: Examples
>     Affects Versions: 2.2.0, 2.1.0, 2.0.0
>             Reporter: Sebastien Pereira
>
>
> The StateMachine example was updated to use State V2 API [1], which breaks
> =
> canonical savepoint creation (default type).=C2=A0
>
> Savepoint creation fails with *{{UnsupportedOperationException: Not
> support=
> ed yet}}* in the Jobmanager log.
>
> Problem found validating Flink 2.2.0 with Kubernetes Operator 1.13.0. Root
> =
> cause traced to State V2 pattern from example. Workaround: test
> savepointin=
> g using=C2=A0
> TopSpeedWindowing example.
>
> I appreciate examples are usually meant to showcase new capabilities.
> Howev=
> er,=C2=A0 StateMachineExample is the only regular example migrated from
> Sta=
> te V1 to State V2, while other State V2 examples are located in the
> (dedica=
> ted?) {{/dsv2/}} directory [5].
>
> *Should this example be reverted to State V1?*
>
> =E2=80=94
>
> State V2 API requires ForSt state backend, which does not support
> canonical=
> savepoints according to the documentation [3]
> {quote}"ForStStateBackend: Does not support canonical savepoint, full
> snaps=
> hot, changelog and file-merging checkpoints."
> {quote}
> Per community discussion [4]
> {quote}"It is possible to migrate state across state backends via
> savepoint=
> s in canonical format, once we complete the savepoint support for ForSt.
> {*=
> }This may take some time.{*}"
> {quote}
> *Is canonical savepoint support for State V2/ForSt on the roadmap?*
>
> Per mailing list discussion [4], support is planned but timeline is
> unclear.
>
> *If canonical savepoint support is far off:*
> * How do users plan State V1 =E2=86=92 State V2 migration for version port=
> ability?
> * What guidance can be provided for production workflows?
>
> ---
>
> [1] Commit 759635d - Use async state in flink-examples-streaming: [https://
> =
>
> urldefense.proofpoint.com/v2/url?u=3Dhttps-3A__github.com_apache_flink_comm=
>
> it_759635db069923233e7928af0c729285e739ada9&d=3DDwIFaQ&c=3DBSDicqBQBDjDI9Rk=
>
> VyTcHQ&r=3D0sZs1KZEg0CpfaYnaTDNBZAJABwYYOpaIlO5A6RouwU&m=3DjYEYwmo2B8Zfaf7Z=
>
> _q9ISqh9nau_jbH4zgXotzXXSDPVHKppJ2byN_FIJ3mZadEs&s=3DJj1tFjleE-LTlP3x1QM_D1=
> X_evtXZwyyenH50UsGaNg&e=3D
> <http://urldefense.proofpoint.com/v2/url?u=3Dhttps-3A__github.com_apache_flink_comm=it_759635db069923233e7928af0c729285e739ada9&d=3DDwIFaQ&c=3DBSDicqBQBDjDI9Rk=VyTcHQ&r=3D0sZs1KZEg0CpfaYnaTDNBZAJABwYYOpaIlO5A6RouwU&m=3DjYEYwmo2B8Zfaf7Z=_q9ISqh9nau_jbH4zgXotzXXSDPVHKppJ2byN_FIJ3mZadEs&s=3DJj1tFjleE-LTlP3x1QM_D1=X_evtXZwyyenH50UsGaNg&e=3D>
> ]
>
> [2] Upgrading Applications and Flink Versions: [
> https://urldefense.proofpoi=
>
> nt.com/v2/url?u=3Dhttps-3A__nightlies.apache.org_flink_flink-2Ddocs-2Dmaste=
>
> r_docs_ops_upgrading_&d=3DDwIFaQ&c=3DBSDicqBQBDjDI9RkVyTcHQ&r=3D0sZs1KZEg0C=
>
> pfaYnaTDNBZAJABwYYOpaIlO5A6RouwU&m=3DjYEYwmo2B8Zfaf7Z_q9ISqh9nau_jbH4zgXotz=
>
> XXSDPVHKppJ2byN_FIJ3mZadEs&s=3DbnSNbwy3ME89gJjdtipX9OX4DtxTOA_cZAXC3XCXvp8&=
> e=3D
> <http://nt.com/v2/url?u=3Dhttps-3A__nightlies.apache.org_flink_flink-2Ddocs-2Dmaste=r_docs_ops_upgrading_&d=3DDwIFaQ&c=3DBSDicqBQBDjDI9RkVyTcHQ&r=3D0sZs1KZEg0C=pfaYnaTDNBZAJABwYYOpaIlO5A6RouwU&m=3DjYEYwmo2B8Zfaf7Z_q9ISqh9nau_jbH4zgXotz=XXSDPVHKppJ2byN_FIJ3mZadEs&s=3DbnSNbwy3ME89gJjdtipX9OX4DtxTOA_cZAXC3XCXvp8&=e=3D>
> ]
>
> [3] State Backends Documentation: [
> https://urldefense.proofpoint.com/v2/url=
>
> ?u=3Dhttps-3A__nightlies.apache.org_flink_flink-2Ddocs-2Dmaster_docs_ops_st=
>
> ate_state-5Fbackends_&d=3DDwIFaQ&c=3DBSDicqBQBDjDI9RkVyTcHQ&r=3D0sZs1KZEg0C=
>
> pfaYnaTDNBZAJABwYYOpaIlO5A6RouwU&m=3DjYEYwmo2B8Zfaf7Z_q9ISqh9nau_jbH4zgXotz=
>
> XXSDPVHKppJ2byN_FIJ3mZadEs&s=3DLfPg-VSBtYoLuH0v18j8a5198rvkX8-V5mcTCNmU4Y8&=
> e=3D
> <https://urldefense.proofpoint.com/v2/url=?u=3Dhttps-3A__nightlies.apache.org_flink_flink-2Ddocs-2Dmaster_docs_ops_st=ate_state-5Fbackends_&d=3DDwIFaQ&c=3DBSDicqBQBDjDI9RkVyTcHQ&r=3D0sZs1KZEg0C=pfaYnaTDNBZAJABwYYOpaIlO5A6RouwU&m=3DjYEYwmo2B8Zfaf7Z_q9ISqh9nau_jbH4zgXotz=XXSDPVHKppJ2byN_FIJ3mZadEs&s=3DLfPg-VSBtYoLuH0v18j8a5198rvkX8-V5mcTCNmU4Y8&=e=3D>
> ]
>
> [4] Mailing list discussion - Flink V1 to V2 state migration (Nov 11,
> 2024)=
> : [
> https://urldefense.proofpoint.com/v2/url?u=3Dhttps-3A__www.mail-2Darchiv=
>
> e.com_dev-40flink.apache.org_msg78875.html&d=3DDwIFaQ&c=3DBSDicqBQBDjDI9RkV=
>
> yTcHQ&r=3D0sZs1KZEg0CpfaYnaTDNBZAJABwYYOpaIlO5A6RouwU&m=3DjYEYwmo2B8Zfaf7Z_=
>
> q9ISqh9nau_jbH4zgXotzXXSDPVHKppJ2byN_FIJ3mZadEs&s=3D-0dmqoXDljoJ_5vEg_noyTt=
> Vxw2rbo5k8TqpbwLZRDI&e=3D
> <https://urldefense.proofpoint.com/v2/url?u=3Dhttps-3A__www.mail-2Darchiv=e.com_dev-40flink.apache.org_msg78875.html&d=3DDwIFaQ&c=3DBSDicqBQBDjDI9RkV=yTcHQ&r=3D0sZs1KZEg0CpfaYnaTDNBZAJABwYYOpaIlO5A6RouwU&m=3DjYEYwmo2B8Zfaf7Z_=q9ISqh9nau_jbH4zgXotzXXSDPVHKppJ2byN_FIJ3mZadEs&s=3D-0dmqoXDljoJ_5vEg_noyTt=Vxw2rbo5k8TqpbwLZRDI&e=3D>
> ]
>
> [5] DataStream V2 examples directory: [
> https://urldefense.proofpoint.com/v2=
>
> /url?u=3Dhttps-3A__github.com_apache_flink_tree_release-2D2.2.0_flink-2Dexa=
>
> mples_flink-2Dexamples-2Dstreaming_src_main_java_org_apache_flink_streaming=
>
> _examples_dsv2&d=3DDwIFaQ&c=3DBSDicqBQBDjDI9RkVyTcHQ&r=3D0sZs1KZEg0CpfaYnaT=
>
> DNBZAJABwYYOpaIlO5A6RouwU&m=3DjYEYwmo2B8Zfaf7Z_q9ISqh9nau_jbH4zgXotzXXSDPVH=
> KppJ2byN_FIJ3mZadEs&s=3DdNwkW0Ajz3uqBT0T2vqvjBq_w77Nok9If8b7iy0wWmk&e=3D
> <https://urldefense.proofpoint.com/v2=/url?u=3Dhttps-3A__github.com_apache_flink_tree_release-2D2.2.0_flink-2Dexa=mples_flink-2Dexamples-2Dstreaming_src_main_java_org_apache_flink_streaming=_examples_dsv2&d=3DDwIFaQ&c=3DBSDicqBQBDjDI9RkVyTcHQ&r=3D0sZs1KZEg0CpfaYnaT=DNBZAJABwYYOpaIlO5A6RouwU&m=3DjYEYwmo2B8Zfaf7Z_q9ISqh9nau_jbH4zgXotzXXSDPVH=KppJ2byN_FIJ3mZadEs&s=3DdNwkW0Ajz3uqBT0T2vqvjBq_w77Nok9If8b7iy0wWmk&e=3D>
> ]
>
>
>
> --
> This message was sent by Atlassian Jira
> (v8.20.10#820010)
>
>
>
>
>
> Regards,
>
> Sebastien Pereira
>
> Unless otherwise stated above:
>
> Compagnie IBM France
> Siège Social : 17, avenue de l'Europe, 92275 Bois-Colombes Cedex
> RCS Nanterre 552 118 465
> Forme Sociale : S.A.S.
> Capital Social : 664 614 175,50 €
> SIRET : 552 118 465 03644 - Code NAF 6203Z
>

Reply via email to