[Java lista] Disk cache ürítés?
Hatalyák Gyula
hatalyak.gyula at invitel.hu
2006. Okt. 23., H, 16:39:01 CEST
Sziasztok!
A következő a problémám:
Egy adatbázisról készítek egy backupot egy könyvtárba (programból).
Ezután ezt a könyvtárat össze szeretném csomagolni egy rar fájlba.
Ezt a WinRAR rar.exe fájljával teszem/tenném a következőképpen:
String backupdirectory = ...;
Runtime MyRuntime = Runtime.getRuntime();
Process MyProcess = MyRuntime.exec("cmd /c rar a d:/mybackups.rar " +
backupdirectory);
A helyzet az, hogy az alkalmazott utasítás Windows command line-ból szépen
lefut ahogyan kell, de programból a következő történik:
Létrehozza a mybacksup.rar fájlt, és ír bele 2-3KB-t. A program nem
blokkolódik, minden megy tovább, azonban a a létrehozott rar fájl még nincs
készen, mert megnyitni nem tudom és a tömörítendő mappát sem tudom törölni
(manuálisan). Gondolom, mind2 foglalva van. Igazából ezt servletből (meg
most már session beanből) próbáltam. A dolgot csak Sun Appserver (8.2)
restart oldja meg, még redeploy sem. Tehát appserver restart (vagy stop)
után csodák csodájára a rar fájlba "megérkezik" a többi bájt is és a mappát
is elengedi. A rar fájl 200 KB alatti.
Ebből én arra következtetek, hogy valahol vmilyen cache-ban megbújik a rar
fájlba való többi adat, amit valahogyan flush-olni kellene manuálisan, vagy
beállítani az "auto-flusht". De nem tudom, hogy hol (windows / appserver /
application / container / bean / process / java?)...
Van vkinek ötlete?
Előre is köszönöm.
Üdv
Gyuszi
További információk a(z) Javalist levelezőlistáról