catbref 86a35c3b71 Work on groups
Some dev/testing API calls are now turned off by default in production mode,
 see "restrictApi" settings entry, returning NON_PRODUCTION API error.

Corrections to how account's defaultGroupId works, removing "effective groupID"
 which overly complicated matters.
In relation to above, DEFAULT_GROUP (0) no longer exists and NO_GROUP(-1) now has
 the value 0 instead.
So transactions can no longer have txGroupId of DEFAULT_GROUP, which in turn
 required all the erroneous "effective groupID" code.

API call /addresses/{address} now supplies blockchain-wide defaultGroupId if
 account doesn't exist or if account's default not set and NO-GROUP not allowed.

API /transactions/pending now offloaded to repository instead of Java-based
 processing and filtering.

Transaction approval checks added to Block.isValid

Groups now have min/max approval block delays.
 Checks added to incoming unconfirmed, block generator, block.isValid, etc.

'needing approval' and 'meets approval threshold' now split into separate calls.

NB: settings.json no longer part of git repo
2019-02-20 12:25:30 +00:00
2019-02-20 12:25:30 +00:00
2019-01-04 10:19:33 +00:00
2019-01-07 13:12:42 +00:00
2019-01-04 10:19:33 +00:00
2019-02-01 14:03:06 +00:00

Qora2

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.
  • Use v1feeder.jar to migrate old Qora blocks to DB:

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".

It's a good idea to install "rlwrap" (ReadLine wrapper) too as sqltool doesn't support command history/editing!

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 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 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

You could change the line url jdbc:hsqldb:file:db/test to use a full pathname for easier use.

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-test

Don't forget to use SHUTDOWN; before exiting sqltool so that database files are closed cleanly.

Description
The primary qortal core repository, cloned to https://gitea.qortal.link for posterity and future more in-depth utilization.
https://qortal.dev
Readme 515 MiB
Languages
Java 98%
JavaScript 0.6%
Shell 0.5%
HTML 0.5%
Perl 0.3%