diff --git a/docs/handoff_update_romfast.md b/docs/handoff_update_romfast.md new file mode 100644 index 0000000..26735dd --- /dev/null +++ b/docs/handoff_update_romfast.md @@ -0,0 +1,341 @@ +# Handoff: actualizare blocata pe ROMFAST 10.0.20.36 (16.09.2026, seara) + +Stare, nu concluzie finala. Nimic modificat pe productie: exclusiv `SELECT`-uri. + +## Ce e DOVEDIT + +1. **Nu e problema de certificat.** `ORA-29024` vine de pe ramura a doua a lui + `CONTAFIN_ORACLE.PACK_UTILS.URL2Clob`. Cod instalat, citit din `all_source`: + - linia 285: `IF lcPowerShellDownload = '1' THEN` -> ramura 1 (curl extern); + - linia 291: `llDownloaded := DownloadFileOS(tcURL, lcDir, lcFileName);` cu `lcDir := 'DMPDIR'`; + - linia 293-301: daca a mers, citeste si `RETURN`; + - linia 305: `l_clob := HTTPURITYPE.createuri(tcURL).getclob();` <- ramura 2, cade aici; + - linia 307-313: `WHEN OTHERS` -> cleanup -> `RAISE`. + Stiva reala (`PACK_UTILS` 313 si 305) se potriveste exact. Deci ORA-29024 = ramura 1 nu a produs fisierul. + +2. **Ramura 1 E activata pe ROMFAST.** `CONTAFIN_ORACLE.SERVER_INFO`: + `POWERSHELLDOWNLOAD = 1`, `POWERSHELLTIMEOUT = 30`, + `POWERSHELLPATH = C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe`, + `ROAUPDATEPATH = D:\ROAUPDATE`. **Nu exista rand `CURLPATH`**, dar codul are fallback pe + `C:\Windows\System32\curl.exe` (`PACK_UTILS` body 690-692), deci absenta lui nu e fatala. + +3. **Esecul dureaza exact cat timeout-ul.** `all_scheduler_job_run_details`, `UPDATEROA_JOB`: + - 21:17:51 SUCCEEDED (error# 0) + - 22:10:36 FAILED, error# 29273 — pornire 22:10:05 => **31 secunde** + - 22:27:42 FAILED, error# 29273 — pornire 22:27:12 => **30 secunde** + `POWERSHELLTIMEOUT = 30`. Bucla de polling (`PACK_UTILS` body 709-713) a mers pana la capat si + `PACK_UTILS_FILE.FileExists` a intors fals. Fisierul **nu a aparut niciodata**, nu a aparut tarziu. + +4. **Corelatia temporala cu patch-ul de azi.** `all_objects`, owner `CONTAFIN_ORACLE`: + `PACK_UTILS` (spec+body), `PACK_UTILS_FILE` (spec+body) `last_ddl_time = 16.09 21:17:51`; + `PACK_UPDATE` (spec+body) `21:17:52`. Toate VALID. + Rularea de la 21:17:30-21:20:14 e cea care a **instalat** noul cod; descarcarea din ea s-a facut + inainte de recompilare, deci **cu codul vechi**. Toate rularile de DUPA recompilare (22:10, 22:27) + au esuat. => **noul `PACK_UTILS` nu a descarcat niciodata nimic cu succes pe ROMFAST.** + +5. **Serverul de update raspunde.** Masurat de pe statia de lucru, 16.09.2026: + `https://roa.romfast.ro/contafinupdate/roaupdate/` -> HTTP 200 in 0.127s. + `http://10.0.20.122/` -> 404 in 0.0016s de la `Microsoft-HTTPAPI/2.0` (normal, situl real e pe + portul 81 cu ruta `/contafinupdate/...`; 404 de la `http.sys` NU inseamna server picat). + +6. **Versiuni** (`SERVER_INFO.VERSIUNE_*`): majoritatea schemelor la `202609150001` (15.09); + `CONTAFIN_ORACLE` la `202609160003`, `ROMFAST` la `202609160005`. Actualizarea de azi a inceput si + s-a oprit pe drum. + +7. **`UPD_LOG` se goleste la fiecare rulare** (`last_ddl_time` 22:27:02 pe tabela si indecsi). + Singurul rand ramas: `16.09 22:34:38 ACTUALIZARE INCHEIATA MANUAL`. Nu e sursa de istoric. + +8. **`sys.ExecuteScriptOS`** (`all_source`, owner SYS, `last_ddl_time` 05.02.2026, deci **neatins azi**) + creeaza un job `exec_ps_<8hex>` de tip `executable` cu argumentele + `-ExecutionPolicy Bypass -File