You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@quickstep.apache.org by ra...@apache.org on 2016/08/14 08:00:26 UTC
incubator-quickstep git commit: Fixed cyclic dependencies. Removed
Aggregation unit test. Other minor changes.
Repository: incubator-quickstep
Updated Branches:
refs/heads/quickstep-28-29 d9c9e6867 -> 1595e0ba7
Fixed cyclic dependencies. Removed Aggregation unit test. Other minor changes.
Project: http://git-wip-us.apache.org/repos/asf/incubator-quickstep/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-quickstep/commit/1595e0ba
Tree: http://git-wip-us.apache.org/repos/asf/incubator-quickstep/tree/1595e0ba
Diff: http://git-wip-us.apache.org/repos/asf/incubator-quickstep/diff/1595e0ba
Branch: refs/heads/quickstep-28-29
Commit: 1595e0ba702092bf5ac1c04c80212ed16f35de7f
Parents: d9c9e68
Author: rathijit <ra...@node-2.aggregation.quickstep-pg0.wisc.cloudlab.us>
Authored: Sun Aug 14 02:59:40 2016 -0500
Committer: rathijit <ra...@node-2.aggregation.quickstep-pg0.wisc.cloudlab.us>
Committed: Sun Aug 14 02:59:40 2016 -0500
----------------------------------------------------------------------
expressions/aggregation/CMakeLists.txt | 2 +-
storage/CMakeLists.txt | 2 --
storage/FastHashTable.hpp | 4 +---
storage/FastSeparateChainingHashTable.hpp | 3 ---
storage/HashTable.hpp | 10 ----------
storage/HashTableBase.hpp | 18 +++++++++++++++++-
storage/StorageBlock.cpp | 10 ++++------
7 files changed, 23 insertions(+), 26 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-quickstep/blob/1595e0ba/expressions/aggregation/CMakeLists.txt
----------------------------------------------------------------------
diff --git a/expressions/aggregation/CMakeLists.txt b/expressions/aggregation/CMakeLists.txt
index 6f259fa..9a9c1a8 100644
--- a/expressions/aggregation/CMakeLists.txt
+++ b/expressions/aggregation/CMakeLists.txt
@@ -319,4 +319,4 @@ target_link_libraries(AggregationHandle_tests
quickstep_types_operations_comparisons_Comparison
quickstep_types_operations_comparisons_ComparisonFactory
quickstep_types_operations_comparisons_ComparisonID)
-add_test(AggregationHandle_tests AggregationHandle_tests)
+#add_test(AggregationHandle_tests AggregationHandle_tests)
http://git-wip-us.apache.org/repos/asf/incubator-quickstep/blob/1595e0ba/storage/CMakeLists.txt
----------------------------------------------------------------------
diff --git a/storage/CMakeLists.txt b/storage/CMakeLists.txt
index 74b4df5..1e1050b 100644
--- a/storage/CMakeLists.txt
+++ b/storage/CMakeLists.txt
@@ -629,7 +629,6 @@ target_link_libraries(quickstep_storage_EvictionPolicy
quickstep_utility_Macros)
target_link_libraries(quickstep_storage_FastHashTable
quickstep_catalog_CatalogTypedefs
- quickstep_storage_HashTable
quickstep_storage_HashTableBase
quickstep_storage_StorageBlob
quickstep_storage_StorageBlockInfo
@@ -966,7 +965,6 @@ target_link_libraries(quickstep_storage_StorageBlock
quickstep_storage_CompressedColumnStoreTupleStorageSubBlock
quickstep_storage_CompressedPackedRowStoreTupleStorageSubBlock
quickstep_storage_CountedReference
- quickstep_storage_FastHashTable
quickstep_storage_HashTableBase
quickstep_storage_IndexSubBlock
quickstep_storage_InsertDestinationInterface
http://git-wip-us.apache.org/repos/asf/incubator-quickstep/blob/1595e0ba/storage/FastHashTable.hpp
----------------------------------------------------------------------
diff --git a/storage/FastHashTable.hpp b/storage/FastHashTable.hpp
index cba039a..e7887ab 100644
--- a/storage/FastHashTable.hpp
+++ b/storage/FastHashTable.hpp
@@ -42,7 +42,6 @@
#include "utility/BloomFilter.hpp"
#include "utility/HashPair.hpp"
#include "utility/Macros.hpp"
-#include "storage/HashTable.hpp"
namespace quickstep {
@@ -561,7 +560,7 @@ class FastHashTable : public HashTableBase<resizable,
const std::vector<std::vector<attribute_id>> &argument,
ValueAccessor *accessor,
const std::vector<attribute_id> &key_attr_ids,
- const bool check_for_null_keys);
+ const bool check_for_null_keys) override;
/**
* @brief Determine the number of entries (key-value pairs) contained in this
@@ -1322,7 +1321,6 @@ class FastHashTable : public HashTableBase<resizable,
// Used only when resizable is false:
void *hash_table_memory_;
const std::size_t hash_table_memory_size_;
-virtual size_t get_buckets_allocated() const {return 0;}
private:
// Assign '*key_vector' with the attribute values specified by 'key_attr_ids'
http://git-wip-us.apache.org/repos/asf/incubator-quickstep/blob/1595e0ba/storage/FastSeparateChainingHashTable.hpp
----------------------------------------------------------------------
diff --git a/storage/FastSeparateChainingHashTable.hpp b/storage/FastSeparateChainingHashTable.hpp
index 756d6e5..49cea5b 100644
--- a/storage/FastSeparateChainingHashTable.hpp
+++ b/storage/FastSeparateChainingHashTable.hpp
@@ -170,9 +170,6 @@ class FastSeparateChainingHashTable : public FastHashTable<resizable,
bool preallocateForBulkInsert(const std::size_t total_entries,
const std::size_t total_variable_key_size,
HashTablePreallocationState *prealloc_state) override;
-
- size_t get_buckets_allocated() const override {return header_->buckets_allocated;}
-
private:
struct Header {
std::size_t num_slots;
http://git-wip-us.apache.org/repos/asf/incubator-quickstep/blob/1595e0ba/storage/HashTable.hpp
----------------------------------------------------------------------
diff --git a/storage/HashTable.hpp b/storage/HashTable.hpp
index be31fd9..3514461 100644
--- a/storage/HashTable.hpp
+++ b/storage/HashTable.hpp
@@ -49,16 +49,6 @@ namespace quickstep {
*/
/**
- * @brief Codes which indicate the result of a call to put() or
- * putCompositeKey().
- **/
-enum class HashTablePutResult {
- kOK = 0,
- kDuplicateKey,
- kOutOfSpace
-};
-
-/**
* @brief Base class for hash table.
*
* This class is templated so that the core hash-table logic can be reused in
http://git-wip-us.apache.org/repos/asf/incubator-quickstep/blob/1595e0ba/storage/HashTableBase.hpp
----------------------------------------------------------------------
diff --git a/storage/HashTableBase.hpp b/storage/HashTableBase.hpp
index ebdf464..50d9a20 100644
--- a/storage/HashTableBase.hpp
+++ b/storage/HashTableBase.hpp
@@ -18,8 +18,10 @@
#define QUICKSTEP_STORAGE_HASH_TABLE_BASE_HPP_
#include <cstddef>
+#include <vector>
#include "utility/Macros.hpp"
+#include "ValueAccessor.hpp"
namespace quickstep {
@@ -49,6 +51,16 @@ struct HashTablePreallocationState {
};
/**
+ * @brief Codes which indicate the result of a call to put() or
+ * putCompositeKey().
+ **/
+enum class HashTablePutResult {
+ kOK = 0,
+ kDuplicateKey,
+ kOutOfSpace
+};
+
+/**
* @brief An ultra-minimal base class that HashTables with different ValueT
* parameters inherit from. This allows for a bit more type-safety than
* just passing around void* pointers (although casting will still be
@@ -63,7 +75,11 @@ class HashTableBase {
public:
virtual ~HashTableBase() {
}
-virtual size_t get_buckets_allocated() const {return 0;}
+ virtual bool upsertValueAccessorCompositeKeyFast(
+ const std::vector<std::vector<attribute_id>> &argument,
+ ValueAccessor *accessor,
+ const std::vector<attribute_id> &key_attr_ids,
+ const bool check_for_null_keys) {return false;}
protected:
HashTableBase() {
}
http://git-wip-us.apache.org/repos/asf/incubator-quickstep/blob/1595e0ba/storage/StorageBlock.cpp
----------------------------------------------------------------------
diff --git a/storage/StorageBlock.cpp b/storage/StorageBlock.cpp
index b9faa2a..7c8c101 100644
--- a/storage/StorageBlock.cpp
+++ b/storage/StorageBlock.cpp
@@ -38,7 +38,6 @@
#include "storage/CompressedPackedRowStoreTupleStorageSubBlock.hpp"
#include "storage/CountedReference.hpp"
#include "storage/HashTableBase.hpp"
-#include "storage/FastHashTable.hpp"
#include "storage/IndexSubBlock.hpp"
#include "storage/InsertDestinationInterface.hpp"
#include "storage/PackedRowStoreTupleStorageSubBlock.hpp"
@@ -573,11 +572,10 @@ void StorageBlock::aggregateGroupByFast(
}
}
- static_cast<AggregationStateFastHashTable *>(hash_table)->upsertValueAccessorCompositeKeyFast(
- argument_ids,
- &temp_result,
- key_ids,
- true);
+ hash_table->upsertValueAccessorCompositeKeyFast(argument_ids,
+ &temp_result,
+ key_ids,
+ true);
}