Commit Graph

2574 Commits

Author SHA1 Message Date
ardocrat d217bda12e lmdb: store max 10k keys in the iterator 2026-05-16 12:44:21 +03:00
ardocrat 7d251d2267 lmdb: use index to detect separator, ignore unknown db key to not have a panic 2026-05-15 18:38:25 +03:00
ardocrat aa28adc6bd lmdb: use atomic open txs and stores count 2026-05-15 18:20:13 +03:00
ardocrat 22bc944918 lmdb: sleep 10ms when waiting all opened txs to be closed 2026-05-15 10:53:20 +03:00
ardocrat f921f8758c lmdb: use atomic for resize and resize checking flags 2026-05-15 10:52:09 +03:00
ardocrat 9d0925ab08 lmdb: remove env state when there are no more stores 2026-05-01 01:30:33 +03:00
ardocrat d52cfe173b lmdb: immediate resize if there are no open transactions 2026-04-29 23:36:37 +03:00
ardocrat f41d188dc9 lmdb: count all open transactions to finish before resizing 2026-04-29 22:25:56 +03:00
ardocrat 4cadce1230 fix: pop pos key 2026-04-27 17:41:11 +03:00
ardocrat 9ca157d24c lmdb: use separate databases instead of prefixes, use default db for values without prefixes, migrate old environment 2026-04-27 12:37:01 +03:00
ardocrat e22f5acb11 fix: check batches count on resize waiting 2026-04-24 18:25:07 +03:00
ardocrat deb5b49310 lmdb: use static reader for iterator, count existing batches for stable resize 2026-04-24 18:13:30 +03:00
ardocrat 70040d2160 lmdb: wait db resize before read, reduce timeout before resizing 2026-04-24 13:27:28 +03:00
ardocrat eef000dfe8 lmdb: default env name 2026-04-23 00:27:22 +03:00
ardocrat b18f453fa8 lmdb: speed up prefix iter by storing keys 2026-04-22 19:23:28 +03:00
ardocrat b5eeb37641 fix: resize to have correct multiplier of the system page size 2026-04-21 18:46:04 +03:00
ardocrat 5adec7ad13 build: remove unused dependency 2026-04-20 21:13:50 +03:00
ardocrat f9a04ff100 lmdb: ability to use multiple shared environments 2026-04-20 21:08:26 +03:00
ardocrat 08e95ce197 fix: revert chunk size to 128mb 2026-04-17 01:26:45 +03:00
ardocrat fcf0884b34 lmdb: single environment, migrate existing databases with provided non-default environment name 2026-04-17 00:44:09 +03:00
ardocrat 593f4c420a build: fix missing deps at Cargo.lock 2026-04-16 22:50:53 +03:00
ardocrat 02cce56741 fix: check resizing operation and wait to avoid crash with multiple batches, fix exists check at batch 2026-04-16 14:30:36 +03:00
ardocrat 1036ca6ac1 db: migrate from lmdb-zero to heed 2026-04-16 12:12:34 +03:00
ardocrat 90dab5fcc6 More reliable peers check (#3824)
* peer: unknown state for new peers, check peers state on every monitor (128 healthy non-connected + 128 defuncts + 128 unknown), mark peer as defunct when ping not passed, do not crash on toml parse with dns failure

* p2p: cleanup before selection at monitor, add outbound to connected list only when there is not enough peers + disconnect extra peer immediately, reconnect to seeds at monitor to avoid stuck, update only defunct state to unknown when received existing peer address

* p2p: reduced amount of total peers to check at monitor

* p2p: do not check healthy and defunct peers more often than once per hour, store last connection attempt, do not ask for more peers when there is enough outbound

* peer: update last_attempt when changing peer state to other than Banned

* fix: log of peers amount to check
2026-04-09 11:55:22 -04:00
ardocrat af0c1dca02 pibd: fix check for next required kernel segment (#3822) 2026-03-25 08:29:15 -04:00
David Burkett 2ec7b4d5cd Bump version to v5.4.0 2026-03-09 10:44:03 -04:00
David Burkett 41e50cda8f Fix macOS x86 release workflow 2026-03-08 14:49:22 -04:00
David Burkett 789ff2859c Prep for release 2026-03-08 14:32:26 -04:00
ardocrat c2abf1ecf0 GHCR: add arm platform, crash fixes (#3819)
* ghcr: add arm platform, remove attestation

* ghcr: checkout code to get version

* ghcr: fix tag var format

* docker: --no-tui flag for entrypoint

* docker: install ca-certificates to be able to use grin client inside container

* docker: add default volume, expose API port exposable by making IP address public
2026-02-27 11:52:31 -05:00
ardocrat 376c85bab5 Fix PIBD sync stuck (#3817)
* pibd: record segment peer to exclude it from re-request

* desegmenter is blocked on a missing kernel

* segment iter

* add indexing

* pibd: log excluded peer

* segment batch optimization

* pibd: debug logging for stale requests

* pibd: filter excluded peer

* pibd: check existing kernel segment identifier

* pibd: simplify peer selection condition

---------

Co-authored-by: Joerg <wiesche89@googlemail.com>
2026-01-08 14:40:59 -05:00
ardocrat ddea797c0a Disable TUI on binary launch (#3818)
* adding --no-tui

* revert next line

* english comments

* bin: more detailed no-tui flag description

---------

Co-authored-by: Jörg Wieschebrock <Joerg.Wieschebrock@krone.de>
2026-01-08 14:40:42 -05:00
ardocrat da7b6b5c50 Docker package build (#3816)
* bin: ability to use chain type argument for 'run' subcommand

* docker: single image for mainnet and testnet, update build docs

* docker: root user

* github: ghcr publish

* github: build image for master branch only

* docs: fix paths

* docker: move 'server run' to command

* Revert "bin: ability to use chain type argument for 'run' subcommand"

This reverts commit fc2d9199c3ff80c5c7305e3fc5b1f6fe86e8dacf.

* docker: disable tui at config
2026-01-06 13:39:18 -05:00
ardocrat dc6f8d2520 GitHub ci/cd fix (#3815)
* cd: windows-latest

* ci: windows-latest

* ci: windows-2022

* cd: windows-2022

* build: update built lib
2025-11-22 15:56:35 +01:00
wiesche cda55ce6fc Extension Grin Node API during synchronization #3813 (#3814) 2025-11-20 12:10:51 -05:00
Yeastplume 8e79856168 Upgrade Tokio to v1.x and Hyper to v0.14 (#3804)
* update of tokio and related dependencies to 1.x

* update to hyper 0.14

* fixes to http connector for tests
2025-03-08 11:54:13 +00:00
Yeastplume b93d88b58c Addition of seed-check logic to top-level crate (#3801)
* Addition of initial seed check logic

* updated to call from command line, now need to do something about peer store root output

* rework check to delete temp files, add output options, testing
2024-11-27 14:01:38 +00:00
Yeastplume 6c012043c0 Add Devcontainer Support (#3799)
* attempt at dual mac builds

* add initial devcontainer

* correct dependency import
2024-11-13 12:04:02 +00:00
yeastplume 118f885468 add rustup target to mac x86_64 build 2024-11-05 10:46:06 +00:00
Yeastplume 2d60c5178b attempt at dual mac builds (#3798) 2024-11-05 10:25:24 +00:00
aglkm 01b25650e2 Chain type field (#3790)
* Adding chain type field into get_status rpc

* formatting
2024-09-12 21:03:51 +01:00
Yeastplume 9a23cfe483 Rust 1.80+ fixes & accumulated warning cleanup (#3796)
* Update versioning on master to 5.4.0-alpha.0

* updates for 1.80 and other accumulated warnings

* further warning cleanups

* move dead code tag to function defn rather than module
2024-09-12 20:59:40 +01:00
Yeastplume 845c41de13 Remove Merkle Proof Generation from Foreign API get_outputs (#3792)
* Update versioning on master to 5.4.0-alpha.0

* Remove merkle proof generation from foreign API
2024-06-18 11:44:17 +01:00
Yeastplume 503527c2e7 Update versioning on master to 5.4.0-alpha.0 (#3789) 2024-05-20 09:30:00 +01:00
Yeastplume c0f48f1528 Update grin_secp to 0.7.14 (#3788) 2024-05-13 13:19:27 +01:00
Yeastplume 163ca397f4 Update versioning for 5.3.0, update grin_secp256k1zkp dependency (#3786) 2024-04-18 12:31:25 +01:00
Yeastplume 43b43d9749 croaring-rs upgrade 0.5.2 -> 1.0.1 (#3779)
* first pass compilation of croaring update

* cargo.lock

* add roaring arch flag into CI build scripts

* revert CI to use windows 2019 image

* add more debug

* more debug info

* update range arguments to bitmap remove_range function calls

* remove unnecessary cast
2024-02-06 16:33:32 +00:00
Yeastplume c5efaa4e7c more chrono warnings, update cursive lib (#3778) 2024-01-29 12:50:45 +00:00
Yeastplume d1b7ae5352 warning cleanup (#3759) 2024-01-29 09:23:38 +00:00
Quentin Le Sceller a9f45dee2b Remove Azure Pipelines and add Github Actions (#3765)
* Remove Azure Pipelines and add Github Actions

* Trigger CI on push and pull request
2024-01-26 12:58:52 +00:00
Yeastplume c48ba3e365 update development version 2024-01-25 12:08:34 +00:00