mirror of
https://github.com/featurebasedb/featurebase.git
synced 2026-08-28 10:54:59 +00:00
We execute the aggregate Distinct calls after the GroupBy is complete, and we need these to act like non-remote calls in that they forward to all nodes, but like remote calls in that they bypass key translation. Added a "PreTranslated" flag to the QueryRequest to achieve this. Discovered an issue where a nil *Row in EmbeddedData would cause a panic in the protobuf serialization. Changed the encoding code we control to never pass a nil *Row. Got fed up with lack of context on errors and added wrapping to all calls under executor.executeCall as well as a few other places. Handled a situation where not having data on a shard for a particular field could cause a query to error instead of just treating that fragment as being empty. (see the switch in executeDistinctShardSet) Stopped GroupBy from executing the Count(Distinct) aggregate on Remote calls. Fixed a longstanding issue where errors retrieved from remote query calls had a garbage character at the front due to treating a protobuf payload as an error message instead of decoding it. (see http/client.go) |
||
|---|---|---|
| .. | ||
| proto.go | ||