You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@datasketches.apache.org by al...@apache.org on 2019/06/18 21:59:00 UTC

[incubator-datasketches-cpp] 01/01: Merge pull request #32 from apache/hll_refactor

This is an automated email from the ASF dual-hosted git repository.

alsay pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-datasketches-cpp.git

commit 6b3ac3b2e98c1c97f6bbd4c2e291123b852e7b42
Merge: 6763691 ee8c44e
Author: Alexander Saydakov <13...@users.noreply.github.com>
AuthorDate: Tue Jun 18 14:58:54 2019 -0700

    Merge pull request #32 from apache/hll_refactor
    
    Refactor HLL for custom allocator

 fi/include/frequent_items_sketch.hpp               |   2 +-
 hll/CMakeLists.txt                                 |  37 +-
 hll/include/AuxHashMap-internal.hpp                | 307 ++++++++
 hll/include/AuxHashMap.hpp                         |  27 +-
 .../CompositeInterpolationXTable-internal.hpp      | 797 +++++++++++++++++++++
 hll/include/CompositeInterpolationXTable.hpp       |   5 +
 .../Conversions-internal.hpp}                      |  37 +-
 hll/include/Conversions.hpp                        |   5 +-
 hll/include/CouponHashSet-internal.hpp             | 286 ++++++++
 hll/include/CouponHashSet.hpp                      |  19 +-
 hll/include/CouponList-internal.hpp                | 424 +++++++++++
 hll/include/CouponList.hpp                         |  27 +-
 hll/include/CubicInterpolation-internal.hpp        | 219 ++++++
 hll/include/CubicInterpolation.hpp                 |   5 +
 hll/include/HarmonicNumbers-internal.hpp           |  76 ++
 hll/include/HarmonicNumbers.hpp                    |   4 +
 .../Hll4Array-internal.hpp}                        | 210 +++---
 hll/include/Hll4Array.hpp                          |  36 +-
 hll/include/Hll6Array-internal.hpp                 | 141 ++++
 hll/include/Hll6Array.hpp                          |  26 +-
 hll/include/Hll8Array-internal.hpp                 | 123 ++++
 hll/include/Hll8Array.hpp                          |  26 +-
 hll/include/HllArray-internal.hpp                  | 649 +++++++++++++++++
 hll/include/HllArray.hpp                           |  37 +-
 hll/include/HllPairIterator-internal.hpp           |  85 +++
 hll/include/HllPairIterator.hpp                    |   7 +-
 hll/include/HllSketch-internal.hpp                 | 448 ++++++++++++
 hll/include/HllSketch.hpp                          |  27 +-
 hll/include/HllSketchImpl-internal.hpp             | 145 ++++
 hll/include/HllSketchImpl.hpp                      |  31 +-
 hll/include/HllSketchImplFactory.hpp               | 255 +++++++
 .../HllUnion.cpp => include/HllUnion-internal.hpp} | 330 +++++----
 hll/include/HllUnion.hpp                           |  36 +-
 hll/include/HllUtil.hpp                            |  87 ++-
 hll/include/IntArrayPairIterator-internal.hpp      | 101 +++
 hll/include/IntArrayPairIterator.hpp               |   5 +-
 hll/include/PairIterator.hpp                       |   4 +
 hll/include/RelativeErrorTables-internal.hpp       |  98 +++
 hll/include/RelativeErrorTables.hpp                |   5 +
 hll/include/hll.hpp                                | 291 +++++---
 hll/include/hll.private.hpp                        |  37 +
 hll/src/AuxHashMap.cpp                             |  36 +-
 hll/src/CompositeInterpolationXTable.cpp           |  16 +-
 hll/src/Conversions.cpp                            |  14 +-
 hll/src/CouponHashSet.cpp                          |  66 +-
 hll/src/CouponList.cpp                             |  90 +--
 hll/src/Hll4Array.cpp                              |  36 +-
 hll/src/Hll6Array.cpp                              |   6 +-
 hll/src/Hll8Array.cpp                              |  10 +-
 hll/src/HllArray.cpp                               | 118 +--
 hll/src/HllPairIterator.cpp                        |   4 +-
 hll/src/HllSketch.cpp                              |  46 +-
 hll/src/HllSketchImpl.cpp                          |  18 +-
 hll/src/HllUnion.cpp                               |   8 +-
 hll/src/HllUtil.cpp                                |  10 +-
 hll/src/IntArrayPairIterator.cpp                   |   6 +-
 hll/test/AuxHashMapTest.cpp                        |  35 +-
 hll/test/CouponHashSetTest.cpp                     | 101 ++-
 hll/test/CouponListTest.cpp                        | 134 ++--
 hll/test/CrossCountingTest.cpp                     |  47 +-
 hll/test/HllArrayTest.cpp                          | 147 ++--
 hll/test/HllSketchTest.cpp                         | 336 +++++----
 hll/test/HllUnionTest.cpp                          | 235 +++---
 hll/test/TablesTest.cpp                            |   6 +-
 hll/test/ToFromByteArrayTest.cpp                   | 164 +++--
 hll/test/UnionCaseTest.cpp                         |  25 +-
 python/src/hll_wrapper.cpp                         | 148 ++--
 67 files changed, 5934 insertions(+), 1445 deletions(-)

