End time was included in the check for a point. This meant a
point that was truncated and landed on the end time could fall
in both the prior and next shard groups. For example, a range
17:00-18:00 and 18:00-19:00 would both include a point that was
at 18:00.
This can happen, though is very unlikely. If this node receives encoded
data, to be written to disk, and is queried for that data before its
metastore is updated, there will be no field mapping for the data during
decode. All this can happen because data is encoded by the node that first
received the write request, not the node that actually writes the data to
disk. So if this happens, skip the data.
This fixes all "golint" warnings in the top-level "influxdb" package:
database.go:316:2: can probably use "var tagStrings []string" instead
database.go:1077:6: exported type RetentionPolicies should have comment or be unexported
server.go:337:1: exported method Server.StartSelfMonitoring should have comment or be unexported
server.go:345:3: can probably use "var points []Point" instead
server.go:433:2: can probably use "var groups []group" instead
server.go:498:2: can probably use "var groups []group" instead
server.go:1417:1: comment on exported method Server.CreateRetentionPolicyIfNotExists should be of the form "CreateRetentionPolicyIfNotExists ..."
server.go:1899:1: exported method Server.DropMeasurement should have comment or be unexported
server.go:2153:10: if block ends with a return statement, so drop this else and outdent its block
server.go:2695:2: can probably use "var rows []*influxql.Row" instead
server.go:2876:11: if block ends with a return statement, so drop this else and outdent its block
server.go:3804:1: exported method Server.StartReportingLoop should have comment or be unexported
tx.go:133:4: can probably use "var mappers []influxql.Mapper" instead
tx.go:231:1: exported method LocalMapper.Open should have comment or be unexported
tx.go:254:1: exported method LocalMapper.Close should have comment or be unexported
tx.go:348:1: exported method LocalMapper.Next should have comment or be unexported
1) Pre create shard groups
2) Calculate and save the ShardGroupDuration for Retention Policies. This should never change even if they alter a retention policy in the future