La forma dell'oggetto che emit
dalla tua map
la funzione deve essere la stessa dell'oggetto restituito da reduce
funzione, come risultato di una reduce
può essere reimmesso in reduce
durante l'elaborazione di un gran numero di documenti (come in questo caso).
Quindi devi cambiare il tuo emit
per emettere documenti come questo:
{userid:<xyz>, {events:[{adduser: 1}], allEventCount:1}}
{userid:<xyz>, {events:[{login: 1}], allEventCount:1}}
e poi aggiorna il tuo reduce
funzionare di conseguenza.