You are viewing a plain text version of this content. The canonical link for it is here.
Posted to github@arrow.apache.org by GitBox <gi...@apache.org> on 2022/06/03 02:32:51 UTC

[GitHub] [arrow] westonpace commented on a diff in pull request #13218: ARROW-16590: [C++] Consolidate files dealing with row-major storage

westonpace commented on code in PR #13218:
URL: https://github.com/apache/arrow/pull/13218#discussion_r888562981


##########
cpp/src/arrow/compute/exec/key_hash.h:
##########
@@ -45,8 +45,8 @@ class ARROW_EXPORT Hashing32 {
   friend void TestBloomSmall(BloomFilterBuildStrategy, int64_t, int, bool, bool);
 
  public:
-  static void HashMultiColumn(const std::vector<KeyColumnArray>& cols,
-                              KeyEncoder::KeyEncoderContext* ctx, uint32_t* out_hash);
+  static void HashMultiColumn(const std::vector<KeyColumnArray>& cols, LightContext* ctx,
+                              uint32_t* out_hash);

Review Comment:
   Yes, that is what it is.  It is essentially a namespace to distinguish between 32bit and 64bit implementations.  `Hashing32::HashBatch` will hash rows into `uint32_t` while `Hashing64::HashBatch` will hash rows into `uint64_t`.  Would a namespace be an option? (e.g. `arrow::compute::hash32::HashBatch`)
   
   Alternatively, I suppose we could rename all the functions (e.g. `arrow::compute::HashBatch32` and `arrow::compute::HashBatch64`).
   
   Or we could template all the functions (e.g. `arrow::compute::HashBatch<uint32_t>` and `arrow::compute::HashBatch<uint64_t>`)
   
   Do we have a strong style preference here?



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscribe@arrow.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org