[phpBB Debug] PHP Warning: in file [ROOT]/includes/session.php on line 214: htmlspecialchars(): charset `' not supported, assuming utf-8
[phpBB Debug] PHP Warning: in file [ROOT]/includes/session.php on line 215: htmlspecialchars(): charset `' not supported, assuming utf-8
[phpBB Debug] PHP Warning: in file [ROOT]/includes/session.php on line 216: htmlspecialchars(): charset `' not supported, assuming utf-8
[phpBB Debug] PHP Warning: in file [ROOT]/includes/session.php on line 87: htmlspecialchars(): charset `' not supported, assuming utf-8
[phpBB Debug] PHP Warning: in file [ROOT]/includes/session.php on line 129: htmlspecialchars(): charset `' not supported, assuming utf-8
[phpBB Debug] PHP Warning: in file [ROOT]/includes/session.php on line 130: htmlspecialchars(): charset `' not supported, assuming utf-8
[phpBB Debug] PHP Warning: in file [ROOT]/includes/session.php on line 1685: htmlspecialchars(): charset `' not supported, assuming utf-8
PROMOTIC FORUM • View topic - Zamrzání aplikace na Win 11
Page 1 of 1

Zamrzání aplikace na Win 11

PostPosted: Tue 04. Jun 2024 13:31:43
by Hamak
Dobrý den.
Zákazník si přesunul letitou aplikaci v Promotic 8.3.32 na nový PC s Windows 11. Od té doby mu aplikace jednou, dvakrát denně zamrzne.
V logu aplikace je toto:
Code: Select all
2024.05.28 20:37:10.228  SYSTEM: Open App | Pm: Promotic8.3.32 (18.06.2020) | OS: Windows 10 | PC: hradiste (hradiste)
2024.05.28 20:37:10.463  SYSTEM: App: Promotic8.3.32 | Licence: 3882
2024.05.28 20:37:11.672  SYSTEM: CountersDt = PmFolder:382, PmNumber:2726, PmString:54, PmPanel:36, PmTimer:14, PmNumberLim:192, PmDatabase:6, PmComm:1, PmCommMsg:1, PmToolBar:1, PmData:28, PmWeb:1, PmWebInfo:1, PmOpcClient:1, PmOpcClientData:16, PmTrend:9, PmAlarmEvent:21, PmWebFolder:3, PmWorkspace:1, All:3494
2024.05.28 20:37:11.676  SYSTEM: Open App Done (1.484 s)
2024.05.28 20:37:11.777  SYSTEM: Start Rt
2024.05.28 20:37:11.790  SYSTEM: Start Rt-Pre (PmInstance from RAM)
2024.05.28 20:37:11.790  SYSTEM: Start Rt-Start
2024.05.28 20:37:13.585  SYSTEM: Start Rt-0
2024.05.28 20:37:13.586  ERROR: Count:1 Ident:ALARM/EVENT: PersistTxt:Written text truncated Note:Source
2024.05.28 20:37:15.255  ERROR: Count:1 Ident:ALARM: group:ev_ostatni:AeActivateItem failed (invalid item) Note:m281_ovl
2024.05.28 20:37:16.923  ERROR: Count:1 Ident:ALARM: group:al_ostatni:AeInactivateItem failed (invalid item) Note:m05_p
2024.05.28 20:37:17.129  SYSTEM: Start WebServer1_80
2024.05.28 20:37:17.208  SYSTEM: Start Rt-1
2024.05.28 20:37:17.249  SYSTEM: Start Rt-2a
2024.05.28 20:37:17.394  SYSTEM: Start Rt-2
2024.05.28 20:37:17.413  SYSTEM: Start Rt-Done (5.703 s)
2024.05.28 20:37:17.413  SYSTEM: CountersRt = PmFolder:381, PmNumber:2726, PmString:54, PmPanel:35, PmTimer:14, PmNumberLim:192, PmDatabase:6, PmComm:1, PmCommMsg:1, PmToolBar:1, PmData:18, PmWeb:1, PmWebInfo:1, PmOpcClient:1, PmOpcClientData:16, PmTrend:9, PmAlarmEvent:21, PmWebFolder:3, PmWorkspace:1, All:3482
2024.05.29 16:10:00.058  ERROR: Count:1 Ident:PmDatabase.Open Error ODBC: Na dočasném disku není dostatek místa.
Obecné upozornění Nelze otevřít klíč registru Temporary (volatile) Jet DSN for process 0x100c Thread 0x136c DBC 0xad141cc Jet.
Funkce SQLSetConnectAttr ovladače selhala.
, -1, State:S1001,Native:-1812,Origin:[Microsoft][Ovladač ODBC pro Microsoft Access]
State:01000,Native:1,Origin:[Microsoft][Ovladač ODBC pro Microsoft Access]
State:IM006,Native:0,Origin:[Microsoft][Správce ovladačů ODBC]
, DB\Filtry, filtry,  Note:PmDatabase.Open Error ODBC: Na dočasném disku není dostatek místa.
Obecné upozornění Nelze otevřít klíč registru Temporary (volatile) Jet DSN for process 0x100c Thread 0x136c DBC 0xad141cc Jet.
Funkce SQLSetConnectAttr ovladače selhala.
, -1, State:S1001,Native:-1812,Origin:[Microsoft][Ovladač ODBC pro Microsoft Access]
State:01000,Native:1,Origin:[Microsoft][Ovladač ODBC pro Microsoft Access]
State:IM006,Native:0,Origin:[Microsoft][Správce ovladačů ODBC]
, DB\Filtry, filtry,
2024.05.29 16:10:00.085  ERROR: Count:1 Ident:PmDatabase.Open Error ODBC: Na dočasném disku není dostatek místa.
Obecné upozornění Nelze otevřít klíč registru Temporary (volatile) Jet DSN for process 0x100c Thread 0x136c DBC 0xad105c4 Jet.
Funkce SQLSetConnectAttr ovladače selhala.
.
.
.
.
2024.05.29 16:49:04.631  ERROR: Count:1 Ident:PmPanel:/Moto,PmiRoot: /,ID=0 , Event: onPanelStartEnd, [Exception] Note:Exception
2024.05.29 16:49:15.046  SYSTEM: Calling Pm.AppStop
2024.05.29 16:49:15.046  SYSTEM: Calling StopProject: nAction=0
2024.05.29 16:49:15.058  SYSTEM: Executing AppStop
2024.05.29 16:49:15.068  SYSTEM: Stop Rt-Pre
2024.05.29 16:49:15.081  SYSTEM: Stop Rt-Pre2
2024.05.29 16:49:15.089  SYSTEM: Stop Rt
2024.05.29 16:49:15.099  SYSTEM: INFO/Statistics = Scripts-Run:9851380, Panels-Open:535, Panels-Close:535, Panels-Refresh:151794, Workspace-Open:1, Alarms-StateChange:272712, Alarms-In:272729, Alarms-Out:272729, Trends-Run:1110, Trends-In:13459, Trends-Out:13459, TreePmObject:6629457
2024.05.29 16:49:15.108  SYSTEM: INFO/WebClient = Subsystem:WinHttp, Async requests - pool size:1
2024.05.29 16:49:15.118  SYSTEM: INFO/WebServer1_80 = Nmb Requests Active:0/0, Server type:http internal, WebThreadType:1, SmallTimeout:10, BigTimeout:30
2024.05.29 16:49:15.155  ERROR: Count:1 Ident:PmOpcClientData: /Kom/OpcClient/DT4_povel, Event: onDataReceive, [Exception] Note:Exception
2024.05.29 16:49:15.161  ERROR: Count:1 Ident:ALARM: AlOff - null group
2024.05.29 16:49:16.086  SYSTEM: Stop WebServer1_80
2024.05.29 16:49:16.149  SYSTEM: Stop Rt-0
2024.05.29 16:49:16.214  SYSTEM: Stop Rt-1
2024.05.29 16:49:16.380  SYSTEM: Stop Rt-Done
2024.05.29 16:49:16.381  SYSTEM: Calling StopProject: nAction=3
2024.05.29 16:49:16.460  SYSTEM: Unhandled Exception
2024.05.29 16:49:16.460  SYSTEM: Calling StopProject: nAction=3

Zjistili jsme, že odkládácí (swapovací) soubor Windows má výchozí velikost 512MB, takže bude pravděpodobně přínosné zvětšit ho.
Parametry PC:
RAM 8 GB
systémový disk SSD 256 GB
datový disk plotnový 1TB
Aplikace Promotic běží zatím na SSD a tam i ukládá data (access).
Dotazy:
1. Souvisí chyba "2024.05.29 16:10:00.085 ERROR: Count:1 Ident:PmDatabase.Open Error ODBC: Na dočasném disku není dostatek místa." opravdu s velikostí odkládacího souboru?
2. Jak byste navrhli provozování aplikace (nastavení odkládacího souboru, umístění trendových dat, ...)?
Děkuji

Re: Zamrzání aplikace na Win 11

PostPosted: Wed 12. Jun 2024 8:06:03
by Tomáš Bräuer
Dobrý den,
přiznám se, že nevím, co chybové hlášení znamená, je to dotaz spíše na podporu Microsoft.
V každém případě při startu promotic se nepodaří správně otevřít objekt PmDatabase asi pro přístup do MDB souboru. To je velmi závažná chyba a po takovéto chybě nelze promotic dále bezpečně provozovat, může to být příčinou následných pádů nebo zmrznutí.
PmDatabase může být ve 2 módech DAO a ODBC viz https://www.promotic.eu/cz/pmdoc/Objects/Pma/PmaDatabase/Cfg/Database.htm.
1) DAO: Netuším, jestli na Win11 je ještě funkční zastaralé DAO. Pro podporu DAO jsme v dávné minulosti museli instalovat komponentu MDAC 2.7, která obsahovat Ms Jet Engine a ODBC drivery pro MDB.
2) ODBC: Pro ODBC přístup pro 32bit aplikace by ve Win11 měly být drivery nainstalovány (ODBC manager 32bit).
Této chyby se musíte zbavit. Udělejte si třeba testovací aplikaci jenom s PmDatabase objektem a zkuste Win11 nebo aplikaci upravit tak, aby k chybě nedocházelo.
PmDatabase v režimu DAO je mrtvá záležitost (v systému zůstává jenom kvůli kompatabilitě starších aplikací), v režimu ODBC je lepší použít objekt PmADO.
Hlášení naznačuje, že buď DAO nebo ODBC je chybně nakonfigurováno a selhává mu přístup k paměti. Je otázka, zda se jedná o SWAP (rozšíření paměti), protože SWAP lze úplně vypnout a windows mají sice méně paměti k dispozici, ale při 8GB RAM by to stejně jelo. Takže možná se skutečně myslí temporary soubory, které si ovládač potřebuje někde vytvořit na disku a nemá k tomu oprávnění.
Zkuste aplikaci jednou spustit jako správce s povýšenými právy. Pokud jde o práva, problém by se tím asi vyřešil.

Ad druhá část logu, tady se nedá nic říct. V obraze v PmiRoot v události onPanelStartEnd došlo k neošetřené vyjímce. A po 11s někdo vyvolal zavření aplikace.

Chce to zjistit, zda k této vyjímce dochází pravidelně, případně při otevření stejného obrazu a zkusit celý kód pro test zakomentářovat nebo dát do bloku try catch.

Pokud to dělá pravidelně, je průběh vždy stejný, stejné chyby v LOG?

Takové chyby se komunikují mailem a telefonem a hlavně je třeba poslat celý LOG bez úprav několik měsíců zpět.
S pozdravem,
Brauer