bloxbean / cardano-client-lib

Cardano client library in Java
https://cardano-client.dev
MIT License
118 stars 47 forks source link

[Koios] Koios UtxoService throwing error during simple transaction #360

Closed satran004 closed 7 months ago

satran004 commented 7 months ago

The following error is thrown when creating a simple payment transaction using QuickTx's integration tests.

There are total 2 utxos available at sender's address.

I am trying to run this test

https://github.com/bloxbean/cardano-client-lib/blob/3a468c82917e325c39f05fcbc56b59faf9df91e2/quicktx/src/it/java/com/bloxbean/cardano/client/quicktx/QuickTxBuilderIT.java#L99

java.lang.IllegalArgumentException: fromIndex(100) > toIndex(1)
    at java.base/java.util.AbstractList.subListRangeCheck(AbstractList.java:509)
    at java.base/java.util.ArrayList.subList(ArrayList.java:1137)
    at com.bloxbean.cardano.client.backend.koios.KoiosUtxoService.getSubListByPage(KoiosUtxoService.java:150)
    at com.bloxbean.cardano.client.backend.koios.KoiosUtxoService.getUtxos(KoiosUtxoService.java:68)
    at com.bloxbean.cardano.client.backend.api.DefaultUtxoSupplier.getPage(DefaultUtxoSupplier.java:23)
    at com.bloxbean.cardano.client.coinselection.impl.DefaultUtxoSelectionStrategyImpl.select(DefaultUtxoSelectionStrategyImpl.java:62)
    at com.bloxbean.cardano.client.coinselection.UtxoSelectionStrategy.select(UtxoSelectionStrategy.java:55)
    at com.bloxbean.cardano.client.coinselection.UtxoSelectionStrategy.select(UtxoSelectionStrategy.java:50)
    at com.bloxbean.cardano.client.coinselection.UtxoSelectionStrategy.selectUtxos(UtxoSelectionStrategy.java:28)
    at com.bloxbean.cardano.client.coinselection.UtxoSelectionStrategy.selectUtxos(UtxoSelectionStrategy.java:23)
    at com.bloxbean.cardano.client.function.helper.InputBuilders.getUtxosForValue(InputBuilders.java:171)
    at com.bloxbean.cardano.client.function.helper.InputBuilders.lambda$createFromSender$6(InputBuilders.java:70)
    at com.bloxbean.cardano.client.function.TxOutputBuilder.lambda$buildInputs$3(TxOutputBuilder.java:52)
    at com.bloxbean.cardano.client.function.TxBuilder.lambda$andThen$0(TxBuilder.java:47)
    at com.bloxbean.cardano.client.function.TxBuilder.lambda$andThen$0(TxBuilder.java:47)
    at com.bloxbean.cardano.client.function.TxBuilder.lambda$andThen$0(TxBuilder.java:47)
    at com.bloxbean.cardano.client.function.TxBuilder.lambda$andThen$0(TxBuilder.java:48)
    at com.bloxbean.cardano.client.function.TxBuilder.lambda$andThen$0(TxBuilder.java:47)
    at com.bloxbean.cardano.client.function.TxBuilder.lambda$andThen$0(TxBuilder.java:47)

@edridudi can you please check?

Do we need to get sublist of utxo list or should we just return all utxos as before?