forked from neo-project/neo
-
Notifications
You must be signed in to change notification settings - Fork 0
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
Update from master branch #2
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
* Handles escape characters in JSON * Pass ApplicationExecution to IPersistencePlugin (neo-project#531) * Update dependencies: (neo-project#532) - Akka 1.3.11 - Microsoft.AspNetCore.ResponseCompression 2.2.0 - Microsoft.AspNetCore.Server.Kestrel 2.2.0 - Microsoft.AspNetCore.Server.Kestrel.Https 2.2.0 - Microsoft.AspNetCore.WebSockets 2.2.0 - Microsoft.EntityFrameworkCore.Sqlite 2.2.0 - Microsoft.Extensions.Configuration.Json 2.2.0 * change version to v2.9.4 * Updating Unknown to Policy Fail (neo-project#533) * Fix a dead lock in `WalletIndexer` * Downgrade Sqlite to 2.1.4 (neo-project#535) * RPC call gettransactionheight (neo-project#541) * getrawtransactionheight Nowadays two calls are need to get a transaction height, `getrawtransaction` with `verbose` and then use the `blockhash`. Other option is to use `confirmations`, but it can be misleading. * Minnor fix * Shargon's tip * modified * Allow to use the wallet inside a RPC plugin (neo-project#536) * Improve Large MemoryPool Performance - Sort + intelligent TX reverification (neo-project#500) Improve Large MemoryPool Performance - Sort + intelligent TX reverification (neo-project#500) * Keep both verified and unverified (previously verified) transactions in sorted trees so ejecting transactions above the pool size is a low latency operation. * Re-verify unverified transactions when Blockchain actor is idle. * Don't re-verify transactions needlessly when not at the tip of the chain. * Support passing a flag to `getrawmempool` to retrieve both verified and unverified TX hashes. * Support MaxTransactionsPerBlock and MaxFreeTransactionsPerBlock from Policy plugins. * Rebroadcast re-verified transactions if it has been a while since last broadcast (high priority transactions are rebroadcast more frequently than low priority transactions. * Policy filter GetRelayResult message (neo-project#543) * Policy filter GetRelayResult message * adding fixed numbering for return codes * Removed enum fixed values * Add some initial MemoryPool unit tests. Fix bug when Persisting the GenesisBlock (neo-project#549) * More MemoryPool Unit Tests. Improve Re-broadcast back-off to an increasing linear formula. (neo-project#554) * Ensuring Object Reference check of SortedSets for speed-up (neo-project#557) * Minor comments update on Mempool class (neo-project#556) * Update MemoryPool Unit Test to add random fees to Mock Transactions (neo-project#558) * Add Unit Test for MemoryPool sort order. Fixed sort order to return descending. (neo-project#559) * Add unit test to verify memory pool sort order and reverification order. Fixed sort order bug. * VerifyCanTransactionFitInPool works as intended. Also inadvertantly verified GetLowestFeeTransaction() works. * Benchmark structure for UInt classes (neo-project#553) * basic benchmark structure for UInt classes * commented code2 from lights for now * updated tests. all seem correct now * Switch to using a benchmark method taking a method delegate to benchmark. * Make pass. * 1 million iterations. * Switch to ulong for the 4th option, and it is still the same speed. * fix test data for 50% equal data * make test pass * neo.UnitTests/UT_UIntBenchmarks.cs * neo.UnitTests/UT_UIntBenchmarks.cs * Base 20 - UInt160 tests * neo.UnitTests/UT_UIntBenchmarks.cs * inlined 160 * complete tests with UInt256 and UInt160 * neo.UnitTests/UT_UIntBenchmarks.cs * Lights division calculation * Treat lower hashes as higher priority. Fix MemoryPool UT for Hash order. (neo-project#563) * Treat lower hashes as higher priority. * Fix MemoryPool UT for Hash order. * Renaming Trasanction in PoolItem for clarity. * Make PoolItem independent and add PoolItem tests (neo-project#562) * make poolitem independent * Merging * Multiply by -1 * Fix other * Fix Tx * Removing -1 extra multiplication * Fix * make PoolItem internal and added test class * Update PoolItem.cs * added comments for PoolItem variables * getting time from TimeProvider to allow testing * basic test * reset time provider * Add Hash comparison * Adding time provider again and equals * Fix arithmetic * Comment on PoolItem * Update PoolItem.cs * protecting tests against TimeProvider changes on fails * reusing setup part * fixed serialization properties * Improve generation of creating mock DateTime values. Implement hash comparison tests. * Adjust comment. * Treat Claim transactions as the highest low priority transactions. (neo-project#565) * Allow persistence plugins to commit as a final step. (neo-project#568) * Allow persistence plugins to commit as a final step. * Plugins commit before core commits, once all plugins have handled initial work OnPersist. * Allow PersistencePlugin to determine whether to crash if commit fails. * Add ShouldThrowExceptionFromCommit method to IPersistencePlugin. * Throw all commit exceptions that should be thrown in an AggregateException. * Add a Plugin type for observing transactions added or removed from the MemoryPool. (neo-project#580) * Correctly handle conversions between JSON objects (neo-project#586) * Fix neo-project/neo-node#297 (neo-project#587) * Replace new JArray with .ToArray (AccountState) (neo-project#581) * Ensure `LocalNode` to be stoped before shutting down the `NeoSystem`
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Handles escape characters in JSON
Pass ApplicationExecution to IPersistencePlugin ( Pass ApplicationExecution to IPersistencePlugin neo-project/neo#531)
Update dependencies: (Update dependencies neo-project/neo#532)
change version to v2.9.4
Updating Unknown to Policy Fail (Updating Unknown to Policy Fail neo-project/neo#533)
Fix a dead lock in
WalletIndexer
Downgrade Sqlite to 2.1.4 (Downgrade Sqlite to 2.1.4 neo-project/neo#535)
RPC call gettransactionheight (RPC call gettransactionheight neo-project/neo#541)
getrawtransactionheight
Nowadays two calls are need to get a transaction height,
getrawtransaction
withverbose
and then use theblockhash
.Other option is to use
confirmations
, but it can be misleading.Minnor fix
Shargon's tip
modified
Allow to use the wallet inside a RPC plugin (Allow to use the wallet inside a RPC plugin neo-project/neo#536)
Improve Large MemoryPool Performance - Sort + intelligent TX reverification (Improve Large MemoryPool Performance - Sort + intelligent TX reverification neo-project/neo#500)
Improve Large MemoryPool Performance - Sort + intelligent TX reverification (neo-project#500)
Keep both verified and unverified (previously verified) transactions in sorted trees so ejecting transactions above the pool size is a low latency operation.
Re-verify unverified transactions when Blockchain actor is idle.
Don't re-verify transactions needlessly when not at the tip of the chain.
Support passing a flag to
getrawmempool
to retrieve both verified and unverified TX hashes.Support MaxTransactionsPerBlock and MaxFreeTransactionsPerBlock from Policy plugins.
Rebroadcast re-verified transactions if it has been a while since last broadcast (high priority transactions are rebroadcast more frequently than low priority transactions.
Policy filter GetRelayResult message (Policy filter GetRelayResult message neo-project/neo#543)
Policy filter GetRelayResult message
adding fixed numbering for return codes
Removed enum fixed values
Add some initial MemoryPool unit tests. Fix bug when Persisting the GenesisBlock (Add some initial MemoryPool unit tests. Fix bug when Persisting the GenesisBlock neo-project/neo#549)
More MemoryPool Unit Tests. Improve Re-broadcast back-off to an increasing linear formula. (More MemoryPool Unit Tests. Improve Re-broadcast back-off to an increasing linear formula. neo-project/neo#554)
Ensuring Object Reference check of SortedSets for speed-up (Ensuring Object Reference check of SortedSets for speed-up neo-project/neo#557)
Minor comments update on Mempool class (Minor comments update on Mempool class neo-project/neo#556)
Update MemoryPool Unit Test to add random fees to Mock Transactions (Update MemoryPool Unit Test to add random fees to Mock Transactions neo-project/neo#558)
Add Unit Test for MemoryPool sort order. Fixed sort order to return descending. (Add Unit Test for MemoryPool sort order. Fixed sort order to return descending. neo-project/neo#559)
Add unit test to verify memory pool sort order and reverification order. Fixed sort order bug.
VerifyCanTransactionFitInPool works as intended. Also inadvertantly verified GetLowestFeeTransaction() works.
Benchmark structure for UInt classes (Benchmark structure for UInt classes neo-project/neo#553)
basic benchmark structure for UInt classes
commented code2 from lights for now
updated tests. all seem correct now
Switch to using a benchmark method taking a method delegate to benchmark.
Make pass.
1 million iterations.
Switch to ulong for the 4th option, and it is still the same speed.
fix test data for 50% equal data
make test pass
neo.UnitTests/UT_UIntBenchmarks.cs
neo.UnitTests/UT_UIntBenchmarks.cs
Base 20 - UInt160 tests
neo.UnitTests/UT_UIntBenchmarks.cs
inlined 160
complete tests with UInt256 and UInt160
neo.UnitTests/UT_UIntBenchmarks.cs
Lights division calculation
Treat lower hashes as higher priority. Fix MemoryPool UT for Hash order. (Treat lower hashes as higher priority. Fix MemoryPool UT for Hash order. neo-project/neo#563)
Treat lower hashes as higher priority.
Fix MemoryPool UT for Hash order.
Renaming Trasanction in PoolItem for clarity.
Make PoolItem independent and add PoolItem tests (Make PoolItem independent and add PoolItem tests neo-project/neo#562)
make poolitem independent
Merging
Multiply by -1
Fix other
Fix Tx
Removing -1 extra multiplication
Fix
make PoolItem internal and added test class
Update PoolItem.cs
added comments for PoolItem variables
getting time from TimeProvider to allow testing
basic test
reset time provider
Add Hash comparison
Adding time provider again and equals
Fix arithmetic
Comment on PoolItem
Update PoolItem.cs
protecting tests against TimeProvider changes on fails
reusing setup part
fixed serialization properties
Improve generation of creating mock DateTime values. Implement hash comparison tests.
Adjust comment.
Treat Claim transactions as the highest low priority transactions. (Treat Claim transactions as the highest low priority transactions + Unit test neo-project/neo#565)
Allow persistence plugins to commit as a final step. (Allow persistence plugins to commit as a final step. neo-project/neo#568)
Allow persistence plugins to commit as a final step.
Plugins commit before core commits, once all plugins have handled initial work OnPersist.
Allow PersistencePlugin to determine whether to crash if commit fails.
Add ShouldThrowExceptionFromCommit method to IPersistencePlugin.
Throw all commit exceptions that should be thrown in an AggregateException.
Add a Plugin type for observing transactions added or removed from the MemoryPool. (Add a Plugin type for observing transactions added or removed from the MemoryPool. neo-project/neo#580)
Correctly handle conversions between JSON objects (Correctly handle conversions between JSON objects neo-project/neo#586)
Fix Non-specific error for JSON-RPC specification neo-project/neo-node#297 (Fix neo-project/neo-cli#297 neo-project/neo#587)
Replace new JArray with .ToArray (AccountState) (Replace new JArray with .ToArray (AccountState) neo-project/neo#581)
Ensure
LocalNode
to be stoped before shutting down theNeoSystem