2013-05-30 3 views
0

Nous exécutons un replSet à 3 nœuds avec beaucoup de données et avons actuellement plus de 1500 fichiers de données.Problèmes lors du démarrage de MongoDB avec> 1023 FDs

Lors du redémarrage exemple MongoDB nous courons maintenant le problème suivant:

Thu May 30 12:11:20.326 [initandlisten] create collection local.startup_log { create: "startup_log", size: 10485760, capped: true } 
Thu May 30 12:11:20.326 [initandlisten] command local.$cmd command: { create: "startup_log", size: 10485760, capped: true } ntoreturn:1 keyUpdates:0 reslen:75 543ms 
Thu May 30 12:11:20.326 [initandlisten] info PageFaultRetryableSection will not yield, already locked upon reaching 
Thu May 30 12:11:20.326 [initandlisten] insert local.startup_log ninserted:1 keyUpdates:0 0ms 
Thu May 30 12:11:20.326 [initandlisten] fd limit hard:550000 soft:550000 max conn: 440000 
Thu May 30 12:11:20.326 [initandlisten] ERROR: socket 1203 is higher than 1023; not supported 
Thu May 30 12:11:20.326 [initandlisten] now exiting 
Thu May 30 12:11:20.326 dbexit: 

Après beaucoup de googler, on dirait qu'il a quelque chose à voir avec une limitation de FD_SETSIZE à 1024. Mais ulimit -n est réglé sur 550000, comme vous pouvez le voir dans le journal.

Je ne parviens pas à rétablir l'instance ... quelqu'un a peut-être un indice pour moi?

Merci, Oliver

+0

Sur quel système d'exploitation utilisez-vous le serveur? –

+0

Vous pouvez également jeter un oeil à [ce numéro] (https://jira.mongodb.org/browse/SERVER-8521) qui peut s'appliquer selon la version. –

+0

Il fonctionne sur RHEL 6.3. La version de MongoDB est v2.4.3, version de git: fe1743177a5ea03e91e0052fb5e2cb2945f6d95f. – user2436006

Répondre

0

code source pour ce message d'erreur est ici:

https://github.com/mongodb/mongo/blob/v2.4.1/src/mongo/util/net/listen.cpp#L205

descripteur de fichier est ici comparé à FD_SETSIZE, qui est défini dans les fichiers d'en-tête à 1024. Je ne vois pas facile comment changer cette valeur en configurant n'importe quoi (système d'exploitation, ulimits ...).

Utilisez-vous la dernière version de MongoDB? En regardant les problèmes de MongoDB, il y a eu quelques changements pour réduire le nombre de descripteurs de fichiers utilisés en n'ouvrant pas tous les fichiers au démarrage - voir le lien dans le commentaire de Joachim Isaksson.

+0

Merci les gars, ne pas ouvrir tous les fichiers au démarrage sonne bien jusqu'à présent. Mais je suis sûr que si cela a été mis en œuvre avec bump 2.4.3. – user2436006