KomodoPlatform / komodo-defi-framework

This is the official Komodo DeFi Framework repository
https://komodoplatform.com/en/docs/komodo-defi-framework/
104 stars 94 forks source link

NAV swap fails #461

Closed cipig closed 4 years ago

cipig commented 5 years ago
         "event" : {
            "type" : "MakerPaymentTransactionFailed",
            "data" : {
               "error" : "lp_swap:1030] utxo:759] utxo:471] rpc_clients:265] rpc_clients:406] rpc_clients:406] Error UnexpectedEnd trying to deserialize the transaction Bytes([3, 0, 0, 0, 13, 96, 152, 92, 2, 20, 58, 107, 102, 116, 164, 26, 174, 199, 16, 166, 39, 126, 103, 203, 187, 192, 176, 219, 43, 192, 73, 93, 118, 26, 134, 41, 28, 131, 123, 227, 220, 0, 0, 0, 0, 107, 72, 48, 69, 2, 33, 0, 174, 215, 242, 173, 170, 178, 139, 171, 71, 204, 106, 251, 240, 134, 193, 51, 146, 91, 26, 42, 127, 55, 199, 24, 179, 104, 243, 129, 216, 0, 7, 161, 2, 32, 124, 16, 163, 154, 229, 128, 110, 209, 126, 131, 158, 197, 56, 183, 219, 22, 180, 14, 253, 114, 164, 98, 222, 137, 198, 145, 147, 91, 225, 132, 183, 56, 1, 33, 3, 27, 184, 59, 88, 236, 19, 14, 40, 224, 166, 213, 210, 172, 242, 235, 1, 176, 211, 241, 103, 14, 2, 29, 71, 211, 29, 184, 168, 88, 33, 157, 168, 254, 255, 255, 255, 85, 253, 74, 79, 211, 120, 236, 109, 192, 55, 203, 24, 96, 189, 156, 22, 227, 112, 74, 210, 217, 189, 130, 89, 76, 62, 204, 212, 95, 91, 175, 250, 1, 0, 0, 0, 72, 71, 48, 68, 2, 32, 110, 46, 42, 223, 247, 151, 62, 91, 112, 45, 109, 158, 199, 116, 13, 53, 155, 181, 34, 41, 40, 178, 212, 255, 22, 217, 222, 138, 69, 208, 187, 55, 2, 32, 21, 234, 176, 205, 2, 222, 232, 108, 28, 245, 211, 133, 46, 62, 145, 17, 75, 45, 69, 171, 113, 113, 247, 160, 189, 229, 87, 139, 217, 125, 22, 139, 1, 254, 255, 255, 255, 1, 60, 143, 6, 192, 7, 0, 0, 0, 25, 118, 169, 20, 195, 247, 16, 222, 183, 50, 11, 14, 250, 110, 219, 20, 227, 235, 238, 185, 21, 95, 169, 13, 136, 172, 64, 143, 45, 0, 253, 88, 1, 71, 57, 50, 106, 117, 65, 47, 83, 104, 110, 69, 87, 69, 120, 116, 48, 82, 47, 90, 57, 100, 118, 50, 77, 55, 77, 119, 88, 79, 122, 56, 115, 88, 82, 78, 111, 57, 53, 107, 81, 84, 57, 80, 86, 97, 53, 52, 98, 73, 77, 73, 111, 82, 77, 55, 47, 100, 68, 78, 112, 104, 82, 78, 90, 51, 52, 97, 108, 73, 47, 76, 70, 88, 53, 120, 80, 86, 75, 71, 100, 74, 116, 117, 90, 51, 115, 109, 122, 84, 84, 75, 76, 89, 109, 78, 75, 53, 104, 117, 72, 87, 74, 66, 106, 81, 71, 108, 116, 50, 90, 69, 100, 69, 82, 67, 119, 122, 77, 74, 115, 75, 82, 72, 90, 107, 104, 48, 43, 103, 67, 116, 114, 79, 53, 75, 116, 84, 89, 119, 79, 75, 66, 75, 108, 74, 75, 89, 113, 107, 66, 120, 97, 80, 107, 47, 68, 76, 52, 110, 121, 53, 113, 98, 88, 57, 90, 57, 66, 74, 98, 104, 52, 122, 105, 109, 70, 116, 70, 75, 77, 43, 100, 47, 102, 55, 54, 68, 43, 105, 117, 106, 87, 102, 100, 85, 88, 103, 79, 107, 86, 67, 97, 116, 101, 68, 115, 79, 47, 108, 50, 72, 50, 79, 66, 86, 88, 70, 76, 100, 49, 113, 110, 87, 106, 75, 98, 98, 85, 79, 49, 88, 51, 80, 75, 120, 122, 105, 106, 97, 117, 90, 68, 68, 107, 76, 90, 49, 113, 72, 47, 83, 66, 88, 107, 43, 52, 101, 118, 43, 102, 52, 51, 109, 83, 100, 85, 67, 116, 57, 112, 75, 86, 79, 49, 107, 68, 97, 88, 69, 67, 104, 51, 71, 100, 119, 88, 105, 100, 111, 56, 102, 121, 48, 51, 66, 78, 49, 55, 82, 118, 66, 115, 78, 111, 54, 76, 102, 57, 113, 48, 107, 65, 76, 77, 97, 101, 97, 122, 99, 70, 102, 122, 57, 65, 112, 67, 108, 87, 51, 47, 70, 118, 65, 121, 115, 101, 84, 119, 54, 113, 43, 65, 61, 61])"
            }
         },
         "timestamp" : 1563029369040

