mirror of
https://github.com/Qortal/qortal.git
synced 2025-07-25 11:11:25 +00:00
Unit test fixes + initial CIYAM AT integration
NB: we're still using HSQLDB svn r5836 Updated README.md Added log4j2.properties file for logging! Imported CIYAM-AT jar into project-local Maven repo CIYAM-AT related: ATData ATStateData ATTransactionData DeployATTransactionData AT DeployATTransaction ATRepository HSQLDBATRepository HSQLDBDeployATTransactionRepository ATTests DeployATTransactionTransformer Fixed Block so correct block hash and timestamps are generated, especially when previous/next block versions differ. Added extra call in BlockTransformer to aid this. Fixed GenesisTransaction.isValid's incorrect amount test. Fixed comments in TransferAssetTransaction and incorrect use of BlockChain.getVotingReleaseTimestamp() instead of BlockChain.getAssetsReleaseTimestamp(). Added new TYPEs to HSQLDBDatabaseUpdates, and set LOB granularity to 1KB for AT use. Added AT_address column to DeployATTransactions in HSQLDB. Added ATs, ATStates and ATTransactions tables. (You will need to discard existing database and rebuild). Fixed incorrect byte array output in IssueAssetTransactionTransformer, where Asset "references" were not processed correctly. Added support for BigDecimal serialization to a byte-array size other than the standard 8.
This commit is contained in:
26
README.md
26
README.md
@@ -4,11 +4,13 @@ To use:
|
||||
|
||||
- Use maven to fetch dependencies.
|
||||
- Build project.
|
||||
- Build v1feeder.jar as a fatjar using src/v1feeder.java as the main class
|
||||
- Fire up an old-gen Qora node.
|
||||
- Run ```src/migrate.java``` as a Java application to migrate old Qora blocks to DB.
|
||||
- Use ```v1feeder.jar``` to migrate old Qora blocks to DB:
|
||||
|
||||
You should now be able to run ```src/test/load.java``` and ```src/test/save.java```
|
||||
as JUnit tests demonstrating loading/saving Transactions from/to database.
|
||||
```java -jar v1feeder.jar qora-v1-node-ip```
|
||||
|
||||
You should now be able to run all the JUnit tests.
|
||||
|
||||
You can also examine the migrated database using
|
||||
[HSQLDB's "sqltool"](http://www.hsqldb.org/doc/2.0/util-guide/sqltool-chapt.html).
|
||||
@@ -21,17 +23,23 @@ Typical command line for sqltool would be:
|
||||
rlwrap java -cp ${HSQLDB_JAR}:${SQLTOOL_JAR} org.hsqldb.cmdline.SqlTool --rcFile=${SQLTOOL_RC} qora
|
||||
```
|
||||
|
||||
```${HSQLDB_JAR}``` contains pathname to ```hsqldb-2.4.0.jar```,
|
||||
typically ```${HOME}/.m2/repository/org/hsqldb/hsqldb/2.4.0/hsqldb-2.4.0.jar```
|
||||
```${HSQLDB_JAR}``` contains pathname to where Maven downloaded hsqldb,
|
||||
typically ```${HOME}/.m2/repository/org/hsqldb/hsqldb/2.4.0/hsqldb-2.4.0.jar```,
|
||||
but for now ```lib/org/hsqldb/hsqldb/r5836/hsqldb-r5836.jar```
|
||||
|
||||
```${SQLTOOL_JAR}``` contains pathname to where you
|
||||
[downloaded sqltool-2.2.6.jar](http://search.maven.org/remotecontent?filepath=org/hsqldb/sqltool/2.2.6/sqltool-2.2.6.jar)
|
||||
```${SQLTOOL_JAR}``` contains pathname to where Maven downloaded sqltool,
|
||||
typically ```${HOME}/.m2/repository/org/hsqldb/sqltool/2.4.1/sqltool-2.4.1.jar```
|
||||
|
||||
```${SQLTOOL_RC}``` contains pathname to a text file describing Qora2 database,
|
||||
e.g. ```${HOME}/.sqltool.rc```, with contents like:
|
||||
|
||||
```
|
||||
urlid qora
|
||||
url jdbc:hsqldb:file:db/qora
|
||||
username SA
|
||||
password
|
||||
|
||||
urlid qora-test
|
||||
url jdbc:hsqldb:file:db/test
|
||||
username SA
|
||||
password
|
||||
@@ -41,8 +49,10 @@ You could change the line ```url jdbc:hsqldb:file:db/test``` to use a full pathn
|
||||
|
||||
Another idea is to assign a shell alias in your ```.bashrc``` like:
|
||||
```
|
||||
export HSQLDB_JAR=${HOME}/.m2/repository/org/hsqldb/hsqldb/2.4.0/hsqldb-2.4.0.jar
|
||||
export SQLTOOL_JAR=${HOME}/.m2/repository/org/hsqldb/sqltool/2.4.1/sqltool-2.4.1.jar
|
||||
alias sqltool='rlwrap java -cp ${HSQLDB_JAR}:${SQLTOOL_JAR} org.hsqldb.cmdline.SqlTool --rcFile=${SQLTOOL_RC}'
|
||||
```
|
||||
So you can simply type: ```sqltool qora```
|
||||
So you can simply type: ```sqltool qora-test```
|
||||
|
||||
Don't forget to use ```SHUTDOWN;``` before exiting sqltool so that database files are closed cleanly.
|
Reference in New Issue
Block a user