Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
code
PMem-based Data Structures
Commits
25ad6535
Commit
25ad6535
authored
May 08, 2019
by
Philipp Götze
Browse files
©️
Updated copyright text to 100 chars
parent
cc0a011d
Changes
45
Hide whitespace changes
Inline
Side-by-side
src/bench/performance_test.cpp
View file @
25ad6535
/*
* Copyright (C) 2017-2019 DBIS Group - TU Ilmenau, All Rights Reserved.
*
* This file is part of our NVM-based Data Structure
R
epository.
* This file is part of our NVM-based Data Structure
s r
epository.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* This program is free software: you can redistribute it and/or modify it under the terms of the
* GNU General Public License as published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
*
along with this program.
If not, see <http://www.gnu.org/licenses/>.
* You should have received a copy of the GNU General Public License
along with this program.
* If not, see <http://www.gnu.org/licenses/>.
*/
//
...
...
src/bench/ptable/common.hpp
View file @
25ad6535
/*
* Copyright (C) 2017-2019 DBIS Group - TU Ilmenau, All Rights Reserved.
*
* This file is part of our NVM-based Data Structure
R
epository.
* This file is part of our NVM-based Data Structure
s r
epository.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* This program is free software: you can redistribute it and/or modify it under the terms of the
* GNU General Public License as published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
*
along with this program.
If not, see <http://www.gnu.org/licenses/>.
* You should have received a copy of the GNU General Public License
along with this program.
* If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef PTABLE_COMMON_H
...
...
src/bench/ptable/insert.cpp
View file @
25ad6535
/*
* Copyright (C) 2017-2019 DBIS Group - TU Ilmenau, All Rights Reserved.
*
* This file is part of our NVM-based Data Structure
R
epository.
* This file is part of our NVM-based Data Structure
s r
epository.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* This program is free software: you can redistribute it and/or modify it under the terms of the
* GNU General Public License as published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
*
along with this program.
If not, see <http://www.gnu.org/licenses/>.
* You should have received a copy of the GNU General Public License
along with this program.
* If not, see <http://www.gnu.org/licenses/>.
*/
#include
<unistd.h>
...
...
src/bench/ptable/point.cpp
View file @
25ad6535
/*
* Copyright (C) 2017-2019 DBIS Group - TU Ilmenau, All Rights Reserved.
*
* This file is part of our NVM-based Data Structure
R
epository.
* This file is part of our NVM-based Data Structure
s r
epository.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* This program is free software: you can redistribute it and/or modify it under the terms of the
* GNU General Public License as published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
*
along with this program.
If not, see <http://www.gnu.org/licenses/>.
* You should have received a copy of the GNU General Public License
along with this program.
* If not, see <http://www.gnu.org/licenses/>.
*/
#include
<unistd.h>
...
...
src/bench/ptable/scan.cpp
View file @
25ad6535
/*
* Copyright (C) 2017-2019 DBIS Group - TU Ilmenau, All Rights Reserved.
*
* This file is part of our NVM-based Data Structure
R
epository.
* This file is part of our NVM-based Data Structure
s r
epository.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* This program is free software: you can redistribute it and/or modify it under the terms of the
* GNU General Public License as published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
*
along with this program.
If not, see <http://www.gnu.org/licenses/>.
* You should have received a copy of the GNU General Public License
along with this program.
* If not, see <http://www.gnu.org/licenses/>.
*/
#include
<unistd.h>
...
...
src/bench/trees/common.hpp
View file @
25ad6535
/*
* Copyright (C) 2017-2019 DBIS Group - TU Ilmenau, All Rights Reserved.
*
* This file is part of our NVM-based Data Structure
R
epository.
* This file is part of our NVM-based Data Structure
s r
epository.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* This program is free software: you can redistribute it and/or modify it under the terms of the
* GNU General Public License as published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
*
along with this program.
If not, see <http://www.gnu.org/licenses/>.
* You should have received a copy of the GNU General Public License
along with this program.
* If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef DBIS_TREES_COMMON_HPP
...
...
src/bench/trees/tree_get.cpp
View file @
25ad6535
/*
* Copyright (C) 2017-2019 DBIS Group - TU Ilmenau, All Rights Reserved.
*
* This file is part of our NVM-based Data Structure
R
epository.
* This file is part of our NVM-based Data Structure
s r
epository.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* This program is free software: you can redistribute it and/or modify it under the terms of the
* GNU General Public License as published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
*
along with this program.
If not, see <http://www.gnu.org/licenses/>.
* You should have received a copy of the GNU General Public License
along with this program.
* If not, see <http://www.gnu.org/licenses/>.
*/
#include
"common.hpp"
...
...
src/bench/trees/tree_insert.cpp
View file @
25ad6535
/*
* Copyright (C) 2017-2019 DBIS Group - TU Ilmenau, All Rights Reserved.
*
* This file is part of our NVM-based Data Structure
R
epository.
* This file is part of our NVM-based Data Structure
s r
epository.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* This program is free software: you can redistribute it and/or modify it under the terms of the
* GNU General Public License as published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
*
along with this program.
If not, see <http://www.gnu.org/licenses/>.
* You should have received a copy of the GNU General Public License
along with this program.
* If not, see <http://www.gnu.org/licenses/>.
*/
#include
<filesystem>
...
...
src/bench/trees/tree_split.cpp
View file @
25ad6535
/*
* Copyright (C) 2017-2019 DBIS Group - TU Ilmenau, All Rights Reserved.
*
* This file is part of our NVM-based Data Structure
R
epository.
* This file is part of our NVM-based Data Structure
s r
epository.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* This program is free software: you can redistribute it and/or modify it under the terms of the
* GNU General Public License as published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
*
along with this program.
If not, see <http://www.gnu.org/licenses/>.
* You should have received a copy of the GNU General Public License
along with this program.
* If not, see <http://www.gnu.org/licenses/>.
*/
#include
<filesystem>
...
...
src/bench/trees/tree_traverse.cpp
View file @
25ad6535
/*
* Copyright (C) 2017-2019 DBIS Group - TU Ilmenau, All Rights Reserved.
*
* This file is part of our NVM-based Data Structure
R
epository.
* This file is part of our NVM-based Data Structure
s r
epository.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* This program is free software: you can redistribute it and/or modify it under the terms of the
* GNU General Public License as published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
*
along with this program.
If not, see <http://www.gnu.org/licenses/>.
* You should have received a copy of the GNU General Public License
along with this program.
* If not, see <http://www.gnu.org/licenses/>.
*/
#include
"common.hpp"
...
...
src/fptree/FPTree.hpp
View file @
25ad6535
/*
* Copyright (C) 2017-2019 DBIS Group - TU Ilmenau, All Rights Reserved.
*
* This file is part of our NVM-based Data Structure
R
epository.
* This file is part of our NVM-based Data Structure
s r
epository.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* This program is free software: you can redistribute it and/or modify it under the terms of the
* GNU General Public License as published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
*
along with this program.
If not, see <http://www.gnu.org/licenses/>.
* You should have received a copy of the GNU General Public License
along with this program.
* If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef DBIS_FPTree_hpp_
...
...
src/fptree/PTree.hpp
View file @
25ad6535
/*
* Copyright (C) 2017-2019 DBIS Group - TU Ilmenau, All Rights Reserved.
*
* This file is part of our NVM-based Data Structure
R
epository.
* This file is part of our NVM-based Data Structure
s r
epository.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* This program is free software: you can redistribute it and/or modify it under the terms of the
* GNU General Public License as published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
*
along with this program.
If not, see <http://www.gnu.org/licenses/>.
* You should have received a copy of the GNU General Public License
along with this program.
* If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef DBIS_PTree_hpp_
...
...
src/pbptree/BitPBPTree.hpp
View file @
25ad6535
/*
* Copyright (C) 2017-2019 DBIS Group - TU Ilmenau, All Rights Reserved.
*
* This file is part of our NVM-based Data Structure
R
epository.
* This file is part of our NVM-based Data Structure
s r
epository.
*
* This program is free software: you can redistribute it and/or modify it under the terms of the
* GNU General Public License as published by the Free Software Foundation, either version 3 of the
...
...
@@ -191,8 +191,15 @@ class BitPBPTree {
currentPosition
=
0
;
if
(
currentNode
==
nullptr
)
return
*
this
;
const
auto
&
nodeRef
=
*
currentNode
;
while
(
!
nodeRef
.
bits
.
get_ro
().
test
(
currentPosition
))
++
currentPosition
;
}
else
if
(
!
currentNode
->
bits
.
get_ro
().
test
(
++
currentPosition
))
++
(
*
this
);
PROFILE_READ
(
1
)
while
(
!
nodeRef
.
bits
.
get_ro
().
test
(
currentPosition
))
{
PROFILE_READ
(
1
)
++
currentPosition
;
};
}
else
{
PROFILE_READ
(
1
)
if
(
!
currentNode
->
bits
.
get_ro
().
test
(
++
currentPosition
))
++
(
*
this
);
}
return
*
this
;
}
...
...
@@ -298,7 +305,6 @@ class BitPBPTree {
const
auto
leafNode
=
findLeafNode
(
key
);
const
auto
pos
=
lookupPositionInLeafNode
(
leafNode
,
key
);
PROFILE_READ
(
1
)
if
(
pos
<
M
)
{
/// we found it
PROFILE_READ
(
1
)
...
...
@@ -341,7 +347,7 @@ class BitPBPTree {
* Print the structure and content of the B+ tree to stdout.
*/
void
print
()
const
{
if
(
depth
==
0
)
printLeafNode
(
0
,
rootNode
.
leaf
);
if
(
depth
==
0
)
printLeafNode
(
0
u
,
rootNode
.
leaf
);
else
printBranchNode
(
0u
,
rootNode
.
branch
);
}
...
...
@@ -365,9 +371,10 @@ class BitPBPTree {
}
auto
leaf
=
node
.
leaf
;
while
(
leaf
!=
nullptr
)
{
auto
&
leafRef
=
*
leaf
;
const
auto
&
leafRef
=
*
leaf
;
/// for each key-value pair call func
for
(
auto
i
=
0u
;
i
<
M
;
i
++
)
{
PROFILE_READ
(
1
)
if
(
!
leafRef
.
bits
.
get_ro
().
test
(
i
))
continue
;
PROFILE_READ
(
2
)
const
auto
&
key
=
leafRef
.
keys
.
get_ro
()[
i
];
...
...
@@ -393,7 +400,7 @@ class BitPBPTree {
bool
higherThanMax
=
false
;
while
(
!
higherThanMax
&&
leaf
!=
nullptr
)
{
/// for each key-value pair within the range call func
auto
&
leafRef
=
*
leaf
;
const
auto
&
leafRef
=
*
leaf
;
for
(
auto
i
=
0u
;
i
<
M
;
i
++
)
{
PROFILE_READ
(
1
)
if
(
leafRef
.
bits
.
get_ro
().
test
(
i
))
continue
;
...
...
@@ -460,7 +467,7 @@ class BitPBPTree {
constexpr
auto
middle
=
(
M
+
1
)
/
2
;
/// 1. we check whether we can rebalance with one of the siblings but only if both nodes have
//
the same direct parent
//
/
the same direct parent
if
(
pos
>
0
&&
prevNumKeys
>
middle
)
{
/// we have a sibling at the left for rebalancing the keys
balanceLeafNodes
(
leafRef
.
prevLeaf
,
leaf
);
...
...
@@ -479,7 +486,7 @@ class BitPBPTree {
leafRef
.
nextLeaf
->
keys
.
get_ro
()[
findMinKeyInNode
(
leafRef
.
nextLeaf
)];
}
else
{
/// 2. if this fails we have to merge two leaf nodes but only if both nodes have the same
//
direct parent
//
/
direct parent
pptr
<
LeafNode
>
survivor
=
nullptr
;
const
auto
nNumKeys
=
nodeRef
.
bits
.
get_ro
().
count
();
...
...
src/pbptree/PBPTree.hpp
View file @
25ad6535
...
...
@@ -7,11 +7,11 @@
* GNU General Public License as published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
*
PipeFabric
is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
*
This program
is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along with
PipeFabric
.
* You should have received a copy of the GNU General Public License along with
this program
.
* If not, see <http://www.gnu.org/licenses/>.
*/
...
...
src/pbptree/UnsortedPBPTree.hpp
View file @
25ad6535
/*
* Copyright (C) 2017-2019 DBIS Group - TU Ilmenau, All Rights Reserved.
*
* This file is part of our NVM-based Data Structure
R
epository.
* This file is part of our NVM-based Data Structure
s r
epository.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* This program is free software: you can redistribute it and/or modify it under the terms of the
* GNU General Public License as published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
*
along with this program.
If not, see <http://www.gnu.org/licenses/>.
* You should have received a copy of the GNU General Public License
along with this program.
* If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef DBIS_UnsortedPBPTree_hpp_
...
...
src/ptable/PTable.hpp
View file @
25ad6535
/*
* Copyright (C) 2017-2019 DBIS Group - TU Ilmenau, All Rights Reserved.
*
* This file is part of our NVM-based Data Structure
R
epository.
* This file is part of our NVM-based Data Structure
s r
epository.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* This program is free software: you can redistribute it and/or modify it under the terms of the
* GNU General Public License as published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
*
along with this program.
If not, see <http://www.gnu.org/licenses/>.
* You should have received a copy of the GNU General Public License
along with this program.
* If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef PTable_hpp_
...
...
src/ptable/core/BDCCInfo.hpp
View file @
25ad6535
/*
* Copyright (C) 2017-2019 DBIS Group - TU Ilmenau, All Rights Reserved.
*
* This file is part of our NVM-based Data Structure
R
epository.
* This file is part of our NVM-based Data Structure
s r
epository.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* This program is free software: you can redistribute it and/or modify it under the terms of the
* GNU General Public License as published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
*
along with this program.
If not, see <http://www.gnu.org/licenses/>.
* You should have received a copy of the GNU General Public License
along with this program.
* If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef BDCCInfo_hpp_
...
...
src/ptable/core/DataNode.hpp
View file @
25ad6535
/*
* Copyright (C) 2017-2019 DBIS Group - TU Ilmenau, All Rights Reserved.
*
* This file is part of our NVM-based Data Structure
R
epository.
* This file is part of our NVM-based Data Structure
s r
epository.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* This program is free software: you can redistribute it and/or modify it under the terms of the
* GNU General Public License as published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
*
along with this program.
If not, see <http://www.gnu.org/licenses/>.
* You should have received a copy of the GNU General Public License
along with this program.
* If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef DataNode_hpp_
...
...
src/ptable/core/PString.hpp
View file @
25ad6535
/*
* Copyright (C) 2017-2019 DBIS Group - TU Ilmenau, All Rights Reserved.
*
* This file is part of our NVM-based Data Structure
R
epository.
* This file is part of our NVM-based Data Structure
s r
epository.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* This program is free software: you can redistribute it and/or modify it under the terms of the
* GNU General Public License as published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
*
along with this program.
If not, see <http://www.gnu.org/licenses/>.
* You should have received a copy of the GNU General Public License
along with this program.
* If not, see <http://www.gnu.org/licenses/>.
*/
/* Based on: https://pmem.io/2017/01/23/cpp-strings.html */
...
...
src/ptable/core/PTableException.hpp
View file @
25ad6535
/*
* Copyright (C) 2017-2019 DBIS Group - TU Ilmenau, All Rights Reserved.
*
* This file is part of our NVM-based Data Structure
R
epository.
* This file is part of our NVM-based Data Structure
s r
epository.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.