Error when adding a single function block: Vectored exception 6

Dear Forum,
We’ve been having some issues with adding some functionalities to our existing PLCNext engineer program. I hope someone is able/willing to help us out, since we’ve run out of debugging ideas ourselves. I’ll try to summarize the issue as accurately as possible.

Summary
The issue concerns a PLCNext Engineer application (2022.6) running on an AXC F 2152 PLC (2022.6). The issue is that we cannot add any new function-blocks to an existing program. If we, for example, add a single TON timer in the “variables” tab, the build succeeds, to program uploads and starts, but the PLC application almost immediately crashes. After crashing, PLCNext Engineer is not able to connect or write other software to the PLC. The only solution seems to be to factory-reset the PLC.

Observations
* It doesn’t matter which type of function-block we try to add to that specific program, the application keeps crashing.
* It doesn’t matter if we try to use the added function-block (or just leave it unused).
* It doesn’t matter in which order we add the function block.
* It doesn’t matter which firmware version is used (we tested 2).
* It doesn’t matter which version of PLCNext Engineer is used (we tested 2)
* It doesn’t matter in which task or ESM the program is executed, it doesn’t seem to be a watchdog issue.
* We tried to go back to previous versions of our program, but the issue persisted.
* It does matter to what program we add the function block, other programs in the same project don’t have this issue. The application doesn’t crash anymore.
* It does matter what we’re trying to add to the program, a normal variable is OK, but a function-block is always an issue.
* It seems to matter if we add another variable before the new function block, sometimes it doesn’t crash if we add a bigger variable (maybe some memory leak?).
* We’re not 100% sure which log files are relevant in this case, but we found some differences in /opt/plcnext/logs/Output.log:

The last couple of lines of a **good** log:  
19.08.22 13:47:52.922 Arp.Plc.Domain.Internal.PlcManager                           INFO  - Plc state transition from 'Stop|Warm' to 'Running'
19.08.22 13:47:52.941 Arp.Services.OpcUAServer.Internal.Config.OpcUAConfigManager  WARN  - Configuration for subject alternative names is changed => replacing existing self-signed certificate
19.08.22 13:47:53.185 Arp.Services.OpcUAServer.Internal.Config.OpcUAConfigManager  INFO  - Using the self-signed certificate.
19.08.22 13:47:53.193 Arp.Services.OpcUAServer.Internal.InformationModel.Common.SampleGroupManager INFO  - SubscriptionKind is set to DirectRead
19.08.22 13:47:53.469 OpcServer                                                    INFO  - OPC UA server opened endpoint URI opc.tcp://axcf2152:4840 listening at opc.tcp://0.0.0.0:4840
19.08.22 13:47:53.470 Arp.Services.OpcUAServer.OpcUAServerComponent                INFO  - Started OPC UA Server successfully.
19.08.22 13:47:53.473 Arp.Services.OpcUAServer.Internal.Security.SessionManager    INFO  - Applying configuration for client authentication to 1 endpoints: trustAll=true, checkCRLs=false, checkIssuerCRLs=false, ignoreValidity=false

The last couple of lines of abad log:

19.08.22 13:58:08.208 Arp.Io.EthernetIP.EthernetIPComponent                        INFO  - StartPlc, startKind=Warm
19.08.22 13:58:08.208 Arp.Io.EthernetIP.EthernetIPComponent                        INFO  - 2946483008 OnPlcStarted 
19.08.22 13:58:08.303 Arp.Plc.Domain.Internal.PlcManager                           INFO  - Plc state transition from 'Stop|Warm' to 'Running'
19.08.22 13:58:15.227 Eclr                                                         ERROR - Vectored exception 6 at 0xab2d1b0e is thrown, Rfp=0xa3c7e000, Rsp=0x9ec7cb38, Rlr=0xab2d1b0f

We’re not sure how to proceed from here, so any suggestion on which log files might contain useful information is also very welcome. Thank you in advance for your help! Best regards, Gijs

Hello!
I faced with similar trouble (compile ok, crash after download), but in my case the reason was in OS base text encoding.
For testing, I have to activate UTF-8 beta support on Regional standards OS Control panel Tab. After that I unexpectedly find out that cant work with my projects anymore, in the same way as you.
So, try to downlod your project to plc from another workstation/clear virtual machine.
Pay attention to OS regional standart settings, especially, if it have to be changed after PLCNext Enginner install.
Best regards.

Hi Oleksandr,
Thank you for your suggestion! The result of the bug we face indeed seems very similar, I can imagine it was hard to find the root-cause of the issue you described. Based on your description, I’m not sure whether this the same issue we’re facing. Mainly because of the points I failed to mention before:

                                          * The specific workstation doesn't seem to matter, we tried 2 independent PC's with Windows 10 and Windows 11.
                                          * We can induce and remove the issue by adding or removing a function-block. Any other modifications to the source-code don't seem to induce the issue. 
                                          * We tried different versions of PLCNext Engineer, re-installing the toolchain multiple times.

Nonetheless, I’ll double-check our localisation settings and experiment a bit with different settings. In the meantime, I hope that other community-members of PLCNext-team members can help us with further suggestions .