Thanks for the comments. I just realized the rule of exception handling within the javascript of Alfresco. The try/catch block looks like runnig well in the script, however the error is not ignored by the Alfresco rule. Looks like this is a design intention of the Alfresco rules, though it would be weird to me.
As for the ignore_send_failure parameter… Actually what I want is NOT to propagate an error when sending an email. Because I would like the creation of document be success anyway, no matter whether a mail is sent properly or not. Furthermore, the mail would be sent to a couple of users. If the mail address of one user is not right, it doesn't make sense to stop sending to the other users… In this case, shall I set it to ignore_send_failure = true?
BTW, where to find the official documents of the send mail action? In the doc of Alfresco, I can only find the high level documentation of actions but not the specific ones.