hiero-ledger / hiero-ledger/hiero-consensus-node

Yahcli account create returns `INVALID_NODE_ACCOUNT`

Open
#22,254 1 comment 0 reactions 0 assignees View on GitHub
Yahcli
Dominant language
Java
Stars
406
Forks
226
Avg merge
3d 4h
Merged PRs (30d)
210

Description

DevOps attempted to run an account create command in mainnet with Yahcli, but received an `INVALID_NODE_ACCOUNT` error with version `0.7.9`. They tried the same command with version `0.3.0`, which was successful. We need to figure out why the first one didn't work.

Yahcli version that didn't work: `0.7.9`
Yahcli version that did work: `0.3.0`

Command run:
```
docker run -it -v $(pwd):/launch gcr.io/hedera-registry/yahcli:0.7.9 --fixed-fee 100000000 --node-account 4 --network mainnet -p 950 accounts create -a 100
```

Stack trace (from version 0.7.9):
```
Log level is WARN
Targeting mainnet, paying with accountNum: 950

2025-11-20 02:23:01.041 INFO 45 MapPropertySource - Initializing a MapPropertySource from {fees.fixedOffer=100000000, fees.useFixedOffer=true, nodes=[redacted], default.payer.pemKeyLoc=mainnet/keys/account950.pem, default.node=4, default.payer=0.0.950}
2025-11-20 02:23:01.698 INFO 75 ConfigProviderBase - Properties file data/config/genesis.properties does not exist and won't be used as configuration source
2025-11-20 02:23:01.700 INFO 75 ConfigProviderBase - Properties file data/config/application.properties does not exist and won't be used as configuration source
2025-11-20 02:23:02.099 INFO 859 HapiSpec - 'DoCreate' - test suite started !
2025-11-20 02:23:02.190 INFO 898 HapiSpec - 'DoCreate' finished initial execution of NewSpecKey{name=newKey}
Creation attempt #1...2025-11-20 02:23:02.937 ERROR 50 CustomSpecAssert - Operation 'HapiCryptoCreate{sigs=2, account=newAccount, balance=10000000000}' :: Wrong precheck status! Expected one of [OK, BUSY], actual INVALID_NODE_ACCOUNT
2025-11-20 02:23:02.938 WARN 222 HapiSpecOperation - 'DoCreate' - CustomSpecAssert failed - com.hedera.services.bdd.spec.exceptions.HapiTxnPrecheckStateException: Wrong precheck status! Expected one of [OK, BUSY], actual INVALID_NODE_ACCOUNT!
java.lang.IllegalStateException: com.hedera.services.bdd.spec.exceptions.HapiTxnPrecheckStateException: Wrong precheck status! Expected one of [OK, BUSY], actual INVALID_NODE_ACCOUNT
at com.hedera.services.bdd.spec.utilops.CustomSpecAssert.handleExec(CustomSpecAssert.java:51) ~[yahcli.jar:?]
at com.hedera.services.bdd.spec.utilops.CustomSpecAssert.executeHederaOps(CustomSpecAssert.java:31) ~[yahcli.jar:?]
at com.hedera.services.bdd.spec.utilops.CustomSpecAssert.allRunFor(CustomSpecAssert.java:25) ~[yahcli.jar:?]
at com.hedera.services.bdd.spec.utilops.CustomSpecAssert.allRunFor(CustomSpecAssert.java:56) ~[yahcli.jar:?]
at com.hedera.services.yahcli.suites.CreateSuite.lambda$doCreate$1(CreateSuite.java:113) ~[yahcli.jar:?]
at com.hedera.services.bdd.spec.utilops.CustomSpecAssert.submitOp(CustomSpecAssert.java:72) ~[yahcli.jar:?]
at com.hedera.services.bdd.spec.HapiSpecOperation.execFor(HapiSpecOperation.java:208) ~[yahcli.jar:?]
at com.hedera.services.bdd.spec.HapiSpec.exec(HapiSpec.java:889) ~[yahcli.jar:?]
at com.hedera.services.bdd.spec.HapiSpec.run(HapiSpec.java:685) ~[yahcli.jar:?]
at java.base/java.lang.Iterable.forEach(Iterable.java:75) ~[?:?]
at com.hedera.services.bdd.suites.HapiSuite.runSequentialSpecs(HapiSuite.java:273) ~[yahcli.jar:?]
at com.hedera.services.bdd.suites.HapiSuite.runSuite(HapiSuite.java:231) [yahcli.jar:?]
at com.hedera.services.bdd.suites.HapiSuite.runSuiteSync(HapiSuite.java:203) [yahcli.jar:?]
at com.hedera.services.yahcli.commands.accounts.CreateCommand.call(CreateCommand.java:104) [yahcli.jar:?]
at com.hedera.services.yahcli.commands.accounts.CreateCommand.call(CreateCommand.java:17) [yahcli.jar:?]
at picocli.CommandLine.executeUserObject(CommandLine.java:2031) [yahcli.jar:?]
at picocli.CommandLine.access$1500(CommandLine.java:148) [yahcli.jar:?]
at picocli.CommandLine$RunLast.executeUserObjectOfLastSubcommandWithSameParent(CommandLine.java:2469) [yahcli.jar:?]
at picocli.CommandLine$RunLast.handle(CommandLine.java:2461) [yahcli.jar:?]
at picocli.CommandLine$RunLast.handle(CommandLine.java:2423) [yahcli.jar:?]
at picocli.CommandLine$AbstractParseResultHandler.execute(CommandLine.java:2277) [yahcli.jar:?]
at picocli.CommandLine$RunLast.execute(CommandLine.java:2425) [yahcli.jar:?]
at picocli.CommandLine.execute(CommandLine.java:2174) [yahcli.jar:?]
at com.hedera.services.yahcli.Yahcli.main(Yahcli.java:104) [yahcli.jar:?]
Caused by: com.hedera.services.bdd.spec.exceptions.HapiTxnPrecheckStateException: Wrong precheck status! Expected one of [OK, BUSY], actual INVALID_NODE_ACCOUNT
at com.hedera.services.bdd.spec.transactions.HapiTxnOp.submitOp(HapiTxnOp.java:288) ~[yahcli.jar:?]
at com.hedera.services.bdd.spec.HapiSpecOperation.execFor(HapiSpecOperation.java:208) ~[yahcli.jar:?]
at com.hedera.services.bdd.spec.utilops.CustomSpecAssert.handleExec(CustomSpecAssert.java:48) ~[yahcli.jar:?]
... 23 more
2025-11-20 02:23:03.110 INFO 947 HapiSpec - 'DoCreate' - final status: FAILED!
.!. FAILED to create a new account with 10000000000 tinybars , signatureRequired false and memo ''
```

Success message (from 0.3.0):
```
Log level is WARN
Targeting mainnet, paying with 0.0.950
WARNING: sun.reflect.Reflection.getCallerClass is not supported. This will impact performance.
Creation attempt #1...SUCCESS
.i. SUCCESS - account 0.0.10117431 has been created with balance 10000000000 tinybars and memo ''
```

Contributor guide

Open the contributing guide

Research direction

Reproduce the supplied Docker command, then trace the account-create path through CreateCommand.java, HapiTxnOp.java, and the precheck handling shown in the stack trace. Compare the relevant behavior between Yahcli 0.7.9 and 0.3.0; done means identifying why node account 4 is rejected in the newer version and documenting or correcting the regression.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, java
Domain
backend, cli
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.