reconnect freals, passback errors correctly
only notify the spark if necessary
udpate