New person here. Just trying to get a local wallet up and running and I’m having some troubles. I’ll pulling from master at https://github.com/PoC-Consortium/burstcoin and using MariaDB. Everything appears to start up as expected - I’m able to log in and see peers connect and check how much of the blockchain has been downloaded by calling GET /getBlockchainStatus.
The issue appears to be that the blockImporterThread hits an exception and that seems to prevent my wallet from continuing to sync the blockchain. This has happened three times from fresh installs, all 3 times occurring between blocks 52000 and 60000.
[SEVERE] 2018-01-04 11:40:56 brs.BlockchainProcessorImpl - Uncaught exception in blockImporterThread java.nio.BufferUnderflowException at java.nio.HeapByteBuffer.get(HeapByteBuffer.java:151) at brs.at.AT_Machine_State.setState(AT_Machine_State.java:540) at brs.at.AT_Machine_State.<init>(AT_Machine_State.java:206) at brs.AT.<init>(AT.java:352) at brs.db.sql.SqlATStore.createAT(SqlATStore.java:187) at brs.db.sql.SqlATStore.getAT(SqlATStore.java:178) at brs.AT.getAT(AT.java:215) at brs.AT.getAT(AT.java:211) at brs.at.AT_Controller.validateATs(AT_Controller.java:328) at brs.BlockchainProcessorImpl.accept(BlockchainProcessorImpl.java:977) at brs.BlockchainProcessorImpl.pushBlock(BlockchainProcessorImpl.java:929) at brs.BlockchainProcessorImpl.access$700(BlockchainProcessorImpl.java:46) at brs.BlockchainProcessorImpl$3.run(BlockchainProcessorImpl.java:214) at brs.util.ThreadPool.lambda$start$0(ThreadPool.java:89) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748)
I’ve also tried some of the workarounds I’ve seen in other threads, such as starting with a db download and placing it in the dist/tmp/burst_db/ directory. When I do this it seems to be ignored and the syncing starts again from block 0 after finding peers. Is this a bug in the wallet or am I doing something wrong?
I’ve also tried to roll back the current block in hopes that it will start building again if a corrupt block is removed. Based on another thread I tried using the popOff method, however that just returned errors for me. I also tried stopping the wallet, manually dropping the rows in the block table in mariaDB then starting the wallet again, but again nothing.