NEM Beta 0.6.75, 0.6.77 + Lightwallet STANDALONE 1.8

NEM Beta 0.6.75 and Lightwallet Standalone 1.8

Noteworthy, Effective, Modern

Some nice node-rewards related changes coming in.

  1. Fixed SQL query that lead to slow block storage.
  2. Fixed several memory issues. The footprint should now be a lot smaller and shouldn’t grow over time.
  3. Trying to auto harvest with an unknown account upon NIS startup does not exit NIS, only an error message is logged.
  4. By default a fresh installed NIS will automatically boot upon startup using a random key and the corresponding address as name. If boot key and boot name are explicitely supplied in the config, NIS will use those.
  5. The detection of the state ‘synchronized’ is now more stable. If a node falls behind the tray message that the node switched to state ‘booted’ will appear after 2 minutes.
  6. The number of harvesters allowed on a node has now a default value of 4. This should fix the infamous ‘harvesting limit reached’ error message when delegated harvesting is activated.
  7. By default, less messages are logged.
  8. Websocket port changed to 7778
  9. Small cosmetic changes in NCC.

Lightwallet

Lightwallet changes are mostly some minor fixes for few irritating issues.

NEM Beta 0.6.77

0.6.76 - was an incorrect build, as quickly noticed and reported by sheld0r.

It fixes the issue with:
org.nem.core.model.ImportanceTransferTransaction cannot be cast to org.nem.core.model.MultisigAggregateModificationTransaction.

That could happen when announcing the block or transaction to the websocket.
Transaction itself should not be affected and should end up in the chain.

(Sorry it took so long, we wanted to include some other changes too, but finally we gave up on that)


If you’re using the installer make sure to stop running ncc and nis before running the installer!

NEM requires Java 8
Remember installer requires 64-bit java
You can download java from official page: http://java.com/en/download/manual.jsp

You can start NCC and NIS with an installer from the following link: http://bob.nem.ninja/installer/
Standalone version: http://bob.nem.ninja/

5 Likes

Thanks for the update, very cool stuff in there!

Happy to test the improvements. Thanks

Thank you!

great work!

(all eyes turn towards Catapult) haha

Is there an instruction how to update to a newer version on Ubuntu for a supernode?

Or should I just follow all steps from the supernode instructions?

I don’t think there are instructions. You can just extract the new version to a new folder and copy the old config into the new folder. Then open the config and change the port for the websocket to

nem.websocketPort = 7778

That should be all.

1 Like

thanks for the update.

The easiest solution is to use config-user.properties.
I’ve already described such setup somewhere…
Basically directory structure looks as follows:

.
├── config-user.properties
├── package
│   ├── 3rd-party-licenses
│   ├── console
│   ├── harvest.sh
│   ├── libs
│   ├── license.txt
│   ├── logalpha.properties
│   ├── mon
│   ├── ncc
│   ├── nis
│   ├── nix.logalpha.properties
│   ├── nix.runConsole.sh
│   ├── nix.runMon.sh
│   ├── nix.runNcc.sh
│   ├── nix.runNis.sh
│   ├── README.txt
│   ├── runConsole.bat
│   ├── runMon.bat
│   ├── runNcc.bat
│   └── runNis.bat
└── startnem.sh

startnem.sh has following command inside:
java -Xms1G -Xmx1G -cp ".:package/nis:package/nis/*:package/libs/*" org.nem.deploy.CommonStarter

This places CURRENT directory, as a first on the class path, that means config-user.properties will be loaded, besides that config-user.properties always overwrites any settings. Now inside the file you put only CRUCIAL settings (the rest will be taken from the package), so here’s example from me:

nem.protocol = http
nem.host = hostname or IP
nem.httpPort = 7890

