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

Cannot accept transaction in PoA parity private net #1260

Closed
ice09 opened this issue Mar 26, 2017 · 18 comments
Closed

Cannot accept transaction in PoA parity private net #1260

ice09 opened this issue Mar 26, 2017 · 18 comments

Comments

@ice09
Copy link

ice09 commented Mar 26, 2017

Though connection, balance display and coexistence with browser-solidity works quite well, when I want to actually commit a transaction, the MetaMask plugin modal dialog pops up, I can "accept", but then the dialog empties, freezes and the transaction is never committed (it is not pending either).
Is there a dependency on PoW? For reference, the setup is from parity's DemoPoA https://github.com/paritytech/parity/wiki/Demo-PoA-tutorial

@kumavis
Copy link
Member

kumavis commented Mar 26, 2017

We've heard some reports about issues on kovan with signing txs, but have not been able to reproduce them. From a user submitted report it looks like the transactions are getting serialized incorrectly. There should be no issue with PoA vs PoW.

We fixed an issue with the empty dialogue and it should now show an error. This will be deployed Monday.

As for the actually transaction issue, we could use some reproduction steps. Can you walk us through what you did on browser-solidity to generate the transactions?

@kumavis
Copy link
Member

kumavis commented Mar 26, 2017

Some other helpful info you can provide:

Please report the networkID of your PoA network. (e.g.: "networkID" : "0x2323")

Please open up the background console and look at the network tab
https://github.com/MetaMask/faq/blob/master/LOGS.md#background-logs-chrome

clear the network tab and attempt + approve the transaction again. You should see a sendRawTransaction in one of the submitted payloads. you can you the text filter to help find it.
please report the sent params and the server response.

thanks!

@ice09
Copy link
Author

ice09 commented Mar 26, 2017

Sure, what do you need? Having a error message would probably help, so first I'd wait for this. But then, there is nothing special about this transaction, if I use the Web3 provider, it just works (then I have to accept in parity UI of course). The accounts get displayed correctly, also the transaction is displayed (I think correctly). Will be interesting to see the error message.

@ice09
Copy link
Author

ice09 commented Mar 26, 2017

Ah, saw this too late:

"networkID": "0x2323"

In the logs there are a LOT of "not filter for this id 0x2" and "...0x3", spamming the logs (console).
I cannot find the transaction you mentioned, just one RPC call with eth_getBlockByNumber

@kumavis
Copy link
Member

kumavis commented Mar 26, 2017

ok - the filter issue shouldn't be related but that can be addressed here #1261

@kumavis
Copy link
Member

kumavis commented Mar 26, 2017

strange you are not seeing eth_sendRawTransaction, that should be in there. You are using browser-solidity to generate the tx params? can you try and reproduce this problem on public kovan network (set custom rpc https://kovan.inufra.io) and give us the tx params you used.

Another question. if you use the in-metamask sendTx form and e.g. send yourself 0 ether, does the tx go through?

@2-am-zzz 2-am-zzz added this to the Core Maintenance milestone Mar 27, 2017
@ice09
Copy link
Author

ice09 commented Mar 27, 2017

Just tried sending ETH from my account to itself and it also doesn't work, same empty, freezing screen. See no error message still.

@slothbag
Copy link

slothbag commented Jul 8, 2017

I'm getting a similar error, I have a private PoW testnet running on both Geth and Parity. I can submit transactions manually via web3, Mist embedded web3 works, parity web3 plugin works. Metamask does not work.

When using MetaMask via Parity, Parity responds with Error importing transaction: Transaction(InvalidNetworkId) and MetaMask freezes on a blank window. When using MetaMask via Geth I get no messages from Geth, and the same frozen blank window in MetaMask.

I have selected "Private network" in metamask settings and entered http://127.0.0.1:8545 as the address.

All other rpc queries like balances are working fine.

@kumavis
Copy link
Member

kumavis commented Jul 8, 2017

@ice09 @slothbag make sure networkId matches chainId. You specify networkId has a command line flag
--networkid 5

please let me know if this fixes it

@slothbag
Copy link

slothbag commented Jul 8, 2017

Thanks @kumavis but I don't think thats it.. I specify the networkid for geth on the command line and parity has it stored in the genesis file, I also tried specifying via the command line without change.

As far as I can tell the networkids are consistent and set correctly.

I'm not using network id = 5 by the way, I assume metamask does not need it to be 5? I assume metamask queries the networkid via rpc and then uses that value when building the tx?

@kumavis
Copy link
Member

kumavis commented Jul 8, 2017

network id = 5 is just an example

metamask requies the chainid to match the networkid for EIP155 support

@slothbag
Copy link

slothbag commented Jul 8, 2017

my private testnet has "eip155Transition": "0x7fffffffffffffff" i.e. disabled, would that cause issues with chainid and networkid?

@kumavis
Copy link
Member

kumavis commented Jul 8, 2017

@slothbag sounds like that means your chain does not accept eip155
metamask only uses eip155 atm, we may eventually add an option to disable it in config but metamask does not generate accounts based on networkId so its a little dangerous

@slothbag
Copy link

slothbag commented Jul 8, 2017

Ok thanks, it sounds like if I change my testnet to activate eip155 at say block 10, then MetaMask should be able to generate valid transactions from block 10 onwards. I may test this out in the next day or two,

@kumavis
Copy link
Member

kumavis commented Jul 8, 2017

i dont see any reason to not activate eip155 on block zero. the reason why the feature exists is bc EIP155 came after the launch of mainnet and so that a eip155 support deadline could be scheduled by some block number

@cjeria cjeria removed this from the Core Maintenance milestone Jan 22, 2018
@nickjuntilla
Copy link

I am having the same problem. My chainId in the genesis block and the networkid flag are the same. Eip155 is active.

@bdresser
Copy link
Contributor

Closing due to inactivity - if this is still relevant, feel free to open a new issue.

@nickjuntilla
Copy link

FYI to anyone curious, my work around for this was to use Remix and point it to my server and use smart contracts through that.

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

No branches or pull requests

8 participants