Skip to content

Tech:Transaction Implementation #6

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

Closed
4 tasks
andy-shi88 opened this issue Jul 2, 2019 · 0 comments
Closed
4 tasks

Tech:Transaction Implementation #6

andy-shi88 opened this issue Jul 2, 2019 · 0 comments
Assignees
Labels
FEATURE New feature or request
Milestone

Comments

@andy-shi88
Copy link
Contributor

andy-shi88 commented Jul 2, 2019

Description

Implement transaction functionalities, the transaction is the action toward the blockchain.

The agreed structure is placed on the google doc, please take a look at the team drive

Breakdown:

  • Transaction Structure
  • TransactionType Structure
  • Transaction Signature
  • Transaction Validation

process (#5 )

@andy-shi88 andy-shi88 added the FEATURE New feature or request label Jul 2, 2019
@andy-shi88 andy-shi88 added this to the Sprint 1 milestone Jul 2, 2019
andy-shi88 added a commit that referenced this issue Jul 11, 2019
capt4ce pushed a commit that referenced this issue Jul 11, 2019
* #6 add executeTransactionStatements method to handle multiple query statement
astaphobia pushed a commit that referenced this issue Jul 17, 2019
* #20 added timestamp to transaction table and simplified mempool table structure

* #14 - WIP: started implementing mempoolService

* #14 - WIP: still implementing mempoolservice and mempoolQuery

* fixed GetMempoolTransaction query

* #6 add executeTransactionStatements method to handle multiple query statement

* #6 add get transaction bytes and parse transaction bytes method

* #6 update transaction model

* #6 handle no-recipient get transaction bytes

* #6 update doc : add transaction bytes structure

* implementation of mempoolCoreService

* #14 tested GetMempoolTransactions,  AddMempoolTransaction, RemoveMempoolTransaction

* #14 completed testing mempool service

* start integrating mempool service into main process and blockchainprocessor

* added tx timeout (mempool tx expiration time)

* added getamount and getsize to transaction,TypeAction
added logic to pass in payload to blockchainprocessor when generating blocks

* small variable name refactoring, as suggested by code linter, to avoid confusion

* recompiled schema

* fixed comments

* removed unused interface signature

* added missing interface signature

* fixed logic error in tx GetSize for SendMoney tx (we are getting only body length, not full tx length)

* fixed some lint issues

* refactored part of mempoolService: moved removemempooltransactions to blockservice because part of PushBlock method
fixed unit tests
added to transactionUtil function to calculate transaction ID from transaction model

* refactored old unit tests (64 bytes signature instead of 256)
added tests for GetTransactionID

* merged develop with branch
fixed parse transaction bytes: added checks if bytes we are parsing are formally correct while reading them

* merged develop into branch

* resolved some of the comments from the PR
fixed relative tests

* added transactionQuery interface to blockservice and added insertTransaction to pushblock

* fixed NewBlock: was missing payloadlength
fixed bug in GenerateBlock: wrong variable scope
fixed unit tests

* removed comment relative to mempool table name
@andy-shi88 andy-shi88 removed their assignment Dec 10, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
FEATURE New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants