Details
-
Bug
-
Resolution: Duplicate
-
Critical
-
2.5.1, 3.0
-
Security Level: Public
-
None
-
OS X Mavericks, master branch (but occurs on 2.5.1 also)
Description
Step 0: Enable auto-failover
Step 1: Create a map function which doesn't terminate - for example:
for (i = 0; i< 10; )
{ ; }Step 2: Press 'Save'
Step 3: Press 'Show Results'
Step 4: Wait for the cluster to failover due to heartbeats being missed:
[mapreduce_errors:error,2014-07-02T14:02:58.600,n_0@192.168.0.86:<0.1282.0>:couch_set_view_updater:-do_maps/3-fun-1-:739]Bucket `beer-sample`, main group `_design/dev_death`, error mapping document `brouwerij_de_achelse_kluis-trappist_extra`: timeout
... followed by...
[ns_server:warn,2014-07-02T14:03:18.664,n_1@127.0.0.1:mb_master<0.349.0>:mb_master:handle_info:201]Skipped 8 heartbeats
[error_logger:error,2014-07-02T14:03:18.662,n_1@127.0.0.1:error_logger<0.6.0>:ale_error_logger_handler:do_log:203]Detected time forward jump (or too large erlang scheduling latency). Skipping 24 samples (or 19200 milliseconds) ({{1404306179326,
... soon after ...
[user:info,2014-07-02T14:05:18.670,n_1@127.0.0.1:mb_master<0.349.0>:mb_master:handle_info:216]Haven't heard from a higher priority node or a master, so I'm taking over.
I've attached the (merged) log from my development run.
It's worth noting here that design documents can be created by end users on some of the SDKs, so a developer can in effect DoS the cluster.