Problème

Les erreurs suivantes s’affichent dans les journaux d’erreurs d’auteur :

22.01.2008 12:54:29 ERROR delivery: Unhandled Exception: com.day.cq.engine.ServiceException: /usr/local/day/cq-4.2/author/data/author/crx/workspaces/live_author/blobs/f6/6a/562772914484980cb2f403e8c920/1.68.0 (Too many open files): /usr/local/day/cq-4.2/author/data/author/crx/workspaces/live_author/blobs/f6/6a/562772914484980cb2f403e8c920/1.68.0 (Too many open files) 23.01.2008 12:37:42 ERROR jmx: IO Problem parsing descriptor for com.day.cq.util.scheduler.Event java.io.FileNotFoundException: /usr/local/day/cq-4.2/author/data/author/bin/classes/com/day/cq/util/scheduler/Event.xml (Too many open files)

23.01.2008 12:48:38 ERROR webdav: Put failed: Too many open files 23.01.2008 12:48:40 ERROR webdav: Put failed: Too many open files 23.01.2008 12:49:14 ERROR webdav: Put failed: Too many open files 23.01.2008 12:50:59 ERROR adapter: Error while updating digest: java.io.FileNotFoundException: /usr/local/day/cq-4.2/author/data/author/crx/workspaces/live_author/blobs/59/94/22047a324f25bb11674aa01a7de7/1.177.0 (Too many open files) 23.01.2008 12:50:59 ERROR adapter: Error while updateing digest: java.io.FileNotFoundException: /usr/local/day/cq-4.2/author/data/author/crx/workspaces/live_author/blobs/f3/cf/f4cc11f84023a4f498cc35be08b2/1.177.0 (Too many open files)

Lorsque ces erreurs se produisent, les utilisateurs peuvent toujours se connecter en tant qu’auteur. Cependant, la page affiche les éléments manquants, les X rouges pour les images, etc. L’auteur n’est donc pas utilisable. Il est alors nécessaire d’annuler et de redémarrer manuellement les processus d’auteur.

Solution

Modifiez ce type de code comme suit :

try { InputStream ins = atom.getStream(); layer = new Layer(ins); }catch(Exception e) { // Log: exception } finally { try { if ( ins != null ) { ins.close(); ins = null; } } catch (IOException ex) { // Log: Cannot close input stream. } }

Informations supplémentaires

Cette erreur se produit lorsque le fichier contient des constructions comme la suivante :

layer = new Layer(atom.getStream());

atom.getStream ouvre un flux, mais ne ferme pas le flux à nouveau.

Ce produit est distribué sous licence Creative Commons Attribution - Pas d’utilisation commerciale - Partage à l’identique 3.0 non transposé  Les publications Twitter™ et Facebook ne sont pas couvertes par les dispositions Creative Commons.

Mentions légales   |   Politique de confidentialité en ligne