                 semaRelease()
                 return null
 
+            changedFieldSpecs = []
             watcherMatcher = makeWatcherMatcher instanceId, mutableOldValues, mutableNewValues
+
+            console.log "ResetWatchersHelper: <#{modelName} #{JSON.stringify instanceId}> with changes to
+                #{JSON.stringify changedFieldSpecs}"
 
             watcherMatcherLength = JSON.stringify(watcherMatcher).length
             if watcherMatcherLength > 10000

            $set: setter
        )

        wrappedValue


    resetWatchers: (modelName, instanceId, oldDoc, newDoc, timestamp = new Date(), callback) ->
        console.log "resetWatchers <#{modelName} #{JSON.stringify(instanceId)}>",
            JSON.stringify
                oldDoc: _.keys(oldDoc)
                oldReactives: _.keys(oldDoc._reactives ? {})
                newDoc: _.keys(newDoc)
                newReactives: _.keys(newDoc._reactives ? {})

        # Total number of running calls to resetWatchersHelper
        semaphore = 0


        if J._reactiveCalcQueue.length > 0
            console.log "    (#{J._reactiveCalcQueue.length} more in queue)"

        oldDoc = instance.toDoc()
        oldDoc._reactives = instance._reactives

        watchedQuerySpecSet = null # watchedQsString: true
        unwrappedValue = undefined
        J._watchedQuerySpecSet.withValue {}, =>
            unwrappedValue = J.Var.deepUnwrap reactiveSpec.val.call instance
            watchedQuerySpecSet = J._watchedQuerySpecSet.get()

        escapedSubdoc = J.Model._getEscapedSubdoc unwrappedValue
        if not EJSON.equals escapedSubdoc, oldDoc._reactives[reactiveName]?.val
            newDoc = _.clone oldDoc
            newDoc._reactives = _.clone oldDoc._reactives
            newDoc._reactives[reactiveName] =
                val: escapedSubdoc
            J.denorm.resetWatchers instance.modelClass.name, instance._id, oldDoc, newDoc, timestamp

        # console.log "...done recalc <#{instance.modelClass.name} #{JSON.stringify instance._id}>.#{reactiveName}"