nem.network = mainnet
nis.bootKey = 111111111111111111111111111111111111111111111111111111111111111111
nis.bootName = [c=#dfa82f]nem[/c][c=#8e8e8e]tas[/c][c=#41ce7b]tic[/c]

nis.shouldAutoHarvestOnBoot = true
nis.unlockedLimit = 3
nis.delayBlockLoading = false

When upgrading you only need to drop package and replace it with new content (and restart nis) and you’re done

1 Like

Docker images updated:

There is a docker image with the lightwallet but I haven’t updated it. Not sure there is a lot of interest in it. Let me know if you need it.

After upgrading node, first API tests are running without delays.
It looks like performance issues I reported before, have indeed been solved. Congrats on the good work!

Results of node rewards tests should confirm nodes are performing better once they are upgraded.
I will repeat my own tests after node has been running for a few days…

I just upgraded the node and just copy/paste the config-user.properties to nis folder, the blockchain is fully downloaded and accounts are remote active and able to harvest, it is showing in the log:

MOTAHQHVD4IU2MKCKVULVXB not yet allowed to generate a block. (org.nem.nis.harvesting.BlockGenerator$GenerationState cu)
2016-05-18 14:56:50.449 INFO Account NDYEQ7CDTJ5BKOMAYSCQQJLBSAMX7EIHINGFC6JZ not yet allowed to generate a block. (org.nem.nis.harvesting.BlockGenerator$GenerationState cu)
2016-05-18 14:56:50.455 INFO Account NBANIRTIQWNZ4Q3ZNTT7ROUSIKMJPOW72RORRDPE not yet allowed to generate a block. (org.nem.nis.harvesting.BlockGenerator$GenerationState cu)
2016-05-18 14:56:50.458 INFO Account NBKMM6AYEKWXWQQWPHMJK7BENN5FTZCZXHACJIXA not yet allowed to generate a block. (org.nem.nis.harvesting.BlockGenerator$GenerationState cu)
2016-05-18 14:56:50.460 INFO Account NDS6Q37HDEQ665JK5MOTAHQHVD4IU2MKCKVULVXB not yet allowed to generate a block. (org.nem.nis.harvesting.BlockGenerator$GenerationState cu)
2016-05-18 14:56:51.097 INFO entering /chain/score [62.75.171.41] (org.nem.nis.controller.interceptors.AuditInterceptor preHandle)
2016-05-18 14:56:51.105 INFO exiting /chain/score [62.75.171.41] (org.nem.nis.controller.interceptors.AuditInterceptor afterCompletion)

So it means that nis is working and harvesting normally?

yes, i changed the harvesting message so it would only be one line for each account harvesting.
Everything is ok.

Even with the node up and running several days now with the new NIS version, my tests keep performing very well.

Good to hear.
The only supernode test that somehow has random failures is the responsiveness test. No idea if that is related to the internet connection master <–> supernode or something else.

I tried to activate delegated harvesting for a new account with more than 10.000 vested and got the Oops error message 306 “NIS : UNEXPECTED ERROR”
When clicked away, the screenshot appears.

The tranasction is added pending in the NCC UI but never gets confirmed by the network. After closing and reopening NCC, the tranasction is gone.

When checking the NIS log file, I see a lot of INFO messages “Account … not yet allowed to generate a block. (org.nem.nis.harvesting.BlockGenerator$GenerationState cu)”. Probably those are not related to the problem.

Activating delegated harvesting is no longer possible in this release? What is wrong? Config file?

org.nem.core.model.ImportanceTransferTransaction cannot be cast to org.nem.core.model.MultisigAggregateModificationTransaction

Found in the NIS log:

2016-05-28 12:20:56.269 INFO entering /transaction/announce [127.0.0.1] (org.nem.nis.controller.interceptors.AuditInterceptor preHandle)
2016-05-28 12:20:56.352 SEVERE Http Status Code 500: org.nem.core.model.ImportanceTransferTransaction cannot be cast to org.nem.core.model.MultisigAggregateModificationTransaction (org.nem.core.connect.ErrorResponse )
2016-05-28 12:20:56.355 INFO exiting /transaction/announce [127.0.0.1] (org.nem.nis.controller.interceptors.AuditInterceptor afterCompletion)

The next thing i tried, was to connect my 0.6.75 NCC to a node that is still running 0.6.74 NIS.

Creating the transaction did succeed without error message and the transaction got accepted by the network.

This narrows the problem down to the 0.6.75 NIS.

Actually 0.6.75 NCC :slight_smile:
I think @gimre will take a look at it after weekend.

can some body tell me how to install the lightwallet?
I think the client list on the nem.io website is for geeks to use, not for average people. The light wallet and the standalone is both not usable for average people.

So I have to install a full node called windows installer. And I find the blocks are too many to down, I just want to use the wallet, not be a server. I stop the NIS and could not find a online node.

This is the experience I have when use nem, and I am in crypto for 3 years now. I hope the dev can provide simpler installer for lightwallet. Just click and install, or just un-zip it and use it.