Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Lmdb #158

Draft
wants to merge 184 commits into
base: master
Choose a base branch
from
Draft

Lmdb #158

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
184 commits
Select commit Hold shift + click to select a range
1db180a
Update to C++17
exploshot May 16, 2021
ad5169d
Add Coding Conventions and Guidelines
exploshot May 16, 2021
32bb0cd
Update .gitignore
exploshot May 31, 2021
f5f91fc
Update CMake specific files for lmdb
exploshot May 31, 2021
1e1264a
Add TimeUtils for time measuring
exploshot May 31, 2021
bd9b96b
Add LMDB Files
exploshot May 31, 2021
8d12cd1
Add getDefault DB and Sync
exploshot May 31, 2021
d9fe825
Add LMDB
exploshot May 31, 2021
b6d8cb2
Fix windows build
exploshot May 31, 2021
8bc4d7c
Update .gitmodules
exploshot Jun 1, 2021
0dae533
Update lmdb, Add lmdb methods, Fix serialization
exploshot Jun 1, 2021
011d8ae
Fix Mem violation
exploshot Jun 1, 2021
ee131b2
Add Threadpool
exploshot Jun 1, 2021
633ea95
Moved LMDB from external and added it to Cmake/external
exploshot Jun 2, 2021
3a69dc1
Moved LMDB from external and added it to Cmake/external
exploshot Jun 2, 2021
94a123c
Merge remote-tracking branch 'origin/lmdb' into lmdb
exploshot Jun 2, 2021
f135e5b
Fix previous commit
exploshot Jun 2, 2021
3b4d2ad
Auto stash before merge of "lmdb" and "origin/lmdb"
exploshot Jun 2, 2021
66742bb
Removed LMDB as external and added it as internal lib to QwertycoinFr…
exploshot Jun 3, 2021
e27a2a0
Add latest lmdb changes
exploshot Jun 3, 2021
63da4fd
Add latest lmdb changes
exploshot Jun 4, 2021
f180bb0
Disable tests again
exploshot Jun 4, 2021
4de2708
Add documentation comments to Lmdb/BlockchainDB
exploshot Jun 5, 2021
05174f8
Add getBlocksRange
exploshot Jun 5, 2021
afe0b83
Add getHashesRange
exploshot Jun 5, 2021
08df6d7
Add removeTransaction
exploshot Jun 5, 2021
a1286b1
Add latest lmdb changes
exploshot Jun 5, 2021
c5c1f9d
Probably fixed Serialization issues
exploshot Jun 6, 2021
ea4ad1b
Add getTransactionList
exploshot Jun 7, 2021
c893d03
Fix rollbackChain Bugs
exploshot Jun 10, 2021
376a498
Add addTxPoolTransaction
exploshot Jun 11, 2021
1fa020c
Add updateTxPoolTransaction
exploshot Jun 11, 2021
c900a3c
Add getTxPoolTransactionCount
exploshot Jun 11, 2021
18ab5b0
Add txPoolHasTransaction
exploshot Jun 11, 2021
5739934
Add removeTxPoolTransaction
exploshot Jun 11, 2021
5e706be
Update DBLMDB.cpp
exploshot Jun 11, 2021
06e410c
Add getTxPoolTransactionMeta & getTxPoolTransactionBlob
exploshot Jun 12, 2021
c39cdf4
Add forAllTxPoolTransactions
exploshot Jun 12, 2021
d77e15b
Update CMakeLists.txt
exploshot Jun 12, 2021
3f8229b
Merge remote-tracking branch 'origin/lmdb' into lmdb2
exploshot Jun 12, 2021
2a726ef
Update matrix.yml
exploshot Jun 12, 2021
8ec55c4
Merge remote-tracking branch 'origin/lmdb' into lmdb2
exploshot Jun 12, 2021
cb4fd7d
Update CMakeLists.txt
exploshot Jun 12, 2021
b87af13
Merge remote-tracking branch 'origin/lmdb' into lmdb2
exploshot Jun 12, 2021
e067fc6
Fix wrong height while syncing
exploshot Jun 12, 2021
d9a52ac
Add Checkpoints in 25k steps
exploshot Jun 14, 2021
d203aba
Add latest lmdb changes
exploshot Jun 15, 2021
7fea5d2
Update DBLMDB.cpp
exploshot Jun 15, 2021
43544ac
Update Blockchain.cpp
exploshot Jun 15, 2021
b536bda
Update CMakeLists.txt
exploshot Jun 15, 2021
32a0f49
Update Core.cpp
exploshot Jun 15, 2021
79ab3a5
Update CryptoNoteTools.h
exploshot Jun 15, 2021
5ea4c36
Update Blockchain.h
exploshot Jun 15, 2021
fe56274
Add latest lmdb changes
Jun 15, 2021
4a8e343
Add latest lmdb changes
Jun 15, 2021
7fb9096
Update Core.cpp
exploshot Jun 15, 2021
1ad843d
Change resize behaviour
exploshot Jun 15, 2021
cb50f2b
Removed unnecessary boost install
exploshot Jun 16, 2021
33af1b3
Update matrix.yml
exploshot Jun 16, 2021
db5dbf7
Fix previous commit
exploshot Jun 16, 2021
2b07759
Fix previous commit
exploshot Jun 16, 2021
e63727f
Add benchmark command to daemon
exploshot Jun 16, 2021
8633aa6
Improved status message in Daemon for lmdb
exploshot Jun 16, 2021
5ba180e
m_blocks.size() >> HEIGHT_COND
exploshot Jun 17, 2021
c914368
Resize it, dont cancel it, thx
exploshot Jun 18, 2021
f8cc2c1
More lmdb, less RAM usage
exploshot Jun 19, 2021
bae8db7
Add TimeToLifeIndex to lmdb
exploshot Jun 19, 2021
a68682b
no tx mempool binary file, thx
exploshot Jun 19, 2021
eef2a63
Add a bit from blockscache to lmdb
exploshot Jun 20, 2021
31e56d2
Add temporary ban functionality for specific nodes
exploshot Jun 21, 2021
7972a93
Check percentage resize after threshold based resize doesnt met.
exploshot Jun 26, 2021
638cb8c
Add latest lmdb changes
exploshot Jun 28, 2021
93dae0d
Update Core.cpp
exploshot Jun 29, 2021
71a71ee
Add latest lmdb changes
exploshot Jun 30, 2021
1dd026d
Apply Add Tx patch
exploshot Jul 5, 2021
17de3d6
Merge branch 'master' into lmdb
Sw0rdf1sh1 Sep 4, 2021
1601ba0
Commit instead Stash
exploshot Sep 5, 2021
98c7d17
Merge remote-tracking branch 'origin/lmdb' into lmdb
exploshot Sep 5, 2021
c68cd5c
Upgrade to GCC 11
exploshot Sep 8, 2021
c805bb0
Add Checkpoint improvements from master
exploshot Sep 8, 2021
b4f56f4
Add string node version with Debugging Log Enabled as Warning
exploshot Sep 8, 2021
55c62d9
Add changes from #155
exploshot Sep 9, 2021
db2835d
Fix build error from previous commit
exploshot Sep 9, 2021
b03b1b3
X
exploshot Sep 9, 2021
08f4289
Fix GH Actions file
exploshot Sep 9, 2021
7a4d191
Add Checkpoints
exploshot Sep 9, 2021
214258a
Remove Explo Nodes
exploshot Sep 10, 2021
9db9f26
Update lmdb db logging
exploshot Sep 12, 2021
340d7ce
Fix lmdb sync issue with CLIF
exploshot Sep 15, 2021
5da353b
Update to C++17
exploshot May 16, 2021
af5cbb2
Add Coding Conventions and Guidelines
exploshot May 16, 2021
8f023db
Update .gitignore
exploshot May 31, 2021
c6306c8
Update CMake specific files for lmdb
exploshot May 31, 2021
bb7839a
Add TimeUtils for time measuring
exploshot May 31, 2021
95d63a4
Add LMDB Files
exploshot May 31, 2021
54eb080
Add getDefault DB and Sync
exploshot May 31, 2021
f5d7b7c
Add LMDB
exploshot May 31, 2021
3d10c0a
Fix windows build
exploshot May 31, 2021
f7edb52
Update .gitmodules
exploshot Jun 1, 2021
83d7f40
Update lmdb, Add lmdb methods, Fix serialization
exploshot Jun 1, 2021
f886450
Fix Mem violation
exploshot Jun 1, 2021
24b01d7
Add Threadpool
exploshot Jun 1, 2021
f09a3b7
Moved LMDB from external and added it to Cmake/external
exploshot Jun 2, 2021
93a7348
Moved LMDB from external and added it to Cmake/external
exploshot Jun 2, 2021
f80fea1
Fix previous commit
exploshot Jun 2, 2021
bd59742
Auto stash before merge of "lmdb" and "origin/lmdb"
exploshot Jun 2, 2021
2847e19
Removed LMDB as external and added it as internal lib to QwertycoinFr…
exploshot Jun 3, 2021
62a755c
Add latest lmdb changes
exploshot Jun 3, 2021
f6ff17e
Add latest lmdb changes
exploshot Jun 4, 2021
6548cb3
Disable tests again
exploshot Jun 4, 2021
4a5f932
Add documentation comments to Lmdb/BlockchainDB
exploshot Jun 5, 2021
3b36b83
Add getBlocksRange
exploshot Jun 5, 2021
8d6bcfa
Add getHashesRange
exploshot Jun 5, 2021
26948e6
Add removeTransaction
exploshot Jun 5, 2021
02815d2
Add latest lmdb changes
exploshot Jun 5, 2021
49ad930
Probably fixed Serialization issues
exploshot Jun 6, 2021
08a2e56
Add getTransactionList
exploshot Jun 7, 2021
e6ae77f
Fix rollbackChain Bugs
exploshot Jun 10, 2021
2936927
Add addTxPoolTransaction
exploshot Jun 11, 2021
90a5531
Add updateTxPoolTransaction
exploshot Jun 11, 2021
2595876
Add getTxPoolTransactionCount
exploshot Jun 11, 2021
9be0ee5
Add txPoolHasTransaction
exploshot Jun 11, 2021
d54e0ff
Add removeTxPoolTransaction
exploshot Jun 11, 2021
7e59f7f
Update DBLMDB.cpp
exploshot Jun 11, 2021
9c77ec8
Add getTxPoolTransactionMeta & getTxPoolTransactionBlob
exploshot Jun 12, 2021
df569b4
Add forAllTxPoolTransactions
exploshot Jun 12, 2021
fb727aa
Update CMakeLists.txt
exploshot Jun 12, 2021
42bb945
Update matrix.yml
exploshot Jun 12, 2021
9403c1f
Update CMakeLists.txt
exploshot Jun 12, 2021
c616e9a
Fix wrong height while syncing
exploshot Jun 12, 2021
0fdeba2
Add Checkpoints in 25k steps
exploshot Jun 14, 2021
b293f8e
Add latest lmdb changes
exploshot Jun 15, 2021
23ed0c6
Update DBLMDB.cpp
exploshot Jun 15, 2021
e340b21
Update Blockchain.cpp
exploshot Jun 15, 2021
d006507
Update CMakeLists.txt
exploshot Jun 15, 2021
5e720ff
Update Core.cpp
exploshot Jun 15, 2021
9a356bb
Update CryptoNoteTools.h
exploshot Jun 15, 2021
f8287b2
Update Blockchain.h
exploshot Jun 15, 2021
6f5d141
Add latest lmdb changes
Jun 15, 2021
b1b011d
Add latest lmdb changes
Jun 15, 2021
57374b2
Update Core.cpp
exploshot Jun 15, 2021
5698734
Change resize behaviour
exploshot Jun 15, 2021
cc00bb9
Removed unnecessary boost install
exploshot Jun 16, 2021
f7b76be
Update matrix.yml
exploshot Jun 16, 2021
e005cc9
Fix previous commit
exploshot Jun 16, 2021
9fe5652
Fix previous commit
exploshot Jun 16, 2021
c83ee4c
Add benchmark command to daemon
exploshot Jun 16, 2021
84c5f62
Improved status message in Daemon for lmdb
exploshot Jun 16, 2021
ce1dba6
m_blocks.size() >> HEIGHT_COND
exploshot Jun 17, 2021
ad0e1e5
Resize it, dont cancel it, thx
exploshot Jun 18, 2021
317c85c
More lmdb, less RAM usage
exploshot Jun 19, 2021
9278891
Add TimeToLifeIndex to lmdb
exploshot Jun 19, 2021
694660d
no tx mempool binary file, thx
exploshot Jun 19, 2021
d7ed661
Add a bit from blockscache to lmdb
exploshot Jun 20, 2021
55e7bea
Add temporary ban functionality for specific nodes
exploshot Jun 21, 2021
1da5350
Check percentage resize after threshold based resize doesnt met.
exploshot Jun 26, 2021
435fd16
Add latest lmdb changes
exploshot Jun 28, 2021
012d70d
Update Core.cpp
exploshot Jun 29, 2021
596e148
Add latest lmdb changes
exploshot Jun 30, 2021
59b16d3
Apply Add Tx patch
exploshot Jul 5, 2021
54ece92
Commit instead Stash
exploshot Sep 5, 2021
05f37fd
Upgrade to GCC 11
exploshot Sep 8, 2021
0041d7d
Add Checkpoint improvements from master
exploshot Sep 8, 2021
1eef749
Add string node version with Debugging Log Enabled as Warning
exploshot Sep 8, 2021
76cb98a
Add changes from #155
exploshot Sep 9, 2021
f474404
Fix build error from previous commit
exploshot Sep 9, 2021
eec88f0
X
exploshot Sep 9, 2021
cf188e7
Fix GH Actions file
exploshot Sep 9, 2021
2eacfa3
Add Checkpoints
exploshot Sep 9, 2021
317da50
Remove Explo Nodes
exploshot Sep 10, 2021
0b635c2
Update lmdb db logging
exploshot Sep 12, 2021
b81e4d4
Fix lmdb sync issue with CLIF
exploshot Sep 15, 2021
6f3e05c
Merge remote-tracking branch 'origin/lmdb' into lmdb
exploshot Sep 20, 2021
3fde3d5
remove Checkpoint wrap in Blockchain.cpp
exploshot Sep 20, 2021
29c3a01
Fix Windows Build error
exploshot Sep 20, 2021
7b18e7f
Add latest changes for the valfix
exploshot Sep 22, 2021
d501160
Fix validation for lmdb
exploshot Sep 22, 2021
8ff3f12
Return correct total tx count on masternode startpage
exploshot Sep 23, 2021
2ff89dd
Add Checkpoint 942325
exploshot Sep 25, 2021
a524097
Add logs for better debugging the output bug
exploshot Jan 2, 2022
1bc9e98
Add logs for better debugging the output bug
exploshot Jan 3, 2022
bb3df0e
- Fix GCC11 Compiler issues
exploshot Mar 15, 2022
184173c
- Add some logs to Blockchain
exploshot Mar 15, 2022
1c8b017
Merge remote-tracking branch 'origin/lmdb' into lmdb
exploshot Mar 15, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
24 changes: 21 additions & 3 deletions .github/workflows/matrix.yml
Expand Up @@ -19,7 +19,7 @@ jobs:
fail-fast: false
matrix:
# Add more compilers here if you need them
build_name: ['Ubuntu GCC 7', 'Ubuntu GCC 8', 'Ubuntu GCC 11']
build_name: ['Ubuntu GCC 7', 'Ubuntu GCC 8', 'Ubuntu GCC 9', 'Ubuntu GCC 11', 'Ubuntu Clang']
include:
- build_name: 'Ubuntu GCC 7'
package_name: 'gcc-7 g++-7'
Expand All @@ -33,10 +33,28 @@ jobs:
cxx: g++-8
label: linux-gcc-8
deployable: true
- build_name: 'Ubuntu GCC 9'
package_name: 'gcc-9 g++-9'
label: linux-gcc-9
cc: gcc-9
cxx: g++-9
deployable: true
- build_name: 'Ubuntu GCC 11'
package_name: 'gcc-11 g++-11'
label: linux-gcc-11
cc: gcc-11
cxx: g++-11
deployable: true
- build_name: 'Ubuntu Clang'
- build_name: 'Ubuntu GCC 11'
package_name: 'gcc-11 g++-11'
cc: gcc-11
label: linux-gcc-11
- build_name: 'Ubuntu Clang 6'
package_name: 'clang'
cc: clang
cxx: clang++
label: linux-clang-6
deployable: true
env:
CCACHE_DIR: $GITHUB_WORKSPACE/.ccache
Expand All @@ -49,7 +67,7 @@ jobs:
if: matrix.build_name != 'aarch64'
run: |
sudo apt update
sudo apt install -y libboost-all-dev libssl-dev ${{ matrix.package_name }}
sudo apt install -y ${{ matrix.package_name }}

