This is an automated email from the ASF dual-hosted git repository.

ptupitsyn pushed a commit to branch ignite-2.16
in repository https://gitbox.apache.org/repos/asf/ignite.git


The following commit(s) were added to refs/heads/ignite-2.16 by this push:
     new 7d73b0b145f IGNITE-23732 .NET: Document CET crash on .NET 9 (#11677)
7d73b0b145f is described below

commit 7d73b0b145fe9c7dc07b3c85f924b76da8f2f01d
Author: Pavel Tupitsyn <[email protected]>
AuthorDate: Fri Nov 22 12:55:05 2024 +0200

    IGNITE-23732 .NET: Document CET crash on .NET 9 (#11677)
---
 docs/_docs/net-specific/net-troubleshooting.adoc | 26 ++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/docs/_docs/net-specific/net-troubleshooting.adoc 
b/docs/_docs/net-specific/net-troubleshooting.adoc
index cc4617bf255..dfd0dd15ec7 100644
--- a/docs/_docs/net-specific/net-troubleshooting.adoc
+++ b/docs/_docs/net-specific/net-troubleshooting.adoc
@@ -178,3 +178,29 @@ NativeLibrary.SetDllImportResolver(
     (lib, _, _) => lib == "libcoreclr.so" ? (IntPtr) (-1) : IntPtr.Zero);
 ----
 --
+
+=== .NET 9: Process exited with code -1073740791 (0xc0000409)
+
+Caused by Intel CET (Control-flow Enforcement Technology) being 
link:https://learn.microsoft.com/en-us/dotnet/core/compatibility/interop/9.0/cet-support[enabled
 by default for .NET 9 assemblies].
+Ignite starts a JVM in-process, which is incompatible with CET.
+
+More details:
+
+* 
link:https://learn.microsoft.com/en-us/dotnet/core/compatibility/9.0[Breaking 
changes in .NET 9]
+* link:https://windows-internals.com/cet-on-windows/[CET Internals in Windows]
+* link:https://ptupitsyn.github.io/Ignite-on-NET-9/[Blog: Ignite on .NET 9]
+
+==== Workaround
+
+Disable CET for the application by adding the following to the main project 
file (csproj, vsproj, etc):
+
+[tabs]
+--
+tab:XML[]
+[source,xml]
+----
+<PropertyGroup>
+  <CETCompat>false</CETCompat>
+</PropertyGroup>
+----
+--
\ No newline at end of file

Reply via email to