मैं riak/riak-js और निम्नलिखित समस्या में पड़ के साथ संयोजन में एक NodeJS आवेदन पर काम कर रहा हूँ:Riak MapReduce प्रश्नों में विफल रहता है। उपयोग करने के लिए कौन सी विन्यास?
इस अनुरोध
db.mapreduce
.add('logs')
.run();
corretly साथ बाल्टी लॉग में संग्रहीत सभी 155.000 आइटम रिटर्न चल रहा है उनके आईडी:
[ 'logs', '1GXtBX2LvXpcPeeR89IuipRUFmB' ],
[ 'logs', '63vL86NZ96JptsHifW8JDgRjiCv' ],
[ 'logs', 'NfseTamulBjwVOenbeWoMSNRZnr' ],
[ 'logs', 'VzNouzHc7B7bSzvNeI1xoQ5ih8J' ],
[ 'logs', 'UBM1IDcbZkMW4iRWdvo4W7zp6dc' ],
[ 'logs', 'FtNhPxaay4XI9qfh4Cf9LFO1Oai' ],
....
अगर मैं एक नक्शा-Funktion निर्दिष्ट और बाल्टी में केवल एक आइटम के कुछ का उपयोग लॉग
db.mapreduce
.add([['logs', 'SUgJ2fhfgyR2WE87n7IVHyBi4C9'], ['logs', 'EMtywD1UFnsq9rNRuINLzDsHdh2'], ['logs', 'ZXPh5ws8mOdASQFEtLDk8CBRn8t']])
.map(function(v) {return ["asd"]; })
.run();
सब कुछ ठीक काम कर रहा है और निम्न, अपेक्षित आउटपुट दिया जाता है:
[ 'asd', 'asd', 'asd' ]
मैं अब riak बाल्टी "लॉग" में सभी आइटम (155.000 के बारे में छोटे json डॉक्स) को मैप करने के
db.mapreduce
.add('logs')
.map(function(v) {return ["asd"]; })
.run();
चाहते हैं
{ [Error: [object Object]] message: '[object Object]', statusCode: 500 }
यहाँ क्या होता है:
मैं केवल त्रुटियों का सामना करना? त्रुटि-वस्तु में कुछ भी उपयोगी नहीं लिखा गया है।
अद्यतन: riak-सांत्वना कहते हैं निम्नलिखित कई बार:
[notice] JS call failed: All VMs are busy.
riaks में map_js_vm_count बढ़ाने के बाद से 36 app.config, संदेश में बदल जाता है:
[error] Pipe worker startup failed:fitting was gone before startup
लिंक: Basho Labs Riak Driver riak-js
हाय ब्रायन, अपने उत्कृष्ट जवाब के लिए धन्यवाद, यह riak की एक गहरी ज्ञान के लिए एक बहुत मदद की। आप सही हैं, मैं डिफ़ॉल्ट-एक-नोड विकास क्लस्टर का उपयोग कर रहा हूं। आपके द्वारा वर्णित अंगूठी के आकार को 8 तक कम करने के बाद, सब कुछ ठीक काम करता है। –