[Groonga-commit] groonga/grnxx at 505f353 [master] Enable the 3rd argument of grnxx:map::BytesArray.

Back to archive index

susumu.yata null+****@clear*****
Thu Jul 18 19:39:34 JST 2013


susumu.yata	2013-07-18 19:39:34 +0900 (Thu, 18 Jul 2013)

  New Revision: 505f3538bcc833671016f7ac3039a4894f7e9789
  https://github.com/groonga/grnxx/commit/505f3538bcc833671016f7ac3039a4894f7e9789

  Message:
    Enable the 3rd argument of grnxx:map::BytesArray.

  Modified files:
    lib/grnxx/map/bytes_array.cpp
    lib/grnxx/map/bytes_array.hpp

  Modified: lib/grnxx/map/bytes_array.cpp (+6 -6)
===================================================================
--- lib/grnxx/map/bytes_array.cpp    2013-07-18 18:57:47 +0900 (590f97a)
+++ lib/grnxx/map/bytes_array.cpp    2013-07-18 19:39:34 +0900 (98a7a0b)
@@ -49,12 +49,12 @@ BytesArrayHeader::BytesArrayHeader()
 BytesArray::~BytesArray() {}
 
 BytesArray *BytesArray::create(Storage *storage, uint32_t storage_node_id,
-                               uint64_t) {
-  return create(storage, storage_node_id, 0, "");
+                               uint64_t size) {
+  return create(storage, storage_node_id, size, "");
 }
 
 BytesArray *BytesArray::create(Storage *storage, uint32_t storage_node_id,
-                               uint64_t, ValueArg default_value) {
+                               uint64_t size, ValueArg default_value) {
   if (!storage) {
     GRNXX_ERROR() << "invalid argument: storage = nullptr";
     throw LogicError();
@@ -64,7 +64,7 @@ BytesArray *BytesArray::create(Storage *storage, uint32_t storage_node_id,
     GRNXX_ERROR() << "new grnxx::map::BytesArray failed";
     throw MemoryError();
   }
-  array->create_array(storage, storage_node_id, default_value);
+  array->create_array(storage, storage_node_id, size, default_value);
   return array.release();
 }
 
@@ -123,7 +123,7 @@ BytesArray::BytesArray()
       pool_() {}
 
 void BytesArray::create_array(Storage *storage, uint32_t storage_node_id,
-                              ValueArg default_value) {
+                              uint64_t size, ValueArg default_value) {
   storage_ = storage;
   uint64_t storage_node_size = sizeof(BytesArrayHeader) + default_value.size();
   StorageNode storage_node =
@@ -135,7 +135,7 @@ void BytesArray::create_array(Storage *storage, uint32_t storage_node_id,
     header_->default_value_size = default_value.size();
     std::memcpy(header_ + 1, default_value.data(), default_value.size());
     default_value_ = Value(header_ + 1, default_value.size());
-    ids_.reset(IDArray::create(storage, storage_node_id_, ID_ARRAY_SIZE,
+    ids_.reset(IDArray::create(storage, storage_node_id_, size,
                                INVALID_BYTES_ID));
     pool_.reset(BytesPool::create(storage, storage_node_id_));
     header_->ids_storage_node_id = ids_->storage_node_id();

  Modified: lib/grnxx/map/bytes_array.hpp (+3 -5)
===================================================================
--- lib/grnxx/map/bytes_array.hpp    2013-07-18 18:57:47 +0900 (8d0e663)
+++ lib/grnxx/map/bytes_array.hpp    2013-07-18 19:39:34 +0900 (40c7e49)
@@ -45,16 +45,14 @@ class BytesArray {
 
   using IDArray = Array<uint64_t, 65536, 4096>;
 
-  static constexpr uint64_t ID_ARRAY_SIZE = 1ULL << 40;
-
   ~BytesArray();
 
   // Create an array.
   static BytesArray *create(Storage *storage, uint32_t storage_node_id,
-                            uint64_t dummy);
+                            uint64_t size);
   // Create an array with default value.
   static BytesArray *create(Storage *storage, uint32_t storage_node_id,
-                            uint64_t dummy, ValueArg default_value);
+                            uint64_t size, ValueArg default_value);
   // Open an array.
   static BytesArray *open(Storage *storage, uint32_t storage_node_id);
 
@@ -91,7 +89,7 @@ class BytesArray {
 
   // Create an array with the default value.
   void create_array(Storage *storage, uint32_t storage_node_id,
-                    ValueArg default_value);
+                    uint64_t size, ValueArg default_value);
   // Open an array.
   void open_array(Storage *storage, uint32_t storage_node_id);
 };
-------------- next part --------------
HTML����������������������������...
Download 



More information about the Groonga-commit mailing list
Back to archive index