docs(oracle): SYS.INFO se recreeaza in ROA, nu se muta
DROP+CREATE in loc de ALTER TABLE MOVE: continutul e log fara valoare, iar recrearea nu cere spatiu liber cat segmentul si nu tine tabela blocata cat ar dura copierea. DROP e cu PURGE, altfel segmentul ramane in recyclebin si spatiul nu se elibereaza. SYS.pINFO ramane INVALID dupa DROP, deci se recompileaza. Scriptul de livrare: SVN r18010. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Rft5ofNa4Ux5VEh4YnhJRC
This commit is contained in:
@@ -310,15 +310,22 @@ Jobul e in schema `SYS` pentru ca privilegiile `ANY` nu se aplica pe obiectele `
|
||||
### Livrarea catre clientii existenti
|
||||
|
||||
`D:\ROA\DATABASE\SCRIPTURI_CLAR\2026\08\sys_2026_08_08_02_SYS_INFO_TABLESPACE_PURJARE.sql`
|
||||
(repo COMUN / SVN) face acelasi lucru pe bazele deja instalate, in trei pasi: purjare la 90 de zile
|
||||
→ `alter table sys.info move tablespace ROA lob (info) store as (tablespace ROA)` → crearea jobului.
|
||||
(SVN r18010) face acelasi lucru pe bazele deja instalate, in doi pasi: **recrearea** tabelei in
|
||||
tablespace-ul `ROA` (`drop table sys.info purge` + `create ... tablespace ROA lob (info) store as
|
||||
(tablespace ROA)`) → crearea jobului.
|
||||
|
||||
Pasii 1 si 2 au `EXCEPTION WHEN OTHERS THEN NULL` **intentionat**: o eroare acolo (lipsa de spatiu
|
||||
in `ROA`, tabela blocata) nu are voie sa opreasca lantul de actualizare al clientului, iar ce nu s-a
|
||||
facut se vede a doua zi in alerta `DIAGSPATIU_ZILNIC`. Scris la nivel Oracle 10.2, idempotent, CRLF.
|
||||
**Se recreeaza, nu se muta**: continutul e log fara valoare, iar `DROP`+`CREATE` nu cere spatiu
|
||||
liber cat segmentul si nu tine tabela blocata cat ar dura copierea. `DROP` e cu `PURGE`, altfel
|
||||
segmentul ramane in recyclebin si spatiul nu se elibereaza. Daca `CREATE`-ul in `ROA` esueaza,
|
||||
tabela se recreeaza in `SYSTEM`, ca sa existe intotdeauna; `SYS.pINFO` ramane `INVALID` dupa `drop`,
|
||||
deci se recompileaza explicit (s-ar recompila si singura la primul apel).
|
||||
|
||||
**Nepublicat inca** — publicarea se face cu `COMUN\utile\publicare_scripturi.ps1` si e o actiune
|
||||
catre toti clientii.
|
||||
Pasul 1 are `EXCEPTION WHEN OTHERS THEN NULL` **intentionat**: o eroare acolo nu are voie sa
|
||||
opreasca lantul de actualizare al clientului, iar ce nu s-a facut se vede a doua zi in alerta
|
||||
`DIAGSPATIU_ZILNIC`. Scris la nivel Oracle 10.2, idempotent, CRLF.
|
||||
|
||||
**Nepublicat catre clienti** — publicarea se face cu `COMUN\utile\publicare_scripturi.ps1` si scrie
|
||||
in `Y:\ROAUPDATE\_UPDATE\`, care e live pentru toti.
|
||||
|
||||
Pointeri incrucisati: [`00-INSTALL-ORACLE-XE.md`](../proxmox/lxc108-oracle/roa-windows-setup/docs/00-INSTALL-ORACLE-XE.md)
|
||||
si [`00-INSTALL-ORACLE-SE.md`](../proxmox/lxc108-oracle/roa-windows-setup/docs/00-INSTALL-ORACLE-SE.md).
|
||||
|
||||
@@ -16,18 +16,24 @@ Stare la predare. **Fara analize noi** — doar ce s-a facut, ce nu, si capcanel
|
||||
| `.../roa-windows-setup/sql/uninstall-roa.sql` | dezinstalarea sterge si jobul |
|
||||
| `.../roa-windows-setup/docs/00-INSTALL-ORACLE-XE.md` si `-SE.md` | pas post-instalare: plafon `SYSTEM` 2000M + mutarea `SYS.INFO` la instalari vechi |
|
||||
|
||||
### In SVN (r18009), **NEPUBLICAT catre clienti** — in afara acestui repo
|
||||
### In SVN (r18010), **NEPUBLICAT catre clienti** — in afara acestui repo
|
||||
|
||||
`D:\ROA\DATABASE\SCRIPTURI_CLAR\2026\08\sys_2026_08_08_02_SYS_INFO_TABLESPACE_PURJARE.sql`
|
||||
|
||||
Purjare 90 zile → `move tablespace ROA lob (info) store as (tablespace ROA)` → creare job.
|
||||
Nivel Oracle 10.2, idempotent, CRLF verificat (122 linii, 0 LF singure, 0 octeti non-ASCII).
|
||||
Pasii 1-2 au `EXCEPTION WHEN OTHERS THEN NULL` **intentionat** (o eroare acolo nu are voie sa
|
||||
Doi pasi: **recrearea** tabelei in `ROA` (`drop table sys.info purge` + `create ... tablespace ROA
|
||||
lob (info) store as (tablespace ROA)` + `alter procedure sys.pinfo compile`) → creare job.
|
||||
Nivel Oracle 10.2, idempotent, CRLF verificat (103 linii, 0 LF singure, 0 octeti non-ASCII).
|
||||
|
||||
**r18009 muta tabela** (`alter table ... move`); **r18010 o recreeaza** — decizia lui Marius:
|
||||
continutul e log fara valoare, iar `DROP`+`CREATE` nu cere spatiu liber cat segmentul si nu tine
|
||||
tabela blocata. `PURGE` e obligatoriu (altfel segmentul ramane in recyclebin). Fallback pe `SYSTEM`
|
||||
daca `CREATE`-ul in `ROA` esueaza, ca tabela sa existe intotdeauna.
|
||||
|
||||
Pasul 1 are `EXCEPTION WHEN OTHERS THEN NULL` **intentionat** (o eroare acolo nu are voie sa
|
||||
opreasca lantul de actualizare; ce n-a mers apare a doua zi in alerta `DIAGSPATIU_ZILNIC`).
|
||||
|
||||
Comis in SVN la **r18009** (08.08.2026). **Publicarea catre clienti NU s-a facut si e decizia lui
|
||||
Marius** — `COMUN\utile\publicare_scripturi.ps1` scrie in `Y:\ROAUPDATE\_UPDATE\`, care e live
|
||||
pentru toti clientii.
|
||||
**Publicarea catre clienti NU s-a facut si e decizia lui Marius** —
|
||||
`COMUN\utile\publicare_scripturi.ps1` scrie in `Y:\ROAUPDATE\_UPDATE\`, care e live pentru toti.
|
||||
|
||||
## 2. Modificari aplicate in productie
|
||||
|
||||
|
||||
Reference in New Issue
Block a user