$addToset do not work in update if record not exists
I resolved the issue. I made an error in the update statement. The correct version is:

db.TestColl.update({
    "tags" : "silk" ,
    "host" : "host.com"
  }, {
    "$set" : { "cat" : "MOVIE", "publishTime" : 1370427540000 },
    "$addToSet" : {
      "articleId" : { "$each" : [ "20442242" ]}} ,
      "$inc" : { "count" : 1}
  },
  true, false)