This repository was archived by the owner on Nov 15, 2023. It is now read-only.

Availability/Extrinsic store - #465

Merged
gnunicorn merged 12 commits into
masterfrom
rh-availability-store
Aug 6, 2018
Merged

Availability/Extrinsic store#465
gnunicorn merged 12 commits into
masterfrom
rh-availability-store

Conversation

@rphmeier

@rphmeierrphmeier commented Jul 31, 2018

Copy link
Copy Markdown
Contributor

Closes#371

Introduces an availability store. Validators who are meant to guarantee available data will not cast votes until the data has been written to disk. Currently it resides in a fixed subdirectory of the general data directory, but we will make it configurable in the future.

Block data network requests are now answered from the store if not kept in memory already.
There is no protocol for discovering peer IDs for validators who have historic data available (yet).

@rphmeierrphmeier added the A3-in_progress Pull request is in progress. No review needed at this stage. label Jul 31, 2018
@rphmeierrphmeier changed the title Availability storeAvailability/Extrinsic storeJul 31, 2018
@rphmeierrphmeier added A0-please_review Pull request needs code review. A3-in_progress Pull request is in progress. No review needed at this stage. and removed A3-in_progress Pull request is in progress. No review needed at this stage. A0-please_review Pull request needs code review. labels Aug 2, 2018
@rphmeierrphmeier added A0-please_review Pull request needs code review. and removed A3-in_progress Pull request is in progress. No review needed at this stage. labels Aug 3, 2018