config of NAV is this

  {
    "coin": "NAV",
    "name": "navcoin",
    "fname": "Navcoin",
    "isPoS": 1,
    "confpath": "USERHOME/.navcoin4/navcoin.conf",
    "rpcport": 44444,
    "pubtype": 53,
    "p2shtype": 85,
    "wiftype": 150,
    "txfee": 10000
  },

also tried without "isPoS": 1, same error

artemii235 commented 5 years ago

@cipig Hi, thanks for you report! As I can see NAV has unexpected nTime field in their tx between version and inputs and there's no additional indication of such tx structure, I wonder if we can rely on tx_version = 3 for such case, but I'm afraid that we will find a coin then that has tx_version = 3 and no nTime field. The tx ser/de functions are self-contained as of now and don't know anything about the coin context from which they are called. I have to perform a refactoring to change this behavior and use different tx format depending on ticker.

cipig commented 5 years ago

unfortunately txversion:3 doesn't help, tried both with and without ispos:1

with "isPoS": 1 and "txversion": 3

            "data" : {
               "error" : "lp_swap:1030] utxo:759] utxo:471] rpc_clients:265] rpc_clients:425] rpc_clients:425] Error UnexpectedEnd trying to deserialize the transaction Bytes([3, 0, 0, 0, 13, 96, 152, 92, 2, 20, 58, 107, 102, 116, 164, 26, 174, 199, 16, 166, 39, 126, 103, 203, 187, 192, 176, 219, 43, 192, 73, 93, 118, 26, 134, 41, 28, 131, 123, 227, 220, 0, 0, 0, 0, 107, 72, 48, 69, 2, 33, 0, 174, 215, 242, 173, 170, 178, 139, 171, 71, 204, 106, 251, 240, 134, 193, 51, 146, 91, 26, 42, 127, 55, 199, 24, 179, 104, 243, 129, 216, 0, 7, 161, 2, 32, 124, 16, 163, 154, 229, 128, 110, 209, 126, 131, 158, 197, 56, 183, 219, 22, 180, 14, 253, 114, 164, 98, 222, 137, 198, 145, 147, 91, 225, 132, 183, 56, 1, 33, 3, 27, 184, 59, 88, 236, 19, 14, 40, 224, 166, 213, 210, 172, 242, 235, 1, 176, 211, 241, 103, 14, 2, 29, 71, 211, 29, 184, 168, 88, 33, 157, 168, 254, 255, 255, 255, 85, 253, 74, 79, 211, 120, 236, 109, 192, 55, 203, 24, 96, 189, 156, 22, 227, 112, 74, 210, 217, 189, 130, 89, 76, 62, 204, 212, 95, 91, 175, 250, 1, 0, 0, 0, 72, 71, 48, 68, 2, 32, 110, 46, 42, 223, 247, 151, 62, 91, 112, 45, 109, 158, 199, 116, 13, 53, 155, 181, 34, 41, 40, 178, 212, 255, 22, 217, 222, 138, 69, 208, 187, 55, 2, 32, 21, 234, 176, 205, 2, 222, 232, 108, 28, 245, 211, 133, 46, 62, 145, 17, 75, 45, 69, 171, 113, 113, 247, 160, 189, 229, 87, 139, 217, 125, 22, 139, 1, 254, 255, 255, 255, 1, 60, 143, 6, 192, 7, 0, 0, 0, 25, 118, 169, 20, 195, 247, 16, 222, 183, 50, 11, 14, 250, 110, 219, 20, 227, 235, 238, 185, 21, 95, 169, 13, 136, 172, 64, 143, 45, 0, 253, 88, 1, 71, 57, 50, 106, 117, 65, 47, 83, 104, 110, 69, 87, 69, 120, 116, 48, 82, 47, 90, 57, 100, 118, 50, 77, 55, 77, 119, 88, 79, 122, 56, 115, 88, 82, 78, 111, 57, 53, 107, 81, 84, 57, 80, 86, 97, 53, 52, 98, 73, 77, 73, 111, 82, 77, 55, 47, 100, 68, 78, 112, 104, 82, 78, 90, 51, 52, 97, 108, 73, 47, 76, 70, 88, 53, 120, 80, 86, 75, 71, 100, 74, 116, 117, 90, 51, 115, 109, 122, 84, 84, 75, 76, 89, 109, 78, 75, 53, 104, 117, 72, 87, 74, 66, 106, 81, 71, 108, 116, 50, 90, 69, 100, 69, 82, 67, 119, 122, 77, 74, 115, 75, 82, 72, 90, 107, 104, 48, 43, 103, 67, 116, 114, 79, 53, 75, 116, 84, 89, 119, 79, 75, 66, 75, 108, 74, 75, 89, 113, 107, 66, 120, 97, 80, 107, 47, 68, 76, 52, 110, 121, 53, 113, 98, 88, 57, 90, 57, 66, 74, 98, 104, 52, 122, 105, 109, 70, 116, 70, 75, 77, 43, 100, 47, 102, 55, 54, 68, 43, 105, 117, 106, 87, 102, 100, 85, 88, 103, 79, 107, 86, 67, 97, 116, 101, 68, 115, 79, 47, 108, 50, 72, 50, 79, 66, 86, 88, 70, 76, 100, 49, 113, 110, 87, 106, 75, 98, 98, 85, 79, 49, 88, 51, 80, 75, 120, 122, 105, 106, 97, 117, 90, 68, 68, 107, 76, 90, 49, 113, 72, 47, 83, 66, 88, 107, 43, 52, 101, 118, 43, 102, 52, 51, 109, 83, 100, 85, 67, 116, 57, 112, 75, 86, 79, 49, 107, 68, 97, 88, 69, 67, 104, 51, 71, 100, 119, 88, 105, 100, 111, 56, 102, 121, 48, 51, 66, 78, 49, 55, 82, 118, 66, 115, 78, 111, 54, 76, 102, 57, 113, 48, 107, 65, 76, 77, 97, 101, 97, 122, 99, 70, 102, 122, 57, 65, 112, 67, 108, 87, 51, 47, 70, 118, 65, 121, 115, 101, 84, 119, 54, 113, 43, 65, 61, 61])"
            },
            "type" : "MakerPaymentTransactionFailed"

