Skip to content
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

Call to '/crosschain/btc/send' returns 500 error #12

Open
muckee opened this issue Aug 14, 2020 · 4 comments
Open

Call to '/crosschain/btc/send' returns 500 error #12

muckee opened this issue Aug 14, 2020 · 4 comments

Comments

@muckee
Copy link

muckee commented Aug 14, 2020

Windows 10 64-bit
Qortal Core v1.3.3
Qortal UI v1.2.1

When attempting to send BTC to an external address from the UI, the server responds with a 500 error upon clicking the 'send' button.

@muckee
Copy link
Author

muckee commented Aug 14, 2020

Issuing a cURL request using the same data yields the following result:

{"error":1202,"message":"!!en:ApiError.BTC_BALANCE_ISSUE!!"}

@muckee
Copy link
Author

muckee commented Aug 14, 2020

Got this error. Not 100% sure if it was due to attempting to transfer funds, or something in the background, but looks relevant:


2020-08-14 10:32:43 ERROR Synchronizer:159 - Repository issue during synchronization with peer
org.qortal.repository.DataException: Unable to reduce account balance in repository
        at org.qortal.repository.hsqldb.HSQLDBAccountRepository.modifyAssetBalance(HSQLDBAccountRepository.java:452) ~[qortal.jar:1.3.3]
        at org.qortal.account.Account.modifyAssetBalance(Account.java:94) ~[qortal.jar:1.3.3]
        at org.qortal.block.Block.distributeBlockReward(Block.java:1692) ~[qortal.jar:1.3.3]
        at org.qortal.block.Block.orphanBlockRewards(Block.java:1580) ~[qortal.jar:1.3.3]
        at org.qortal.block.Block.orphan(Block.java:1494) ~[qortal.jar:1.3.3]
        at org.qortal.controller.Synchronizer.syncToPeerChain(Synchronizer.java:403) ~[qortal.jar:1.3.3]
        at org.qortal.controller.Synchronizer.synchronize(Synchronizer.java:137) [qortal.jar:1.3.3]
        at org.qortal.controller.Controller.actuallySynchronize(Controller.java:555) [qortal.jar:1.3.3]
        at org.qortal.controller.Controller.potentiallySynchronize(Controller.java:541) [qortal.jar:1.3.3]
        at org.qortal.controller.Controller.run(Controller.java:441) [qortal.jar:1.3.3]
Caused by: java.sql.SQLIntegrityConstraintViolationException: integrity constraint violation: unique constraint or index violation; SYS_PK_10125 table: ACCOUNTBALANCES
        at org.hsqldb.jdbc.JDBCUtil.sqlException(Unknown Source) ~[qortal.jar:1.3.3]
        at org.hsqldb.jdbc.JDBCUtil.sqlException(Unknown Source) ~[qortal.jar:1.3.3]
        at org.hsqldb.jdbc.JDBCPreparedStatement.fetchResult(Unknown Source) ~[qortal.jar:1.3.3]
        at org.hsqldb.jdbc.JDBCPreparedStatement.execute(Unknown Source) ~[qortal.jar:1.3.3]
        at org.qortal.repository.hsqldb.HSQLDBRepository.checkedExecuteUpdateCount(HSQLDBRepository.java:513) ~[qortal.jar:1.3.3]
        at org.qortal.repository.hsqldb.HSQLDBAccountRepository.modifyAssetBalance(HSQLDBAccountRepository.java:450) ~[qortal.jar:1.3.3]
        ... 9 more
Caused by: org.hsqldb.HsqlException: integrity constraint violation: unique constraint or index violation; SYS_PK_10125 table: ACCOUNTBALANCES
        at org.hsqldb.error.Error.error(Unknown Source) ~[qortal.jar:1.3.3]
        at org.hsqldb.Constraint.getException(Unknown Source) ~[qortal.jar:1.3.3]
        at org.hsqldb.index.IndexAVL.insert(Unknown Source) ~[qortal.jar:1.3.3]
        at org.hsqldb.persist.RowStoreAVL.indexRow(Unknown Source) ~[qortal.jar:1.3.3]
        at org.hsqldb.persist.RowStoreAVLDisk.indexRow(Unknown Source) ~[qortal.jar:1.3.3]
        at org.hsqldb.TransactionManagerMVCC.addInsertAction(Unknown Source) ~[qortal.jar:1.3.3]
        at org.hsqldb.Session.addInsertAction(Unknown Source) ~[qortal.jar:1.3.3]
        at org.hsqldb.Table.insertSingleRow(Unknown Source) ~[qortal.jar:1.3.3]
        at org.hsqldb.StatementDML.update(Unknown Source) ~[qortal.jar:1.3.3]
        at org.hsqldb.StatementDML.executeUpdateStatement(Unknown Source) ~[qortal.jar:1.3.3]
        at org.hsqldb.StatementDML.getResult(Unknown Source) ~[qortal.jar:1.3.3]
        at org.hsqldb.StatementDMQL.execute(Unknown Source) ~[qortal.jar:1.3.3]
        at org.hsqldb.Session.executeCompiledStatement(Unknown Source) ~[qortal.jar:1.3.3]
        at org.hsqldb.Session.execute(Unknown Source) ~[qortal.jar:1.3.3]
        at org.hsqldb.jdbc.JDBCPreparedStatement.fetchResult(Unknown Source) ~[qortal.jar:1.3.3]
        at org.hsqldb.jdbc.JDBCPreparedStatement.execute(Unknown Source) ~[qortal.jar:1.3.3]
        at org.qortal.repository.hsqldb.HSQLDBRepository.checkedExecuteUpdateCount(HSQLDBRepository.java:513) ~[qortal.jar:1.3.3]
        at org.qortal.repository.hsqldb.HSQLDBAccountRepository.modifyAssetBalance(HSQLDBAccountRepository.java:450) ~[qortal.jar:1.3.3]
        ... 9 more

@catbref
Copy link
Collaborator

catbref commented Aug 14, 2020

BTC_BALANCE_ISSUE is returned when core thinks you don't have enough BTC to pay for that transaction.

The log paste in your lower comment is something else it seems.

@muckee
Copy link
Author

muckee commented Aug 15, 2020

Oh... I do have some BTC that hasn't been returned to my account. I assumed it was just a transaction fee for ... something ... and I lost it, but could that be an attempt to return the remainder of my balance and reduce the balance of the address that received it to zero?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants