[ adopilot @ 10.03.2009. 15:43 ] @
Poštovani ! Radim neke noćne servise koji trebaju da prekopaju baze od početka do kraja i da to normalizuju podatke. Kada pustim komletnu bazu on to vrti oko sat vremena i ona mu najvjerovatnije nestane prostora za log te pukne. Poruka izgleda ovako Code: The transaction log for database 'Robot_REPL' is full. To find out why space in the log cannot be reused, see the log_reuse_wait_desc column in sys.databases Skripta za punjenje izgleda ovako Code: insert into PoDanima SELECT s.art_id ,d.datum ,d.par_id ,d.mot_id ,d.skl_id ,dk.Mal_Vel ,SUM(dk.ap_sign*s.kol) kol ,sum(AP_sign*s.kol*s.nc) nci ,sum( AP_sign*(((s.kol*s.vpc)-iz_rbi1-iz_rbi2-iz_rbi3)-(s.kol*s.nc)) ) Netto_mari ,sum(AP_sign*((s.kol*s.vpc)-iz_rbi1-iz_rbi2-iz_rbi3)) pr_vr ,d.kom_ob FROM DOC d inner join SDO s on (d.id = s.doc_id) inner join dokumenti dk on (d.tip=dk.tip) WHERE (dk.prodaja=1) GROUP BY s.art_id, d.datum, d.par_id, d.mot_id, d.skl_id, dk.Mal_Vel, d.kom_ob; Postoji li šansa da ovu transakciju izvršim bez loga kako bi prošla od jednom. Za početak sam napravio ograničenje po mijesecima pa ću napraviti SP koji će ise izvršavati u vremenskom periodu a njega će vrtiti neki Cursor. Da li ima neko elegantnije riješenje kada su ovakva greška javlja, ili je moj prostor za LOG mal jer kada uradim smanjenje baze na particiji za log mi ostane slobodnih 18 GB. Unaprijed zahvalan Admir. |