Bonjour à tous,
Je rencontre un gros problème avec mon programme Java.
Pour faire simple, je lance une sorte d'indexation de fichiers via un parcours récursif. Etant donnée l'énorme arborescence à parcourir...Java 6 ne permettait pas de faire ce parcours. Du coup j'utilise la version 7 avec une classe de héritant de "SimpleFileVisitor" et l'appel "Files.walkFileTree" qui va bien.
Pour information les dossiers scannés sont accessibles via SFU...
Le but du parcours récursif est de créer un CSV qui sera chargé plus tard via "SQLLoader".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Path start = FileSystems.getDefault().getPath(rod.getPathDfs()); writer = new PrintWriter(new FileWriter(_sqlCvsPath)); Files.walkFileTree(start, new RODSimpleFileVisitor<Path>(this.rod, writer)); writer.close();
Le problème vien du fait que parfois, le scan s'arrête sans raison apparente en plein milieu d'une ligne...et le message "Ressources insuffisante" apparaît.
Je n'ai pas d'exception...et parfois mon programme reste un "zombie" (impossible à tuer d'ailleurs).
Chose étrange seul Windows XP semble affecté par le problème (Windows 7 non).
Pour compliquer les choses...mon indexation est lancé sur un cluster de machine via LSF. Du coup d'autres "indexations" se lancent et là par contre je lève des exceptions à la pelle du type :
java.nio.file.FileSystemException: [...] Insufficient system resources exist to complete the requested service.
java.io.IOException: Ressources système insuffisantes pour terminer le service demandé
java.nio.file.FileSystemException:[...]: Les informations de configuration n'ont pas pu être lues sur le contrôleur de domaine car l'ordinateur n'est pas disponible ou l'accès a été refusé.
etc...
J'ai essayé de modifier les paramètres mémoire (-Xmx) de Java mais cela ne résout rien...
Qu'en pensez-vous..?
Merci par avance.
Partager