Issue: Enable golint on the code base #4098 (changes only for the cluster subpackage)
- [ ] CHANGELOG.md updated
- [X] Rebased/mergable
- [X] Tests pass
- [X] Sign [CLA](http://influxdb.com/community/cla.html) (if not already signed)
Point was accessed from multiple goroutines and there was a race on the the internal
cachedFields and cachedName fields. Accessing these fields is unnecessary work as it
requires the point to be unmarshal into Go types and then remarshaled back into protbuf
types. Instead, just send the line protocol version already available on the point via
the protobuf. This avoid accesssing these cached fields and eliminates some extra work.
Possible fix for #4069
With this change remote mapping no longer uses HTTP, as the HTTP ports
exposed by nodes on the cluster are not known cluster wide. The TCP
ports exposed by the cluster service are, so this change uses that
functionality. Each RemoteMapper has its own dedicated connection pool
for each node, and remote mapping TCP connections are in no way coupled
with query TCP connections.