Skip to content

Conversation

jamescowens
Copy link
Member

This pull request groups together the set of commits that implements the new superblock validation. It is currently incomplete. This PR will track development of the integrated_scraper_2 through the conversion of the ValidateSuperblock function into a class.

It also includes the implemention of a "pending delete" map for CScraperManifests to avoid the occasional "spurious part" problems that we were seeing. We determined this was happening due to deletion of a manifest on the local node in between the request for a part based on that manifest and the actual receipt of the part by the node. If the manifest is deleted in between, a reference to the part may no longer exist and it will be deemed spurious. To prevent this, the CScaperManifest entry to be deleted is moved to the mapPendingDeletedManifest and held there for nScraperSleep time. Since the reference to the part is maintained, the part when received is no longer deemed spurious. nScraperSleep time is more than enough to deal with parts receipt latency.

@jamescowens jamescowens added this to the Fern milestone Sep 13, 2019
This is an additional check that should eliminate the
spurious part problem.
@jamescowens jamescowens changed the title Superblock validation (draft) Superblock validation Sep 24, 2019
@jamescowens jamescowens merged commit 77f3aa2 into gridcoin-community:development Sep 24, 2019
@jamescowens jamescowens changed the title Superblock validation Superblock validation -Part I Oct 22, 2019
@jamescowens jamescowens changed the title Superblock validation -Part I Superblock validation - Part I Oct 22, 2019
jamescowens added a commit that referenced this pull request Oct 22, 2019
Added
 - Add testnet desktop launcher action for Linux #1516 (@caraka)
 - Shuffle vSideStakeAlloc if necessary to support sidestaking to more than 6 destinations #1532 (@jamescowens)
 - New Superblock format preparations for Fern #1526, #1542 (@jamescowens, @cyrossignol)
 - Multisigtools
   - Consolidate multisig unspent #1529 (@iFoggz)
   - Scanforunspent #1547 (@iFoggz)
   - consolidatemsunspent and scanforunspent bug fix #1561 (@iFoggz)
 - New banning misbehavior handling and Peers Tab on Debug Console #1537 (@jamescowens)
 - Reimplement getunconfirmedbalance rpc #1548 (@jamescowens)
 - Add CLI switch to display binary version #1553 (@cyrossignol)

Changed
 - Select smallest coins for contracts #1519 (@iFoggz)
 - Move some functionality from miner to SelectCoinsForStaking + Respect the coin reserve setting + Randomize UTXO order #1525 (@iFoggz)
 - For voting - if url does not contain http then add it #1531 (@iFoggz)
 - Backport newer serialization facilities from Bitcoin #1535 (@cyrossignol)
 - Refactor ThreadSocketHandler2() Inactivity checks #1538 (@iFoggz)
 - Update outdated checkpoints #1539 (@barton2526)
 - Change needed to build Gridcoin for OSX using homebrew #1540 (@Git-Jiro)
 - Optimize scraper traffic for expiring manifests #1542 (@jamescowens)
 - Move legacy neural vote warnings to debug log level #1560 (@cyrossignol)
 - Change banlist save interval to 5 minutes #1564 (@jamescowens)
 - Change default rpcconsole.ui window size to better support new Peers tab #1566 (@jamescowens)

Removed
 - Remove deprecated RSA weight and legacy kernel #1507 (@cyrossignol)

Fixed
 - Clean up compiler warnings #1521 (@cyrossignol)
 - Handle missing external CPID in client_state.xml #1530 (@cyrossignol)
 - Support boost 1.70+ #1533 (@iFoggz)
 - Fix diagnostics failed to make connection to NTP server #1545 (@Git-Jiro)
 - Install manpages in correct system location #1546 (@Git-Jiro)
 - Fix ability to show help and version without a config file #1553 (@cyrossignol)
 - Refactor QT UI variable names to be more consistent, Fix Difficulty default #1563 (@barton2526)
 - Fix two regressions in previous UI refactor #1565 (@barton2526)
 - Fix "Owed" amount in output of "magnitude" RPC method #1569 (@cyrossignol)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants