bitcoingraph
bitcoingraph copied to clipboard
Issues with intermediate inputaddress.csv computation
As i understand the input address file stores the [txId,input_address] combo for all transactions with multiple inputs. In the entities.py file, the function calculate_input_addresses() uses a certain variable called matching_address to prevent the same transaction output from being considered as input to 2 separate transaction(Correct me if am wrong). This is causing issues with calculating input addresses. calculate_input_addresses() has a check for [elif output_ref < output]: (line no. 142, entities.csv) which sets matching address to the smallest output > output_ref, if the output_ref has no matching entry in rel_output_address.csv. This creates problem with subsequent transaction which does not get logged into input_address.csv as the output for this transaction matches the match_address from previous condition. I have attached 2 files in the zip, rel_input.csv and rel_output_address.csv and input_address.csv.
Consider the following txid in rel_input.csv [0078b50ce66d96419e9082d0c0e22ea859f786091036ca605eb729814275fae3]. This has 5 inputs but only the first one is considered and logged into input_address.csv as for the other rows for this transaction in rel_input.csv, the condition [if match_address is not none] is not satisfied due to missing output record for previous transaction [dc2919acfa00c4ac31cdc03fa22d10bc1770017808c53f6ae03fa0e216456561] and its output_ref[2aadd3853e8f61a076542e62c586f5f52bcbc27b0ae77f26e9b075990f6a4106_1]. input address issue.zip
Just want to be clear on input_address.csv and the significance of match_address.