diff --cc hll/include/HllSketch.hpp
index f9d4c05,9b83e76..ec7bd26
--- a/hll/include/HllSketch.hpp
+++ b/hll/include/HllSketch.hpp
@@@ -1,24 -1,12 +1,26 @@@
  /*
 - * Copyright 2018, Yahoo! Inc. Licensed under the terms of the
 - * Apache License 2.0. See LICENSE file at the project root for terms.
 + * Licensed to the Apache Software Foundation (ASF) under one
 + * or more contributor license agreements.  See the NOTICE file
 + * distributed with this work for additional information
 + * regarding copyright ownership.  The ASF licenses this file
 + * to you under the Apache License, Version 2.0 (the
 + * "License"); you may not use this file except in compliance
 + * with the License.  You may obtain a copy of the License at
 + *
 + *   http://www.apache.org/licenses/LICENSE-2.0
 + *
 + * Unless required by applicable law or agreed to in writing,
 + * software distributed under the License is distributed on an
 + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 + * KIND, either express or implied.  See the License for the
 + * specific language governing permissions and limitations
 + * under the License.
   */
  
- #ifndef _HLLSKETCH_H_
- #define _HLLSKETCH_H_
+ #ifndef _HLLSKETCH_HPP_
+ #define _HLLSKETCH_HPP_
+ 
+ /*
  
  #include "hll.hpp"
  #include "PairIterator.hpp"
diff --cc hll/include/HllSketchImpl.hpp
index dbac694,f623f6f..59e322f
--- a/hll/include/HllSketchImpl.hpp
+++ b/hll/include/HllSketchImpl.hpp
@@@ -1,27 -1,14 +1,28 @@@
  /*
 - * Copyright 2018, Yahoo! Inc. Licensed under the terms of the
 - * Apache License 2.0. See LICENSE file at the project root for terms.
 + * Licensed to the Apache Software Foundation (ASF) under one
 + * or more contributor license agreements.  See the NOTICE file
 + * distributed with this work for additional information
 + * regarding copyright ownership.  The ASF licenses this file
 + * to you under the Apache License, Version 2.0 (the
 + * "License"); you may not use this file except in compliance
 + * with the License.  You may obtain a copy of the License at
 + *
 + *   http://www.apache.org/licenses/LICENSE-2.0
 + *
 + * Unless required by applicable law or agreed to in writing,
 + * software distributed under the License is distributed on an
 + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 + * KIND, either express or implied.  See the License for the
 + * specific language governing permissions and limitations
 + * under the License.
   */
  
- #ifndef _HLLSKETCHIMPL_H_
- #define _HLLSKETCHIMPL_H_
+ #ifndef _HLLSKETCHIMPL_HPP_
+ #define _HLLSKETCHIMPL_HPP_
  
  #include "HllUtil.hpp"
- #include "HllSketch.hpp"
+ #include "hll.hpp" // for TgtHllType
+ #include "PairIterator.hpp"
  
  #include <memory>
  
diff --cc hll/include/HllUnion.hpp
index dea7c6b,3c1eb5b..0adefc7
--- a/hll/include/HllUnion.hpp
+++ b/hll/include/HllUnion.hpp
@@@ -1,24 -1,10 +1,24 @@@
  /*
 - * Copyright 2018, Yahoo! Inc. Licensed under the terms of the
 - * Apache License 2.0. See LICENSE file at the project root for terms.
 + * Licensed to the Apache Software Foundation (ASF) under one
 + * or more contributor license agreements.  See the NOTICE file
 + * distributed with this work for additional information
 + * regarding copyright ownership.  The ASF licenses this file
 + * to you under the Apache License, Version 2.0 (the
 + * "License"); you may not use this file except in compliance
 + * with the License.  You may obtain a copy of the License at
 + *
 + *   http://www.apache.org/licenses/LICENSE-2.0
 + *
 + * Unless required by applicable law or agreed to in writing,
 + * software distributed under the License is distributed on an
 + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 + * KIND, either express or implied.  See the License for the
 + * specific language governing permissions and limitations
 + * under the License.
   */
  
- #ifndef _HLLUNION_H_
- #define _HLLUNION_H_
+ #ifndef _HLLUNION_HPP_
+ #define _HLLUNION_HPP_
  
  #include "hll.hpp"
  #include "HllUtil.hpp"
diff --cc hll/test/AuxHashMapTest.cpp
index 9d1fea7,b1d087e..165fddb
--- a/hll/test/AuxHashMapTest.cpp
+++ b/hll/test/AuxHashMapTest.cpp
@@@ -1,31 -1,11 +1,25 @@@
  /*
 - * Copyright 2018, Oath Inc. Licensed under the terms of the
 - * Apache License 2.0. See LICENSE file at the project root for terms.
 + * Licensed to the Apache Software Foundation (ASF) under one
 + * or more contributor license agreements.  See the NOTICE file
 + * distributed with this work for additional information
 + * regarding copyright ownership.  The ASF licenses this file
 + * to you under the Apache License, Version 2.0 (the
 + * "License"); you may not use this file except in compliance
 + * with the License.  You may obtain a copy of the License at
 + *
 + *   http://www.apache.org/licenses/LICENSE-2.0
 + *
 + * Unless required by applicable law or agreed to in writing,
 + * software distributed under the License is distributed on an
 + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 + * KIND, either express or implied.  See the License for the
 + * specific language governing permissions and limitations
 + * under the License.
   */
  
- #include "hll.hpp"
- #include "CouponList.hpp"
- #include "CouponHashSet.hpp"
- #include "HllArray.hpp"
- 
- #include "HllSketch.hpp"
- #include "HllUnion.hpp"
- #include "HllUtil.hpp"
+ #include "AuxHashMap.hpp"
  
+ #include <memory>
  #include <cppunit/TestFixture.h>
  #include <cppunit/extensions/HelperMacros.h>
  


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@datasketches.apache.org
For additional commands, e-mail: commits-help@datasketches.apache.org