bug fixed: infinite loop for empty reducer