- name: Setup ccache
run: |
Expand Down Expand Up @@ -131,7 +149,7 @@ jobs:
# Fetch Dependencies
- name: Dependencies
run: |
brew install --force boost llvm@8 ccache
brew install --force llvm@8 ccache
brew link --overwrite llvm@8
ln -s /usr/local/opt/llvm@8 /usr/local/opt/llvm

Expand Down
11 changes: 7 additions & 4 deletions .gitignore
@@ -1,10 +1,11 @@
**/bui*

.DS_Store
/build
/build32
/build64
/cmake-build-debug
build/
build/*
build32
build64
/cmake-*
/tags
.idea
.ycm_extra_conf.py
Expand Down Expand Up @@ -91,3 +92,5 @@ $RECYCLE.BIN/
.vscode
.vs
cmake-*

cmake/polly
15 changes: 8 additions & 7 deletions CMakeLists.txt
Expand Up @@ -45,8 +45,8 @@ set(HUNTER_CONFIGURATION_TYPES Release;Debug CACHE STRING "Hunter configuration
set(HUNTER_JOBS_NUMBER 4 CACHE STRING "Hunter jobs number")
include(hunter/HunterGate)
HunterGate(
URL "https://github.com/cpp-pm/hunter/archive/v0.23.314.tar.gz"
SHA1 "95c47c92f68edb091b5d6d18924baabe02a6962a"
URL "https://github.com/cpp-pm/hunter/archive/v0.24.0.tar.gz"
SHA1 "a3d7f4372b1dcd52faa6ff4a3bd5358e1d0e5efd"
FILEPATH "${CMAKE_CURRENT_LIST_DIR}/cmake/hunter/HunterConfig.cmake"
)

Expand Down Expand Up @@ -112,9 +112,10 @@ include(ExternalProject)
set(FETCHCONTENT_BASE_DIR "${CMAKE_CURRENT_BINARY_DIR}/_FetchContent" CACHE PATH "FetchContent" FORCE)
include(FetchContent)
include(external/Boost)
include(external/Breakpad)
# include(external/Breakpad)
include(external/codecov)
include(external/GTest)
include(external/LMDB)
include(external/MiniUPnP)
include(external/sparsehash)
include(external/Threads)
Expand All @@ -124,12 +125,12 @@ add_subdirectory("${CMAKE_CURRENT_LIST_DIR}/lib")
if(BUILD_WITH_TOOLS)
add_subdirectory("${CMAKE_CURRENT_LIST_DIR}/src")
endif()

#[[if(BUILD_WITH_TESTS)
#[[
if(BUILD_WITH_TESTS)
enable_testing()
add_subdirectory("${CMAKE_CURRENT_LIST_DIR}/tests")
endif()]]

endif()
]]
if(BUILD_WITH_PACKAGE)
include(project/CPackConfig)
endif()