@gnunicorngnunicorn left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some minor style/wrapping thingies (which I wouldn't have to state if we used a tool like ...you know... rustfmt ;p )

self.inner.produced_statements.availability =
statements.extrinsic = Some(extrinsic);
statements.availability =
Some(GenericStatement::Available(hash));

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

wrap unnecessary now.

where
A: LocalPolkadotApi + Send + Sync + 'static,
C: BlockchainEvents<Block> + ChainHead<Block> + bft::BlockImport<Block> + bft::Authorities<Block> + Send + Sync + 'static,
C: BlockchainEvents<Block> + ChainHead<Block> + BlockBody<Block> + bft::BlockImport<Block> + bft::Authorities<Block> + Send + Sync + 'static,

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can we wrap this?

@gnunicorn
gnunicorn merged commit 13de16f into masterAug 6, 2018
log = "0.3"
substrate-codec = { path = "../../substrate/codec" }
substrate-primitives = { path = "../../substrate/primitives" }
kvdb = { git = "https://github.com/paritytech/parity.git" }

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The kvdb* crates are in parity-common now.

fn extract_io_err(err: ::kvdb::Error) -> io::Error {
match err {
::kvdb::Error(::kvdb::ErrorKind::Io(io_err), _) => io_err,
::kvdb::Error(::kvdb::ErrorKind::Msg(msg), _) => io::Error::new(

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These errors are gone and replaced (in parity-ethereum) by plain io::Error. PR

pub fn new(config: Config) -> io::Result<Self> {
let mut db_config = DatabaseConfig::with_columns(Some(columns::NUM_COLUMNS));
db_config.memory_budget = config.cache_size;
db_config.wal = true;

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This option is also gone (always true now).

@rphmeierrphmeier mentioned this pull request Aug 6, 2018

@dvdplmdvdplm left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

}

/// Make some data available provisionally.
pub fn make_available(&self, data: Data) -> io::Result<()> {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What's wrong with fetch or get?

dvdplm added a commit that referenced this pull request Aug 7, 2018
* master:
Fix some formatting grumbles (#501)
remove the extra ? in the license header (#500)
NetworkService::new starts the network (#462)
Availability/Extrinsic store (#465)
Add doc to install a specific tagged version (#497)
@arkpar
arkpar deleted the rh-availability-store branch April 23, 2020 18:08
lamafab pushed a commit to lamafab/substrate that referenced this pull request Jun 16, 2020
Also fix the weird file structure by making `wasm_executor.rs` ->
`wasm_executor/mod.rs`.
liuchengxu added a commit to chainx-org/substrate that referenced this pull request Aug 23, 2021
* Add renominate
* Add tests for renominate
* Build wasm
* Add renominate in fee
* Nit
liuchengxu pushed a commit to autonomys/substrate that referenced this pull request Jun 3, 2022
…branch
Switch to upstream merkle tree library revision
helin6 pushed a commit to boolnetwork/substrate that referenced this pull request Jul 25, 2023
* scripts: Generate changelog
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* scripts: Remove git tag verification
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* scripts: Add usage example
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* Update releasing steps to automate the changelog commits
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

A0-please_reviewPull request needs code review.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Availability of parachain data

3 participants

@rphmeier@dvdplm@gnunicorn
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content
This repository was archived by the owner on Nov 15, 2023. It is now read-only.

Availability/Extrinsic store - #465

Merged
gnunicorn merged 12 commits into
masterfrom
rh-availability-store
Aug 6, 2018
Merged

Availability/Extrinsic store#465
gnunicorn merged 12 commits into
masterfrom
rh-availability-store

Conversation

@rphmeier

@rphmeierrphmeier commented Jul 31, 2018

Copy link
Copy Markdown
Contributor

Closes#371

Introduces an availability store. Validators who are meant to guarantee available data will not cast votes until the data has been written to disk. Currently it resides in a fixed subdirectory of the general data directory, but we will make it configurable in the future.

Block data network requests are now answered from the store if not kept in memory already.
There is no protocol for discovering peer IDs for validators who have historic data available (yet).

@rphmeierrphmeier added the A3-in_progress Pull request is in progress. No review needed at this stage. label Jul 31, 2018
@rphmeierrphmeier changed the title Availability storeAvailability/Extrinsic storeJul 31, 2018
@rphmeierrphmeier added A0-please_review Pull request needs code review. A3-in_progress Pull request is in progress. No review needed at this stage. and removed A3-in_progress Pull request is in progress. No review needed at this stage. A0-please_review Pull request needs code review. labels Aug 2, 2018
@rphmeierrphmeier added A0-please_review Pull request needs code review. and removed A3-in_progress Pull request is in progress. No review needed at this stage. labels Aug 3, 2018

@gnunicorngnunicorn left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some minor style/wrapping thingies (which I wouldn't have to state if we used a tool like ...you know... rustfmt ;p )

self.inner.produced_statements.availability =
statements.extrinsic = Some(extrinsic);
statements.availability =
Some(GenericStatement::Available(hash));

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

wrap unnecessary now.

where
A: LocalPolkadotApi + Send + Sync + 'static,
C: BlockchainEvents<Block> + ChainHead<Block> + bft::BlockImport<Block> + bft::Authorities<Block> + Send + Sync + 'static,
C: BlockchainEvents<Block> + ChainHead<Block> + BlockBody<Block> + bft::BlockImport<Block> + bft::Authorities<Block> + Send + Sync + 'static,

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can we wrap this?

@gnunicorn
gnunicorn merged commit 13de16f into masterAug 6, 2018
log = "0.3"
substrate-codec = { path = "../../substrate/codec" }
substrate-primitives = { path = "../../substrate/primitives" }
kvdb = { git = "https://github.com/paritytech/parity.git" }

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The kvdb* crates are in parity-common now.

fn extract_io_err(err: ::kvdb::Error) -> io::Error {
match err {
::kvdb::Error(::kvdb::ErrorKind::Io(io_err), _) => io_err,
::kvdb::Error(::kvdb::ErrorKind::Msg(msg), _) => io::Error::new(

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These errors are gone and replaced (in parity-ethereum) by plain io::Error. PR

pub fn new(config: Config) -> io::Result<Self> {
let mut db_config = DatabaseConfig::with_columns(Some(columns::NUM_COLUMNS));
db_config.memory_budget = config.cache_size;
db_config.wal = true;

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This option is also gone (always true now).

@rphmeierrphmeier mentioned this pull request Aug 6, 2018

@dvdplmdvdplm left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

}

/// Make some data available provisionally.
pub fn make_available(&self, data: Data) -> io::Result<()> {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What's wrong with fetch or get?

dvdplm added a commit that referenced this pull request Aug 7, 2018
* master:
Fix some formatting grumbles (#501)
remove the extra ? in the license header (#500)
NetworkService::new starts the network (#462)
Availability/Extrinsic store (#465)
Add doc to install a specific tagged version (#497)
@arkpar
arkpar deleted the rh-availability-store branch April 23, 2020 18:08
lamafab pushed a commit to lamafab/substrate that referenced this pull request Jun 16, 2020
Also fix the weird file structure by making `wasm_executor.rs` ->
`wasm_executor/mod.rs`.
liuchengxu added a commit to chainx-org/substrate that referenced this pull request Aug 23, 2021
* Add renominate
* Add tests for renominate
* Build wasm
* Add renominate in fee
* Nit
liuchengxu pushed a commit to autonomys/substrate that referenced this pull request Jun 3, 2022
…branch
Switch to upstream merkle tree library revision
helin6 pushed a commit to boolnetwork/substrate that referenced this pull request Jul 25, 2023
* scripts: Generate changelog
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* scripts: Remove git tag verification
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* scripts: Add usage example
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* Update releasing steps to automate the changelog commits
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

A0-please_reviewPull request needs code review.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Availability of parachain data

3 participants

@rphmeier@dvdplm@gnunicorn
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
This repository was archived by the owner on Nov 15, 2023. It is now read-only.

Availability/Extrinsic store - #465

Merged
gnunicorn merged 12 commits into
masterfrom
rh-availability-store
Aug 6, 2018
Merged

Availability/Extrinsic store#465
gnunicorn merged 12 commits into
masterfrom
rh-availability-store

Conversation

@rphmeier

@rphmeierrphmeier commented Jul 31, 2018

Copy link
Copy Markdown
Contributor

Closes#371

Introduces an availability store. Validators who are meant to guarantee available data will not cast votes until the data has been written to disk. Currently it resides in a fixed subdirectory of the general data directory, but we will make it configurable in the future.

Block data network requests are now answered from the store if not kept in memory already.
There is no protocol for discovering peer IDs for validators who have historic data available (yet).

@rphmeierrphmeier added the A3-in_progress Pull request is in progress. No review needed at this stage. label Jul 31, 2018
@rphmeierrphmeier changed the title Availability storeAvailability/Extrinsic storeJul 31, 2018
@rphmeierrphmeier added A0-please_review Pull request needs code review. A3-in_progress Pull request is in progress. No review needed at this stage. and removed A3-in_progress Pull request is in progress. No review needed at this stage. A0-please_review Pull request needs code review. labels Aug 2, 2018
@rphmeierrphmeier added A0-please_review Pull request needs code review. and removed A3-in_progress Pull request is in progress. No review needed at this stage. labels Aug 3, 2018

@gnunicorngnunicorn left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some minor style/wrapping thingies (which I wouldn't have to state if we used a tool like ...you know... rustfmt ;p )

self.inner.produced_statements.availability =
statements.extrinsic = Some(extrinsic);
statements.availability =
Some(GenericStatement::Available(hash));

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

wrap unnecessary now.

where
A: LocalPolkadotApi + Send + Sync + 'static,
C: BlockchainEvents<Block> + ChainHead<Block> + bft::BlockImport<Block> + bft::Authorities<Block> + Send + Sync + 'static,
C: BlockchainEvents<Block> + ChainHead<Block> + BlockBody<Block> + bft::BlockImport<Block> + bft::Authorities<Block> + Send + Sync + 'static,

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can we wrap this?

@gnunicorn
gnunicorn merged commit 13de16f into masterAug 6, 2018
log = "0.3"
substrate-codec = { path = "../../substrate/codec" }
substrate-primitives = { path = "../../substrate/primitives" }
kvdb = { git = "https://github.com/paritytech/parity.git" }

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The kvdb* crates are in parity-common now.

fn extract_io_err(err: ::kvdb::Error) -> io::Error {
match err {
::kvdb::Error(::kvdb::ErrorKind::Io(io_err), _) => io_err,
::kvdb::Error(::kvdb::ErrorKind::Msg(msg), _) => io::Error::new(

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These errors are gone and replaced (in parity-ethereum) by plain io::Error. PR

pub fn new(config: Config) -> io::Result<Self> {
let mut db_config = DatabaseConfig::with_columns(Some(columns::NUM_COLUMNS));
db_config.memory_budget = config.cache_size;
db_config.wal = true;

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This option is also gone (always true now).

@rphmeierrphmeier mentioned this pull request Aug 6, 2018

@dvdplmdvdplm left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

}

/// Make some data available provisionally.
pub fn make_available(&self, data: Data) -> io::Result<()> {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What's wrong with fetch or get?

dvdplm added a commit that referenced this pull request Aug 7, 2018
* master:
Fix some formatting grumbles (#501)
remove the extra ? in the license header (#500)
NetworkService::new starts the network (#462)
Availability/Extrinsic store (#465)
Add doc to install a specific tagged version (#497)
@arkpar
arkpar deleted the rh-availability-store branch April 23, 2020 18:08
lamafab pushed a commit to lamafab/substrate that referenced this pull request Jun 16, 2020
Also fix the weird file structure by making `wasm_executor.rs` ->
`wasm_executor/mod.rs`.
liuchengxu added a commit to chainx-org/substrate that referenced this pull request Aug 23, 2021
* Add renominate
* Add tests for renominate
* Build wasm
* Add renominate in fee
* Nit
liuchengxu pushed a commit to autonomys/substrate that referenced this pull request Jun 3, 2022
…branch
Switch to upstream merkle tree library revision
helin6 pushed a commit to boolnetwork/substrate that referenced this pull request Jul 25, 2023
* scripts: Generate changelog
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* scripts: Remove git tag verification
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* scripts: Add usage example
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* Update releasing steps to automate the changelog commits
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

A0-please_reviewPull request needs code review.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Availability of parachain data

3 participants

@rphmeier@dvdplm@gnunicorn
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
This repository was archived by the owner on Nov 15, 2023. It is now read-only.

Availability/Extrinsic store - #465

Merged
gnunicorn merged 12 commits into
masterfrom
rh-availability-store
Aug 6, 2018
Merged

Availability/Extrinsic store#465
gnunicorn merged 12 commits into
masterfrom
rh-availability-store

Conversation

@rphmeier

@rphmeierrphmeier commented Jul 31, 2018

Copy link
Copy Markdown
Contributor

Closes#371

Introduces an availability store. Validators who are meant to guarantee available data will not cast votes until the data has been written to disk. Currently it resides in a fixed subdirectory of the general data directory, but we will make it configurable in the future.

Block data network requests are now answered from the store if not kept in memory already.
There is no protocol for discovering peer IDs for validators who have historic data available (yet).

@rphmeierrphmeier added the A3-in_progress Pull request is in progress. No review needed at this stage. label Jul 31, 2018
@rphmeierrphmeier changed the title Availability storeAvailability/Extrinsic storeJul 31, 2018
@rphmeierrphmeier added A0-please_review Pull request needs code review. A3-in_progress Pull request is in progress. No review needed at this stage. and removed A3-in_progress Pull request is in progress. No review needed at this stage. A0-please_review Pull request needs code review. labels Aug 2, 2018
@rphmeierrphmeier added A0-please_review Pull request needs code review. and removed A3-in_progress Pull request is in progress. No review needed at this stage. labels Aug 3, 2018

@gnunicorngnunicorn left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some minor style/wrapping thingies (which I wouldn't have to state if we used a tool like ...you know... rustfmt ;p )

self.inner.produced_statements.availability =
statements.extrinsic = Some(extrinsic);
statements.availability =
Some(GenericStatement::Available(hash));

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

wrap unnecessary now.

where
A: LocalPolkadotApi + Send + Sync + 'static,
C: BlockchainEvents<Block> + ChainHead<Block> + bft::BlockImport<Block> + bft::Authorities<Block> + Send + Sync + 'static,
C: BlockchainEvents<Block> + ChainHead<Block> + BlockBody<Block> + bft::BlockImport<Block> + bft::Authorities<Block> + Send + Sync + 'static,

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can we wrap this?

@gnunicorn
gnunicorn merged commit 13de16f into masterAug 6, 2018
log = "0.3"
substrate-codec = { path = "../../substrate/codec" }
substrate-primitives = { path = "../../substrate/primitives" }
kvdb = { git = "https://github.com/paritytech/parity.git" }

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The kvdb* crates are in parity-common now.

fn extract_io_err(err: ::kvdb::Error) -> io::Error {
match err {
::kvdb::Error(::kvdb::ErrorKind::Io(io_err), _) => io_err,
::kvdb::Error(::kvdb::ErrorKind::Msg(msg), _) => io::Error::new(

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These errors are gone and replaced (in parity-ethereum) by plain io::Error. PR

pub fn new(config: Config) -> io::Result<Self> {
let mut db_config = DatabaseConfig::with_columns(Some(columns::NUM_COLUMNS));
db_config.memory_budget = config.cache_size;
db_config.wal = true;

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This option is also gone (always true now).

@rphmeierrphmeier mentioned this pull request Aug 6, 2018

@dvdplmdvdplm left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

}

/// Make some data available provisionally.
pub fn make_available(&self, data: Data) -> io::Result<()> {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What's wrong with fetch or get?

dvdplm added a commit that referenced this pull request Aug 7, 2018
* master:
Fix some formatting grumbles (#501)
remove the extra ? in the license header (#500)
NetworkService::new starts the network (#462)
Availability/Extrinsic store (#465)
Add doc to install a specific tagged version (#497)
@arkpar
arkpar deleted the rh-availability-store branch April 23, 2020 18:08
lamafab pushed a commit to lamafab/substrate that referenced this pull request Jun 16, 2020
Also fix the weird file structure by making `wasm_executor.rs` ->
`wasm_executor/mod.rs`.
liuchengxu added a commit to chainx-org/substrate that referenced this pull request Aug 23, 2021
* Add renominate
* Add tests for renominate
* Build wasm
* Add renominate in fee
* Nit
liuchengxu pushed a commit to autonomys/substrate that referenced this pull request Jun 3, 2022
…branch
Switch to upstream merkle tree library revision
helin6 pushed a commit to boolnetwork/substrate that referenced this pull request Jul 25, 2023
* scripts: Generate changelog
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* scripts: Remove git tag verification
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* scripts: Add usage example
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* Update releasing steps to automate the changelog commits
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

A0-please_reviewPull request needs code review.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Availability of parachain data

3 participants

@rphmeier@dvdplm@gnunicorn
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content
This repository was archived by the owner on Nov 15, 2023. It is now read-only.

Availability/Extrinsic store - #465

Merged
gnunicorn merged 12 commits into
masterfrom
rh-availability-store
Aug 6, 2018
Merged

Availability/Extrinsic store#465
gnunicorn merged 12 commits into
masterfrom
rh-availability-store

Conversation

@rphmeier

@rphmeierrphmeier commented Jul 31, 2018

Copy link
Copy Markdown
Contributor

Closes#371

Introduces an availability store. Validators who are meant to guarantee available data will not cast votes until the data has been written to disk. Currently it resides in a fixed subdirectory of the general data directory, but we will make it configurable in the future.

Block data network requests are now answered from the store if not kept in memory already.
There is no protocol for discovering peer IDs for validators who have historic data available (yet).

@rphmeierrphmeier added the A3-in_progress Pull request is in progress. No review needed at this stage. label Jul 31, 2018
@rphmeierrphmeier changed the title Availability storeAvailability/Extrinsic storeJul 31, 2018
@rphmeierrphmeier added A0-please_review Pull request needs code review. A3-in_progress Pull request is in progress. No review needed at this stage. and removed A3-in_progress Pull request is in progress. No review needed at this stage. A0-please_review Pull request needs code review. labels Aug 2, 2018
@rphmeierrphmeier added A0-please_review Pull request needs code review. and removed A3-in_progress Pull request is in progress. No review needed at this stage. labels Aug 3, 2018

@gnunicorngnunicorn left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some minor style/wrapping thingies (which I wouldn't have to state if we used a tool like ...you know... rustfmt ;p )

self.inner.produced_statements.availability =
statements.extrinsic = Some(extrinsic);
statements.availability =
Some(GenericStatement::Available(hash));

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

wrap unnecessary now.

where
A: LocalPolkadotApi + Send + Sync + 'static,
C: BlockchainEvents<Block> + ChainHead<Block> + bft::BlockImport<Block> + bft::Authorities<Block> + Send + Sync + 'static,
C: BlockchainEvents<Block> + ChainHead<Block> + BlockBody<Block> + bft::BlockImport<Block> + bft::Authorities<Block> + Send + Sync + 'static,

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can we wrap this?

@gnunicorn
gnunicorn merged commit 13de16f into masterAug 6, 2018
log = "0.3"
substrate-codec = { path = "../../substrate/codec" }
substrate-primitives = { path = "../../substrate/primitives" }
kvdb = { git = "https://github.com/paritytech/parity.git" }

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The kvdb* crates are in parity-common now.

fn extract_io_err(err: ::kvdb::Error) -> io::Error {
match err {
::kvdb::Error(::kvdb::ErrorKind::Io(io_err), _) => io_err,
::kvdb::Error(::kvdb::ErrorKind::Msg(msg), _) => io::Error::new(

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These errors are gone and replaced (in parity-ethereum) by plain io::Error. PR

pub fn new(config: Config) -> io::Result<Self> {
let mut db_config = DatabaseConfig::with_columns(Some(columns::NUM_COLUMNS));
db_config.memory_budget = config.cache_size;
db_config.wal = true;

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This option is also gone (always true now).

@rphmeierrphmeier mentioned this pull request Aug 6, 2018

@dvdplmdvdplm left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

}

/// Make some data available provisionally.
pub fn make_available(&self, data: Data) -> io::Result<()> {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What's wrong with fetch or get?

dvdplm added a commit that referenced this pull request Aug 7, 2018
* master:
Fix some formatting grumbles (#501)
remove the extra ? in the license header (#500)
NetworkService::new starts the network (#462)
Availability/Extrinsic store (#465)
Add doc to install a specific tagged version (#497)
@arkpar
arkpar deleted the rh-availability-store branch April 23, 2020 18:08
lamafab pushed a commit to lamafab/substrate that referenced this pull request Jun 16, 2020
Also fix the weird file structure by making `wasm_executor.rs` ->
`wasm_executor/mod.rs`.
liuchengxu added a commit to chainx-org/substrate that referenced this pull request Aug 23, 2021
* Add renominate
* Add tests for renominate
* Build wasm
* Add renominate in fee
* Nit
liuchengxu pushed a commit to autonomys/substrate that referenced this pull request Jun 3, 2022
…branch
Switch to upstream merkle tree library revision
helin6 pushed a commit to boolnetwork/substrate that referenced this pull request Jul 25, 2023
* scripts: Generate changelog
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* scripts: Remove git tag verification
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* scripts: Add usage example
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* Update releasing steps to automate the changelog commits
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

A0-please_reviewPull request needs code review.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Availability of parachain data

3 participants

@rphmeier@dvdplm@gnunicorn
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
This repository was archived by the owner on Nov 15, 2023. It is now read-only.

Availability/Extrinsic store - #465

Merged
gnunicorn merged 12 commits into
masterfrom
rh-availability-store
Aug 6, 2018
Merged

Availability/Extrinsic store#465
gnunicorn merged 12 commits into
masterfrom
rh-availability-store

Conversation

@rphmeier

@rphmeierrphmeier commented Jul 31, 2018

Copy link
Copy Markdown
Contributor

Closes#371

Introduces an availability store. Validators who are meant to guarantee available data will not cast votes until the data has been written to disk. Currently it resides in a fixed subdirectory of the general data directory, but we will make it configurable in the future.

Block data network requests are now answered from the store if not kept in memory already.
There is no protocol for discovering peer IDs for validators who have historic data available (yet).

@rphmeierrphmeier added the A3-in_progress Pull request is in progress. No review needed at this stage. label Jul 31, 2018
@rphmeierrphmeier changed the title Availability storeAvailability/Extrinsic storeJul 31, 2018
@rphmeierrphmeier added A0-please_review Pull request needs code review. A3-in_progress Pull request is in progress. No review needed at this stage. and removed A3-in_progress Pull request is in progress. No review needed at this stage. A0-please_review Pull request needs code review. labels Aug 2, 2018
@rphmeierrphmeier added A0-please_review Pull request needs code review. and removed A3-in_progress Pull request is in progress. No review needed at this stage. labels Aug 3, 2018

@gnunicorngnunicorn left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some minor style/wrapping thingies (which I wouldn't have to state if we used a tool like ...you know... rustfmt ;p )

self.inner.produced_statements.availability =
statements.extrinsic = Some(extrinsic);
statements.availability =
Some(GenericStatement::Available(hash));

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

wrap unnecessary now.

where
A: LocalPolkadotApi + Send + Sync + 'static,
C: BlockchainEvents<Block> + ChainHead<Block> + bft::BlockImport<Block> + bft::Authorities<Block> + Send + Sync + 'static,
C: BlockchainEvents<Block> + ChainHead<Block> + BlockBody<Block> + bft::BlockImport<Block> + bft::Authorities<Block> + Send + Sync + 'static,

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can we wrap this?

@gnunicorn
gnunicorn merged commit 13de16f into masterAug 6, 2018
log = "0.3"
substrate-codec = { path = "../../substrate/codec" }
substrate-primitives = { path = "../../substrate/primitives" }
kvdb = { git = "https://github.com/paritytech/parity.git" }

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The kvdb* crates are in parity-common now.

fn extract_io_err(err: ::kvdb::Error) -> io::Error {
match err {
::kvdb::Error(::kvdb::ErrorKind::Io(io_err), _) => io_err,
::kvdb::Error(::kvdb::ErrorKind::Msg(msg), _) => io::Error::new(

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These errors are gone and replaced (in parity-ethereum) by plain io::Error. PR

pub fn new(config: Config) -> io::Result<Self> {
let mut db_config = DatabaseConfig::with_columns(Some(columns::NUM_COLUMNS));
db_config.memory_budget = config.cache_size;
db_config.wal = true;

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This option is also gone (always true now).

@rphmeierrphmeier mentioned this pull request Aug 6, 2018

@dvdplmdvdplm left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

}

/// Make some data available provisionally.
pub fn make_available(&self, data: Data) -> io::Result<()> {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What's wrong with fetch or get?

dvdplm added a commit that referenced this pull request Aug 7, 2018
* master:
Fix some formatting grumbles (#501)
remove the extra ? in the license header (#500)
NetworkService::new starts the network (#462)
Availability/Extrinsic store (#465)
Add doc to install a specific tagged version (#497)
@arkpar
arkpar deleted the rh-availability-store branch April 23, 2020 18:08
lamafab pushed a commit to lamafab/substrate that referenced this pull request Jun 16, 2020
Also fix the weird file structure by making `wasm_executor.rs` ->
`wasm_executor/mod.rs`.
liuchengxu added a commit to chainx-org/substrate that referenced this pull request Aug 23, 2021
* Add renominate
* Add tests for renominate
* Build wasm
* Add renominate in fee
* Nit
liuchengxu pushed a commit to autonomys/substrate that referenced this pull request Jun 3, 2022
…branch
Switch to upstream merkle tree library revision
helin6 pushed a commit to boolnetwork/substrate that referenced this pull request Jul 25, 2023
* scripts: Generate changelog
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* scripts: Remove git tag verification
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* scripts: Add usage example
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* Update releasing steps to automate the changelog commits
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

A0-please_reviewPull request needs code review.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Availability of parachain data

3 participants

@rphmeier@dvdplm@gnunicorn
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content
This repository was archived by the owner on Nov 15, 2023. It is now read-only.

Availability/Extrinsic store - #465

Merged
gnunicorn merged 12 commits into
masterfrom
rh-availability-store
Aug 6, 2018
Merged

Availability/Extrinsic store#465
gnunicorn merged 12 commits into
masterfrom
rh-availability-store

Conversation

@rphmeier

@rphmeierrphmeier commented Jul 31, 2018

Copy link
Copy Markdown
Contributor

Closes#371

Introduces an availability store. Validators who are meant to guarantee available data will not cast votes until the data has been written to disk. Currently it resides in a fixed subdirectory of the general data directory, but we will make it configurable in the future.

Block data network requests are now answered from the store if not kept in memory already.
There is no protocol for discovering peer IDs for validators who have historic data available (yet).

@rphmeierrphmeier added the A3-in_progress Pull request is in progress. No review needed at this stage. label Jul 31, 2018
@rphmeierrphmeier changed the title Availability storeAvailability/Extrinsic storeJul 31, 2018
@rphmeierrphmeier added A0-please_review Pull request needs code review. A3-in_progress Pull request is in progress. No review needed at this stage. and removed A3-in_progress Pull request is in progress. No review needed at this stage. A0-please_review Pull request needs code review. labels Aug 2, 2018
@rphmeierrphmeier added A0-please_review Pull request needs code review. and removed A3-in_progress Pull request is in progress. No review needed at this stage. labels Aug 3, 2018

@gnunicorngnunicorn left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some minor style/wrapping thingies (which I wouldn't have to state if we used a tool like ...you know... rustfmt ;p )

self.inner.produced_statements.availability =
statements.extrinsic = Some(extrinsic);
statements.availability =
Some(GenericStatement::Available(hash));

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

wrap unnecessary now.

where
A: LocalPolkadotApi + Send + Sync + 'static,
C: BlockchainEvents<Block> + ChainHead<Block> + bft::BlockImport<Block> + bft::Authorities<Block> + Send + Sync + 'static,
C: BlockchainEvents<Block> + ChainHead<Block> + BlockBody<Block> + bft::BlockImport<Block> + bft::Authorities<Block> + Send + Sync + 'static,

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can we wrap this?

@gnunicorn
gnunicorn merged commit 13de16f into masterAug 6, 2018
log = "0.3"
substrate-codec = { path = "../../substrate/codec" }
substrate-primitives = { path = "../../substrate/primitives" }
kvdb = { git = "https://github.com/paritytech/parity.git" }

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The kvdb* crates are in parity-common now.

fn extract_io_err(err: ::kvdb::Error) -> io::Error {
match err {
::kvdb::Error(::kvdb::ErrorKind::Io(io_err), _) => io_err,
::kvdb::Error(::kvdb::ErrorKind::Msg(msg), _) => io::Error::new(

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These errors are gone and replaced (in parity-ethereum) by plain io::Error. PR

pub fn new(config: Config) -> io::Result<Self> {
let mut db_config = DatabaseConfig::with_columns(Some(columns::NUM_COLUMNS));
db_config.memory_budget = config.cache_size;
db_config.wal = true;

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This option is also gone (always true now).

@rphmeierrphmeier mentioned this pull request Aug 6, 2018

@dvdplmdvdplm left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

}

/// Make some data available provisionally.
pub fn make_available(&self, data: Data) -> io::Result<()> {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What's wrong with fetch or get?

dvdplm added a commit that referenced this pull request Aug 7, 2018
* master:
Fix some formatting grumbles (#501)
remove the extra ? in the license header (#500)
NetworkService::new starts the network (#462)
Availability/Extrinsic store (#465)
Add doc to install a specific tagged version (#497)
@arkpar
arkpar deleted the rh-availability-store branch April 23, 2020 18:08
lamafab pushed a commit to lamafab/substrate that referenced this pull request Jun 16, 2020
Also fix the weird file structure by making `wasm_executor.rs` ->
`wasm_executor/mod.rs`.
liuchengxu added a commit to chainx-org/substrate that referenced this pull request Aug 23, 2021
* Add renominate
* Add tests for renominate
* Build wasm
* Add renominate in fee
* Nit
liuchengxu pushed a commit to autonomys/substrate that referenced this pull request Jun 3, 2022
…branch
Switch to upstream merkle tree library revision
helin6 pushed a commit to boolnetwork/substrate that referenced this pull request Jul 25, 2023
* scripts: Generate changelog
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* scripts: Remove git tag verification
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* scripts: Add usage example
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* Update releasing steps to automate the changelog commits
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

A0-please_reviewPull request needs code review.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Availability of parachain data

3 participants

@rphmeier@dvdplm@gnunicorn
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content
This repository was archived by the owner on Nov 15, 2023. It is now read-only.

Availability/Extrinsic store - #465

Merged
gnunicorn merged 12 commits into
masterfrom
rh-availability-store
Aug 6, 2018
Merged

Availability/Extrinsic store#465
gnunicorn merged 12 commits into
masterfrom
rh-availability-store

Conversation

@rphmeier

@rphmeierrphmeier commented Jul 31, 2018

Copy link
Copy Markdown
Contributor

Closes#371

Introduces an availability store. Validators who are meant to guarantee available data will not cast votes until the data has been written to disk. Currently it resides in a fixed subdirectory of the general data directory, but we will make it configurable in the future.

Block data network requests are now answered from the store if not kept in memory already.
There is no protocol for discovering peer IDs for validators who have historic data available (yet).

@rphmeierrphmeier added the A3-in_progress Pull request is in progress. No review needed at this stage. label Jul 31, 2018
@rphmeierrphmeier changed the title Availability storeAvailability/Extrinsic storeJul 31, 2018
@rphmeierrphmeier added A0-please_review Pull request needs code review. A3-in_progress Pull request is in progress. No review needed at this stage. and removed A3-in_progress Pull request is in progress. No review needed at this stage. A0-please_review Pull request needs code review. labels Aug 2, 2018
@rphmeierrphmeier added A0-please_review Pull request needs code review. and removed A3-in_progress Pull request is in progress. No review needed at this stage. labels Aug 3, 2018

@gnunicorngnunicorn left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some minor style/wrapping thingies (which I wouldn't have to state if we used a tool like ...you know... rustfmt ;p )

self.inner.produced_statements.availability =
statements.extrinsic = Some(extrinsic);
statements.availability =
Some(GenericStatement::Available(hash));

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

wrap unnecessary now.

where
A: LocalPolkadotApi + Send + Sync + 'static,
C: BlockchainEvents<Block> + ChainHead<Block> + bft::BlockImport<Block> + bft::Authorities<Block> + Send + Sync + 'static,
C: BlockchainEvents<Block> + ChainHead<Block> + BlockBody<Block> + bft::BlockImport<Block> + bft::Authorities<Block> + Send + Sync + 'static,

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can we wrap this?

@gnunicorn
gnunicorn merged commit 13de16f into masterAug 6, 2018
log = "0.3"
substrate-codec = { path = "../../substrate/codec" }
substrate-primitives = { path = "../../substrate/primitives" }
kvdb = { git = "https://github.com/paritytech/parity.git" }

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The kvdb* crates are in parity-common now.

fn extract_io_err(err: ::kvdb::Error) -> io::Error {
match err {
::kvdb::Error(::kvdb::ErrorKind::Io(io_err), _) => io_err,
::kvdb::Error(::kvdb::ErrorKind::Msg(msg), _) => io::Error::new(

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These errors are gone and replaced (in parity-ethereum) by plain io::Error. PR

pub fn new(config: Config) -> io::Result<Self> {
let mut db_config = DatabaseConfig::with_columns(Some(columns::NUM_COLUMNS));
db_config.memory_budget = config.cache_size;
db_config.wal = true;

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This option is also gone (always true now).

@rphmeierrphmeier mentioned this pull request Aug 6, 2018

@dvdplmdvdplm left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

}

/// Make some data available provisionally.
pub fn make_available(&self, data: Data) -> io::Result<()> {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What's wrong with fetch or get?

dvdplm added a commit that referenced this pull request Aug 7, 2018
* master:
Fix some formatting grumbles (#501)
remove the extra ? in the license header (#500)
NetworkService::new starts the network (#462)
Availability/Extrinsic store (#465)
Add doc to install a specific tagged version (#497)
@arkpar
arkpar deleted the rh-availability-store branch April 23, 2020 18:08
lamafab pushed a commit to lamafab/substrate that referenced this pull request Jun 16, 2020
Also fix the weird file structure by making `wasm_executor.rs` ->
`wasm_executor/mod.rs`.
liuchengxu added a commit to chainx-org/substrate that referenced this pull request Aug 23, 2021
* Add renominate
* Add tests for renominate
* Build wasm
* Add renominate in fee
* Nit
liuchengxu pushed a commit to autonomys/substrate that referenced this pull request Jun 3, 2022
…branch
Switch to upstream merkle tree library revision
helin6 pushed a commit to boolnetwork/substrate that referenced this pull request Jul 25, 2023
* scripts: Generate changelog
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* scripts: Remove git tag verification
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* scripts: Add usage example
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* Update releasing steps to automate the changelog commits
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
Sign up for freeto subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

A0-please_reviewPull request needs code review.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Availability of parachain data

3 participants

@rphmeier@dvdplm@gnunicorn