with "txversion": 3, without isPoS

            "type" : "MakerPaymentTransactionFailed",
            "data" : {
               "error" : "lp_swap:1030] utxo:759] utxo:471] rpc_clients:265] rpc_clients:425] rpc_clients:425] Error UnexpectedEnd trying to deserialize the transaction Bytes([3, 0, 0, 0, 13, 96, 152, 92, 2, 20, 58, 107, 102, 116, 164, 26, 174, 199, 16, 166, 39, 126, 103, 203, 187, 192, 176, 219, 43, 192, 73, 93, 118, 26, 134, 41, 28, 131, 123, 227, 220, 0, 0, 0, 0, 107, 72, 48, 69, 2, 33, 0, 174, 215, 242, 173, 170, 178, 139, 171, 71, 204, 106, 251, 240, 134, 193, 51, 146, 91, 26, 42, 127, 55, 199, 24, 179, 104, 243, 129, 216, 0, 7, 161, 2, 32, 124, 16, 163, 154, 229, 128, 110, 209, 126, 131, 158, 197, 56, 183, 219, 22, 180, 14, 253, 114, 164, 98, 222, 137, 198, 145, 147, 91, 225, 132, 183, 56, 1, 33, 3, 27, 184, 59, 88, 236, 19, 14, 40, 224, 166, 213, 210, 172, 242, 235, 1, 176, 211, 241, 103, 14, 2, 29, 71, 211, 29, 184, 168, 88, 33, 157, 168, 254, 255, 255, 255, 85, 253, 74, 79, 211, 120, 236, 109, 192, 55, 203, 24, 96, 189, 156, 22, 227, 112, 74, 210, 217, 189, 130, 89, 76, 62, 204, 212, 95, 91, 175, 250, 1, 0, 0, 0, 72, 71, 48, 68, 2, 32, 110, 46, 42, 223, 247, 151, 62, 91, 112, 45, 109, 158, 199, 116, 13, 53, 155, 181, 34, 41, 40, 178, 212, 255, 22, 217, 222, 138, 69, 208, 187, 55, 2, 32, 21, 234, 176, 205, 2, 222, 232, 108, 28, 245, 211, 133, 46, 62, 145, 17, 75, 45, 69, 171, 113, 113, 247, 160, 189, 229, 87, 139, 217, 125, 22, 139, 1, 254, 255, 255, 255, 1, 60, 143, 6, 192, 7, 0, 0, 0, 25, 118, 169, 20, 195, 247, 16, 222, 183, 50, 11, 14, 250, 110, 219, 20, 227, 235, 238, 185, 21, 95, 169, 13, 136, 172, 64, 143, 45, 0, 253, 88, 1, 71, 57, 50, 106, 117, 65, 47, 83, 104, 110, 69, 87, 69, 120, 116, 48, 82, 47, 90, 57, 100, 118, 50, 77, 55, 77, 119, 88, 79, 122, 56, 115, 88, 82, 78, 111, 57, 53, 107, 81, 84, 57, 80, 86, 97, 53, 52, 98, 73, 77, 73, 111, 82, 77, 55, 47, 100, 68, 78, 112, 104, 82, 78, 90, 51, 52, 97, 108, 73, 47, 76, 70, 88, 53, 120, 80, 86, 75, 71, 100, 74, 116, 117, 90, 51, 115, 109, 122, 84, 84, 75, 76, 89, 109, 78, 75, 53, 104, 117, 72, 87, 74, 66, 106, 81, 71, 108, 116, 50, 90, 69, 100, 69, 82, 67, 119, 122, 77, 74, 115, 75, 82, 72, 90, 107, 104, 48, 43, 103, 67, 116, 114, 79, 53, 75, 116, 84, 89, 119, 79, 75, 66, 75, 108, 74, 75, 89, 113, 107, 66, 120, 97, 80, 107, 47, 68, 76, 52, 110, 121, 53, 113, 98, 88, 57, 90, 57, 66, 74, 98, 104, 52, 122, 105, 109, 70, 116, 70, 75, 77, 43, 100, 47, 102, 55, 54, 68, 43, 105, 117, 106, 87, 102, 100, 85, 88, 103, 79, 107, 86, 67, 97, 116, 101, 68, 115, 79, 47, 108, 50, 72, 50, 79, 66, 86, 88, 70, 76, 100, 49, 113, 110, 87, 106, 75, 98, 98, 85, 79, 49, 88, 51, 80, 75, 120, 122, 105, 106, 97, 117, 90, 68, 68, 107, 76, 90, 49, 113, 72, 47, 83, 66, 88, 107, 43, 52, 101, 118, 43, 102, 52, 51, 109, 83, 100, 85, 67, 116, 57, 112, 75, 86, 79, 49, 107, 68, 97, 88, 69, 67, 104, 51, 71, 100, 119, 88, 105, 100, 111, 56, 102, 121, 48, 51, 66, 78, 49, 55, 82, 118, 66, 115, 78, 111, 54, 76, 102, 57, 113, 48, 107, 65, 76, 77, 97, 101, 97, 122, 99, 70, 102, 122, 57, 65, 112, 67, 108, 87, 51, 47, 70, 118, 65, 121, 115, 101, 84, 119, 54, 113, 43, 65, 61, 61])"
            }

but it is not that important... there are more important things then NAV coin

artemii235 commented 5 years ago

MM2 started handling isPoS since https://github.com/KomodoPlatform/atomicDEX-API/commit/018853c963289b6e0979019a08976646442182ed, but NAV is not supported as they added strDZeel field since their tx version 2 which should be supported too: https://github.com/navcoin/navcoin-core/blob/master/src/primitives/transaction.h#L377. I will work on it a bit later if NAV support is important.

cipig commented 4 years ago

NAV swap works now, thanks for the fix. https://github.com/jl777/coins/pull/397